sql >> Databasteknik >  >> RDS >> Oracle

ORA-01618

Detta är mitt 100:e inlägg på den här bloggen!!!

Jag försöker duplicera ett problem där jag har trådar 4, 5 och 6 i min primära och mitt vänteläge har trådar 1 och 2. När jag gjorde en övergång var allt bra, men jag kunde inte byta tillbaka eftersom den gamla primära, nu väntar standby, göra om från tråd 4 som inte finns i min nya primära, gamla standby. För min testning har jag en 2-nods RAC primär och en 2-nods RAC standby. Förutsägbart har dessa båda trådar 1 och 2. Så jag försökte byta primär till tråd 3 och 4 genom att helt enkelt ändra parametern THREADS i SPFILE. Men vid uppstart fick jag:

PRCR-1079 : Failed to start resource ora.resp.db
CRS-5017: The resource action "ora.resp.db start" encountered the following error:
ORA-01618: redo thread 3 is not enabled - cannot mount
. For details refer to "(:CLSN00107:)" in "/u01/app/crs11.2.0.3/log/myhost01/agent/crsd/oraagent_oracle/oraagent_oracle.log".
CRS-2674: Start of 'ora.resp.db' on 'myhost01' failed
CRS-2632: There are no more servers to try to place resource 'ora.resp.db' on that would satisfy its placement policy
CRS-5017: The resource action "ora.resp.db start" encountered the following error:
ORA-01618: redo thread 4 is not enabled - cannot mount
. For details refer to "(:CLSN00107:)" in "/u01/app/crs11.2.0.3/log/myhost02/agent/crsd/oraagent_oracle/oraagent_oracle.log".
CRS-2674: Start of 'ora.resp.db' on 'myhost02' failed

Detta är inte en enkel parameterändring. För att komma runt detta måste vi först skapa online redo-loggar för att stödja de nya trådarna:

SQL> alter database add logfile thread 3 group 30
  2  '/oracle_data/oradata/resp/redo30.log' size 52429312;
Database altered.
SQL> alter database add logfile thread 3 group 31
  2  '/oracle_data/oradata/resp/redo31.log' size 52429312;
Database altered.
SQL> alter database add logfile thread 4 group 40
  2  '/oracle_data/oradata/resp/redo40.log' size 52429312;
Database altered.
SQL> alter database add logfile thread 4 group 41
  2  '/oracle_data/oradata/resp/redo41.log' size 52429312;
Database altered.

Därefter aktiverar vi trådarna.

SQL> alter database enable public thread 3;
Database altered.
SQL> alter database enable public thread 4;
Database altered.

Lastly, we change the initialization parameters and bounce the instance:
SQL> alter system set thread=3 sid='resp1' scope=spfile;

System altered.

SQL> alter system set thread=4 sid='resp2' scope=spfile;

System altered.
Bounce sedan instanserna med srvctl. När allt väl var säkerhetskopierat inaktiverade jag trådarna 1 och 2.
SQL> alter database disable thread 1;
Database altered.
SQL> alter database disable thread 2;
Database altered.

  1. Effektiv övervakning av MySQL-replikering med SCUMM Dashboards:Del 2

  2. Ta reda på historien om SQL-frågor

  3. Introduktion till Multi-Statement Table-Valued Functions (MSTVF) i SQL Server

  4. TIMESTAMP() Exempel – MySQL