由于开发很多视图指定了某个用户名,故需修改数据库用户名srmpro为srm。以下为操作过程。
1. 停止应用
防止修改用户名密码后应用一直在发起错误连接,可事先查询哪个IP在连接数据库,然后断开对应连接即可(这里需用到触发器记录客户端IP)
selectusername,machine,terminal,program,client_info,logon_timefromv$sessionorderbylogon_timedesc;
2. 修改用户名
用户信息保存在表user$中,故修改用户名如下:
sqlplus/assysdba
showpdbs;
altersessionsetcontainer=SRMPDB;
selectuser#,namefromuser$;--SRMPRO
--修改用户名
updateuser$setname='SRM'wherename='SRMPRO';
--执行强制刷新
altersystemcheckpoint;
altersystemflushshared_pool;
--修改密码
alteruserSRMidentifiedby"XXXXX1234";
3. 重启应用
修改数据库连接配置后重启应用即可。