oracle操作修改用户的名称和密码
用这个sql一查你会看到所有用户名和密码,还有其他一些信息.不过用户名都是加密的.所以即使是管理员也看不到任何用户的密码,只能改用户的密码;
select * from dba_users;
查询本用户能够操作管理的用户名单;
select * from all_users;
修改用户名称操作如下:
select user#, name from user$ where name = 'ARWEN';
--先瞧下arwen的信息,其中user#就是一个序列号,相当于身份证号吧,假如这里是250
update user$ set name = 'WEIWENHP' where user# = 250;
--于是用户名就改好了。当然是update语句就记得再commit提交下:
commit;
强制刷新:
alter system checkpoint;
alter system flush shared_pool;
修改密码:
ALTER USER 新用户名 IDENTIFIED BY '密码';
修改一个用户的密码,但是在执行完alter user语句后,提示用户不存在。
查看dba_users视图后,该用户的确是存在的,但是注意到一个细节是用户名是小写的,其他的用户名都是大写,原来是在创建用户时,把用户名用双引号包起来了,如果没有用双引号,数据库会自动将用户名改为大写,但是用了双引号后,则保持小写。解决方法为,若创建过程用引号包起来,则在后续的使用过程中,也需要将用户名用引号包起来。
如果dba_users视图下为小写,那后续链接或者操作数据库时需要加“”,如果不加“” 会自动将用户名改为大写。
用户的解锁、加锁操作:
1.超级用户登陆
2.Oracle 中给用户加锁与解锁的代码:
SQL> alter user 用户名 account lock; (加锁)
SQL> alter user 用户名 account unlock; (解锁)