在Oracle所在服务器上使用本机管理员帐户可以实现sys、system、sysman用户的密码修改。
Step1:使用sysdba帐户登录
C:\>sqlplus /nolog
SQL> conn / as sysdba;
Step2:查询用户
SQL> select username,password from dba_users;
USERNAME
————————————————————
PASSWORD
————————————————————
SYS
4DE42795E66117AE
SYSTEM
8877FF8306EF558B
DBSNMP
E066D214D5421CCC
…
Step3:修改sys、system用户密码(假设都改成manager)
SQL> alter user sys identified by manager;
SQL> alter user system identified by manager;
SQL> alter user system identified by values ‘8877FF8306EF558B’; // 此法修改成以前的值,前提是记得以前密码值的加密串,获取方法见Step2
Step4:验证修改后的密码
SQL> conn sys/manager;
如果显示“ERROR: ORA-28009: connection to sys should be as sysdba or sysoper”表示密码正确。
SQL> conn system/manager;
如果显示“已连接”表示密码正确。
否则如果显示“ERROR: ORA-01017: invalid username/password; logon denied”表示密码错误。
Step5:修改sysman用户密码
sysman用于登录Oracle Management Server来使用备份功能,初始密码是oem_temp,如果已经成其它值但又记不起来,可以让其恢复成初始密码,在第一次登录时修改
SQL> sys/manager@oemrep as sysdba; //此句的密码好象可以随便输,但一定在用“@oemrep”登录到oemrep数据库,这个数据库专用于备份
SQL> execute OEM_机器名_OEMREP.smp_maintenance.reset_sysman(); //OEM_机器名_OEMREP是oemrep数据库的一个用户,在独立控制台里可以看到