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 1
Ejecutamos 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