如何修改ASM的sys密码
Oracle 10g的ASM实例的sys密码有时候需要修改。它的修改方法是直接修改ASM实例的密码文件,和数据库实例中用户的密码修改方式是不一样的。我们不能通过alter user 命令修改ASM数据库的sys用户密码。ASM的sys密码只能被密码文件提供,并且ASM实例的REMOTE_LOGIN_PASSWORDFILE的值设置为EXCLUSIVE。
(miki西游 @mikixiyou 原文链接: http://mikixiyou.iteye.com/blog/1725711)
如果使用alter user命令修改,将出现ORA-01031错误。操作如下所示:
SQL> select INSTANCE_NAME from v$instance;INSTANCE_NAME----------------+ASMSQL> ALTER USER sys IDENTIFIED BY <new_password> REPLACE <old_password>;ALTER USER sys IDENTIFIED BY <new_password> REPLACE <old_password>*ERROR at line 1:ORA-01109: database not openThe following error also might occur:SQL> alter user sys identified by ;alter user sys identified by*ERROR at line 1:ORA-01031: insufficient privileges
我们修改密码文件中的信息实现密码修改操作。而操作方法是使用orapwd重建密码文件。
1、设置ORACLE_HOME和ORACLE_SID匹配ASM实例
2、使用sqlplus / as sysdba连接ASM实例
3、如果remote_login_passwordfile的值为EXCLUSIVE,ASM实例必须关闭
4、备份现在的密码文件PWD<SID>.ora( In Windows) / orapw<SID> ( in UNIX)后,删除。
5、执行下列重建密码文件命令
WINDOWS:
orapwd file=<ORACLE_HOME>/database/PWD<SID>.ora password=<sys_password>
UNIX:
orapwd file=<ORACLE_HOME>/dbs/orapw<SID> password=<sys_password>
虽然密码文件可以在ASM实例处于启动状态重建,但Oracle建议还是关闭掉数据库实例和ASM实例后再重建。
如果环境是ORACLE RAC,那么每个节点下的密码文件都需要重新生成。
在Oracle 11.2中,可以使用asmcmd工具修改单个实例的sys密码。
$ export ORACLE_SID=+ASM$ asmcmdASMCMD> passwd sysEnter old password (optional): ******Enter new password: ******
也可以使用asmcmd工具修改RAC的sys密码
ASMCMD> orapwusr --modify --password sysEnter password: ******ASMCMD> exit 关键是10g下修改sys密码需要关闭数据库实例和ASM实例,修改方法是重建密码文件。
页:
[1]