1、需求
在遷移一些數據到新的數據庫,開發人員要求和原來的數據庫密碼保持一致,咱們一個個去收集密碼麻煩還容易出錯,這個時候怎麼辦呢? Oracle 的alter user語句提供了一個identified by values子句,這個子句能夠讓DBA在不知道密碼明文的狀況下,直接使用數據庫字典中保存的密碼密文進行修改密碼。
2、方法
eg:好比test1的密碼爲password2018,那麼能夠將test2用戶密碼修改成password2018,或者建立test3用戶密碼爲password2018
1.查詢test1的密碼加密密文
select s.spare4 from sys.user$ s where s.name = 'TEST1';
2.修改test2的密碼
alter user test2 identified by values 'S.SPARE4';
3.建立test3用戶
alter user test3 identified by values 'S.SPARE4';
4.測試test二、test3用戶
conn test2/password2018;conn test3/password2018
成功
5.批量建立用戶
select 'create user '|| name || ' identified by values ''' || spare4 || ''';' from sys.user$ where name like 'TEST%';數據庫