sql >> Database teknologi >  >> RDS >> Oracle

ORA-01618

Dette er mit indlæg nummer 100 på denne blog!!!

Jeg forsøger at duplikere et problem, hvor jeg har tråde 4, 5 og 6 i min primære, og min standby har tråde 1 og 2. Da jeg skiftede, var alt fint, men jeg kunne ikke skifte tilbage, fordi det gamle primære, nu standby, forventer genoptagelse fra tråd 4 som ikke findes i min nye primære, den gamle standby. Til min test har jeg en 2-node RAC primær og en 2-node RAC standby. Forudsigeligt har disse begge tråde 1 og 2. Så jeg forsøgte at skifte den primære til tråde 3 og 4 ved blot at ændre parameteren THREADS i SPFILE. Men ved opstart modtog jeg:

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

Dette er ikke en simpel parameterændring. For at komme uden om dette, skal vi først oprette online-redo-logfiler for at understøtte de nye tråde:

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.

Dernæst aktiverer vi trådene.

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 derefter forekomsterne med srvctl. Da alt var sikkerhedskopieret, deaktiverede jeg tråd 1 og 2.
SQL> alter database disable thread 1;
Database altered.
SQL> alter database disable thread 2;
Database altered.

  1. MySQL:ÆNDRE TABEL, hvis kolonne ikke eksisterer

  2. CASE-udtrykkets beskidte hemmeligheder

  3. Oracle PL/SQL:DBMS_SCHEDULER.CREATE_JOB Eksempel

  4. Konverter minutter til HH24:MI-format