I. Question 1
The following error is found in the Alert Log for RAC Standby:
Success: diskgroup data was mounted
Error: Failed toestablish dependency between database dave_st and diskgroup resourceora. Data. DG
Success: diskgroup FRA was mounted
Error: Failed toestablish dependency between database dave_st and diskgroup resource ora. FRA. DG
The database instance name was originally Dave. Because it was made into RAC standby, db_unique_name of the database was changed to dave_st. There is no problem with this in a single instance, but RAC's db_unique_name will also be registered in OCR.
Therefore, in addition to modifying db_unique_name of the database, standby of RAC also needs to be modified in OCR. My case here is that my original RAC environment has been set up, if it is a new environment, this problem will not occur.
Ii. Question 2
The original db_unique_name was Dave and was changed to dave_st. Then the pfile of the RAC node will be automatically modified. Even if we change it to dave_st, when we start the database using srvctl start, it will be automatically changed to Dave, resulting in no startup. Of course, after manual modification, the sqlplus instance can be started normally, but the srvctl instance is used to check whether the instance status is not started.
This is also why srvctl is recommended in the RAC environment to start and close the database, rather than using sqlplus directly.
[Oracle @ rac2 DBS] $ cat initdave2.ora
Spfile = '+ Data/Dave/spfiledave. ora' # line added by Agent
As a result, the startup file cannot be found at startup and an error is reported as follows:
[Oracle @ Rac1 DBS] $ srvctl start database-ddave
PRCR-1079: failed to start resourceora. Dave. DB
The CRS-5017: The Resource Action "ora. Dave. DB start" encountered the following error:
ORA-01078: Failure in processing systemparameters
ORA-01565: Error inidentifying File '+ Data/Dave/spfiledave. ora'
ORA-17503: ksfdopn: 2 failed to open file + Data/Dave/spfiledave. ora
ORA-15056: Additional error message
ORA-17503: ksfdopn: 2 failed to open file + Data/Dave/spfiledave. ora
Iii. Solution
The above two problems are caused by problems in the database configuration in OCR.
-- View the current configuration:
[Grid @ Rac1 ~] $ Srvctl config database-ddave
Database unique name: Dave
Database Name: Dave
Oracle Home:/u01/APP/Oracle/11.2.0/db_1
Oracle user: Oracle
Spfile: + Data/Dave/spfiledave. ora
Domain:
Start options: Open
Stop options: immediate
Database role: Primary
Management Policy: automatic
Server pools: Dave
Database instances: dave1, dave2
Disk groups: data, FRA
Mount point paths:
Services:
Type: RAC
Database is administrator managed
[Grid @ Rac1 ~] $
Here we will change db_unique_name to dave_st. But it cannot be modified directly. We need to remove the database first and modify it.
You must use the Oracle user to perform the operation here. Otherwise, the database may fail to start due to permission issues.
[Oracle @ Rac1 ~] $ Srvctl remove database-D Dave
[Oracle @ Rac1 ~] $ Srvctlconfig database-D dave_st
Database unique name: dave_st
Database Name: Dave
Oracle Home:/u01/APP/Oracle/11.2.0/db_1
Oracle user: Oracle
Spfile:
Domain:
Start options: Open
Stop options: immediate
Database role: Primary
Management Policy: automatic
Server pools: dave_st
Database instances:
Disk groups:
Mount point paths:
Services:
Type: RAC
Database is administrator managed
[Oracle @ Rac1 ~] $
-- Modify other database resources:
[Oracle @ Rac1 ~] $ Srvctl modify Database-D dave_st-A data, FRA
[Oracle @ Rac1 ~] $ Srvctl add instance-D dave_st-I dave1-N Rac1
[Oracle @ Rac1 ~] $ Srvctl add instance-D dave_st-I dave2-N rac2
[Oracle @ Rac1 ~] $ Srvctl modify Database-D dave_st-P + Data/dave_st/spfiledave. ora
The final result is as follows:
[Oracle @ Rac1 ~] $ Srvctl config database-D dave_st
Database unique name: dave_st
Database Name: Dave
Oracle Home:/u01/APP/Oracle/11.2.0/db_1
Oracle user: Oracle
Spfile: + Data/dave_st/spfiledave. ora
Domain:
Start options: Open
Stop options: immediate
Database role: Primary
Management Policy: automatic
Server pools: dave_st
Database instances: dave1, dave2
Disk groups: data, FRA
Mount point paths:
Services:
Type: RAC
Database is administrator managed
[Oracle @ Rac1 DBS] $ srvctlstatus database-D dave_st
Instance dave1 is running on node Rac1
Instance dave2 is running on node rac2
-- Verify the Process status:
[Grid @ Rac1 u01] $ crs_stat.sh
Name target State host
--------------------------------------------------------
Ora. Data. DG online Rac1
Ora. FRA. DG online Rac1
Ora. listener. lsnr online Rac1
Ora. listener_scan1.lsnr online Rac1
Ora. ocrvoting. DG online Rac1
Ora. ASM online Rac1
Ora. cvu offline
Ora. dave_st.db online Rac1
Ora. GSD offline
Ora. net1.network online Rac1
Ora. productname offline
Ora. ONS online Rac1
Ora. rac1.asm1. ASM online Rac1
Ora. rac1.listener _ rac1.lsnr online Rac1
Ora. rac1.gsd offline
Ora. rac1.ons online Rac1
Ora. rac1.vip online Rac1
Ora. rac2.asm2. ASM online rac2
Ora. rac2.listener _ rac2.lsnr online rac2
Ora. rac2.gsd offline
Ora. rac2.ons online rac2
Ora. rac2.vip online rac2
Ora. Registry. ACFs online Rac1
Ora. scan1.vip online Rac1
[Grid @ Rac1 u01] $ ls
The above experiment shows that the records in OCR are determined based on db_unique_name. Instead of db_name.
Bytes --------------------------------------------------------------------------------------------
All rights reserved. reprinted articles are allowed, but source addresses must be indicated by links. Otherwise, the documents will be held legally responsible!
QQ: 251097186
Skype: tianlesoftware
Email: tianlesoftware@gmail.com
Blog: http://blog.csdn.net/tianlesoftware
WEAVER: http://weibo.com/tianlesoftware
Twitter: http://twitter.com/tianlesoftware
Facebook: http://www.facebook.com/tianlesoftware
LinkedIn: http://cn.linkedin.com/in/tianlesoftware