Oracle RAC集群修改密码文件
单机环境:
在$ORACLE_HOME/dbs目录下有一个orapwsid密码文件
11g RAC环境:
每个节点的下的$ORACLE_HOME/dbs目录下有一个密码文件
创建方式同单机一致:
orapwd file=$ORACLE_HOME/dbs/orapwracdb1 password=oracle123
重点介绍12cRAC环境
12C RAC环境(包括12c以后的环境):
密码文件存放在$ORACLE_HOME/dbs下是不生效的.
密码文件需要存在于ASM文件系统中,并且密码文件位置信息记录在OCR中。
查看密码文件位置信息:
srvctl config database -d DN_NAME
Database unique name: test12c
Database name: test12c
Oracle home: /oracle/app/product/12201/db_1
Oracle user: oracle
Spfile: +DATA/TEST12C/PARAMETERFILE/spfile.272.1044685717
Password file: +DATA/TEST12C/PASSWORD/pwdtest12c.256.1044684147
Domain:
Start options: open
Stop options: immediate
Database role: PRIMARY
Management policy: AUTOMATIC
Server pools:
Disk Groups: DATA
Mount point paths:
Services:
Type: RAC
Start concurrency:
Stop concurrency:
OSDBA group: dba
OSOPER group: oper
Database instances: test12c1,test12c2
Configured nodes: rac12c1,rac12c2
CSS critical: no
CPU count: 0
Memory target: 0
Maximum memory: 0
Default network number for database services:
Database is administrator managed
(11gRAC中不记录密码文件信息)
通过修改DB资源设置RAC环境下数据库密码文件位置
srvctl modify database -db DN_NAME -pwfile '+asm/path/name'
当更改SYS密码或者 RAC DG备库要复制主库密码时的整体流程如下:
1.通过srvctl config database -d db_name //查看密码位置
2.使用asmcmd进入到ASM磁盘组中
3.复制密码到文件系统
pwcopy +ASM/PATH /PATH/NAME
4.传输给相应备库
5.在备库端创建密码文件(oracle用户)
orapwd input_file='/path/name' file='+asm/path/name' dbuniquename='DB_NAME'
input_file //从主库拷贝到文件系统的密码文件
file //存放在ASM中的密码文件
dbuniquename //必须指定的 DB_UNIQUE_NAME
可能会出现OPW-00010错误:
OPW-00010: Could not create the password file. This resource has a Password File.错误
解决办法:
1.先设置备库集群密码位置为空
srvctl modify database -db DN_NAME -pwfile ''
2.再次创建密码文件
orapwd input_file='/path/name' file='+asm/path/name' dbuniquename='DB_NAME'
3.修改OCR中记录的数据库密码文件信息
srvctl modify database -db DN_NAME -pwfile '+asm/path/name'