SQL> select GROUP#, STATUS, members, BYTES/1024/1024 MB, THREAD# from v$log; GROUP# STATUS MEMBERS MB THREAD# ---------- ---------------- ---------- ---------- ---------- 4 CURRENT 1 50 1 5 INACTIVE 1 50 1 6 INACTIVE 1 50 1 SQL> set pages 100 SQL> column status format a10 SQL> column member format a50 SQL> select group#, status, type, member from v$logfile; GROUP# STATUS TYPE MEMBER ---------- ---------- ------- -------------------------------------------------- 4 ONLINE +REDO/sin/onlinelog/group_4.256.838035233 5 ONLINE +REDO/sin/onlinelog/group_5.257.838035233 6 ONLINE +REDO/sin/onlinelog/group_6.258.838035235 3 rows selected.Realizaremos la creación de nuevos GRUPOS REDOLOG y eliminaremos los actuales por dos motivos principales:
1. Se Multiplexará e incrementará (de 50Mb a 1024Mb) el tamaño a los miembros de los grupos ONLINE REDOLOG en diferentes diskgroups, y cada grupo tendrá 2 miembros
2. Se eliminará a los actuales GRUPOS ONLINE REDOLOG existentes (grupos 4, 5 y 6).
a) Creación de GRUPOS ONLINE REDOLOG, con miembros ya multiplexados
SQL> ALTER DATABASE ADD LOGFILE GROUP 11 ('+REDO', '+FRA') SIZE 1024M; Database altered. SQL> ALTER DATABASE ADD LOGFILE GROUP 12 ('+REDO', '+FRA') SIZE 1024M; Database altered.b) Creación de GRUPO ONLINE REDOLOG con un solo miembro y adicionamos su nuevo miembro.
Creamos:
SQL> ALTER DATABASE ADD LOGFILE GROUP 13 ('+REDO') SIZE 1024M; Database altered.Adicionamos:
SQL> ALTER DATABASE ADD LOGFILE MEMBER '+FRA' TO GROUP 13; Database altered.c) Eliminación de GRUPOS ONLINE REDOLOG.
Antes de eliminar ejecutamos lo siguiente:
SQL> select GROUP#, STATUS, members, BYTES/1024/1024 MB, THREAD# from v$log; GROUP# STATUS MEMBERS MB THREAD# ---------- ---------- ---------- ---------- ---------- 4 INACTIVE 1 50 1 5 INACTIVE 1 50 1 6 CURRENT 1 50 1 11 UNUSED 2 1024 1 12 UNUSED 2 1024 1 13 UNUSED 2 1024 1 6 rows selected.Eliminamos:
SQL> ALTER DATABASE DROP LOGFILE GROUP 4; Database altered. SQL> ALTER DATABASE DROP LOGFILE GROUP 5; Database altered. SQL> ALTER DATABASE DROP LOGFILE GROUP 6; ALTER DATABASE DROP LOGFILE GROUP 6 * ERROR at line 1: ORA-01623: log 6 is current log for instance sin (thread 1) - cannot drop ORA-00312: online log 6 thread 1: '+REDO/sin/onlinelog/group_6.258.838035235'Oracle jamás permitirá que se eliminen los grupos ONLINE REDOLOG con status "CURRENT", por lo que se necesita realizar el cambio de grupo. Ejecutamos la siguiente sentencia:
SQL> ALTER SYSTEM SWITCH LOGFILE; System altered.Con la anterior instrucción realizamos el cambio de grupo, y es posible que el estado aun permanezca con status "ACTIVE", es preferible esperar un lapso de tiempo para que pase al estado de "INACTIVE", de tal manera queda en lo siguiente:
SQL> select GROUP#, STATUS, members, BYTES/1024/1024 MB, THREAD# from v$log; GROUP# STATUS MEMBERS MB THREAD# ---------- ---------- ---------- ---------- ---------- 6 INACTIVE 1 50 1 11 CURRENT 2 1024 1 12 UNUSED 2 1024 1 13 UNUSED 2 1024 1Ejecutamos nuevamente la instrucción para eliminar el grupo ONLINE REDOLOG
SQL> ALTER DATABASE DROP LOGFILE GROUP 6; Database altered.Con los pasos mencionados se concluye la eliminación y creación de GRUPOS ONLINE REDOLOG, el resultado final es el siguiente:
SQL> select GROUP#, STATUS, members, BYTES/1024/1024 MB, THREAD# from v$log; GROUP# STATUS MEMBERS MB THREAD# ---------- ---------- ---------- ---------- ---------- 11 CURRENT 2 1024 1 12 UNUSED 2 1024 1 13 UNUSED 2 1024 1 SQL> select group#, status, type, member from v$logfile; GROUP# STATUS TYPE MEMBER ---------- ---------- ------- -------------------------------------------------- 11 ONLINE +REDO/sin/onlinelog/group_11.263.855075567 11 ONLINE +FRA/sin/onlinelog/group_11.263.855075583 12 ONLINE +REDO/sin/onlinelog/group_12.264.855075605 12 ONLINE +FRA/sin/onlinelog/group_12.264.855075623 13 ONLINE +REDO/sin/onlinelog/group_13.265.855075747 13 INVALID ONLINE +FRA/sin/onlinelog/group_13.265.855075835 6 rows selected.Paulo Ticona.
Fuentes:
http://docs.oracle.com/cd/E11882_01/server.112/e25494/onlineredo.htm#ADMIN007
No hay comentarios:
Publicar un comentario