Вы находитесь на странице: 1из 9

6/9/2019 Oracle Tunning | How to change the Redo Log File size | Juan Andres Mercado Oracle Blog

Juan Andres Mercado Oracle Blog


Troubleshooting daily on Oracle Systems, Linux & more !

Oracle Tunning | How to change the Redo Log File size


Publicado en junio 6, 2011 por Juan Andres Mercado

— Image by martin.guo via Flickr

Como redimensionar REDOLOG FILE

Hace algunos dias estuvimos trabajando en el redimensionamiento de los redo log file.

Que nos llevo a tomar esta decisión ?

La aplicación ESB (Enterprise Service Bus) que tenemos en una entidad financiera puso en
funcionamiento un nuevo canal sin previo aviso, generando una gran cantidad de transacciones,
aumentado notablemente el commit.

Esto provoco que se incrementara la cantidad de log switch y que el espacio dimensionado de los
REDOLOGS no sea suficiente. Obviamente impacto notablemente en la performance de la base
de datos.

Cual era el escenario ?

8 REDO GROUPS
4 REDO THREADS
50 MB el volumen de los Redo Logs Files

Privacidad & SQL>


Cookies:
setesteline
sitio usa
150cookies. Al continuar usando este sitio, estás de acuerdo con su uso. Para saber más,
incluyendo como controlar
SQL> select las cookies,
* frommira aquí: Política de Cookies.
v$log;

GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUSCerrar y aceptar


---------- ---------- ---------- ---------- ---------- --- -------------

https://juanmercadoit.com/2011/06/06/oracle-tunning-how-to-change-the-redo-log-file-size/ 1/9
6/9/2019 Oracle Tunning | How to change the Redo Log File size | Juan Andres Mercado Oracle Blog

1 1 1795 52428800 2 YES INACTIVE


2 1 1796 52428800 2 NO CURRENT
3 2 1429 52428800 2 YES INACTIVE
4 2 1430 52428800 2 NO CURRENT
5 3 871 52428800 2 YES INACTIVE
6 3 872 52428800 2 NO CURRENT
7 4 853 52428800 2 NO CURRENT
8 4 852 52428800 2 YES INACTIVE

8 rows selected.

Plan de Acción

Lo que que hay que realizar como tareas los resumimos en los siguientes puntos:

Agregar Grupos Nuevos que llamaremos administrativos. (Recordemos que debemos tener
como minimo debemos tener dos miembros por cada grupo)
Switchear para que los grupos entren en modo ARC=YES STATUS=INACTIVE
Eliminar Grupos Dispobibles. (Elijo los pares)
Agregar Grupos (Grupos Pares) con el Nuevo Volumen.
Eliminar Grupos Dispobibles. (Elijo los impares)
Agregar Grupos (Grupos Impares) con el Nuevo Volumen.
Eliminar Grupos Creados
Eliminamos Grupos Administrativos.

Estas tareas podemos hacerlo con la base online sin tener que hacer un shutdown a la base .
El primer paso implica verificar que el status de los REDOLOGS de la base sea INACTIVE.

Vamos a revisar con la siguiente query como se encuentra

SQL> select group#, status from v$log;

GROUP# STATUS
---------- ----------------
1 INACTIVE
2 CURRENT
3 INACTIVE
4 CURRENT
5 INACTIVE
6 CURRENT
7 CURRENT
8 INACTIVE

Privacidad & 8
rows este
Cookies:
selected.
sitio usa cookies. Al continuar usando este sitio, estás de acuerdo con su uso. Para saber más,
incluyendo como controlar las cookies, mira aquí: Política de Cookies.
SQL>
Cerrar y aceptar

https://juanmercadoit.com/2011/06/06/oracle-tunning-how-to-change-the-redo-log-file-size/ 2/9
6/9/2019 Oracle Tunning | How to change the Redo Log File size | Juan Andres Mercado Oracle Blog

Como primer paso vamos a crear los REDOLOGS que llamamos administrativos, que nos
permiten rotar y principalmente poder eliminar los grupos que vayamos a ridemensionar. Esto es
importantante ya que por lo menos precisamos dos Grupos, si no incurriremos en el error ORA-
01567

SQL> ALTER DATABASE ADD LOGFILE THREAD 1 GROUP 9 SIZE 512M;

Database altered.

SQL> ALTER DATABASE ADD LOGFILE THREAD 2 GROUP 10 SIZE 512M;

Database altered.

SQL> ALTER DATABASE ADD LOGFILE THREAD 3 GROUP 11 SIZE 512M;

Database altered.

SQL> ALTER DATABASE ADD LOGFILE THREAD 4 GROUP 12 SIZE 512M;

Database altered.

SQL>

En un segundo paso podemos consultar los REDOLOGS creados , los antiguos y en que
STATUS se encuentran.

De esta manera podemos conocer cuales tenemos disponibles para dropear.

Como paso previo hice mover los REDOLOGS, para que no tuvieran STATUS = UNUSED y se
llenaran con la sentencia.

ALTER SYSTEM SWITCH LOGFILE;

Esto también provoco el cambio de STATUS de los demás grupos.

Veamos como quedo.

SQL> set line 150


SQL> select * from v$log;

GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS


Privacidad & Cookies: este sitio usa cookies. Al continuar usando este sitio, estás de acuerdo ---
---------- ---------- ---------- ---------- ---------- con su-------------
uso. Para saber más,
1 1 1801 52428800
incluyendo como controlar las cookies, mira aquí: Política de Cookies. 2 NO CURRENT
2 1 1799 52428800 2 YES INACTIVE
3 2 1432 52428800 2 NO CURRENT Cerrar y aceptar
4 2 1430 52428800 2 YES INACTIVE

https://juanmercadoit.com/2011/06/06/oracle-tunning-how-to-change-the-redo-log-file-size/ 3/9
6/9/2019 Oracle Tunning | How to change the Redo Log File size | Juan Andres Mercado Oracle Blog

5 3 874 52428800 2 NO CURRENT


6 3 872 52428800 2 YES INACTIVE
7 4 856 52428800 2 NO CURRENT
8 4 855 52428800 2 YES INACTIVE
9 1 1800 536870912 2 YES INACTIVE
10 2 1431 536870912 2 YES INACTIVE
11 3 873 536870912 2 YES INACTIVE
12 4 854 536870912 2 YES INACTIVE

12 rows selected.

SQL>

Como podemos observar tenemos como STATUS = INACTIVE los grupos 2 4 6 8 de los viejos
con dimensión 50MB, como asi también los grupos nuevos 9 10 11 12 de 500MB.

2 1 1799 52428800 2 YES INACTIVE


4 2 1430 52428800 2 YES INACTIVE
6 3 872 52428800 2 YES INACTIVE
8 4 855 52428800 2 YES INACTIVE

9 1 1800 536870912 2 YES INACTIVE


10 2 1431 536870912 2 YES INACTIVE
11 3 873 536870912 2 YES INACTIVE
12 4 854 536870912 2 YES INACTIVE

Con este escenario voy a proceder a realizar los DROPEOS de los grupos que tienen el valor de
50MB.

SQL> ALTER DATABASE DROP LOGFILE GROUP 2;

Database altered.

SQL> ALTER DATABASE DROP LOGFILE GROUP 4;

Database altered.

SQL> ALTER DATABASE DROP LOGFILE GROUP 6;

Database altered.

Privacidad & SQL> ALTER


Cookies: DATABASE
este sitio DROP
usa cookies. LOGFILE
Al continuar GROUP
usando este 8;
sitio, estás de acuerdo con su uso. Para saber más,
incluyendo como controlar las cookies, mira aquí: Política de Cookies.
Database altered.
SQL> Cerrar y aceptar

https://juanmercadoit.com/2011/06/06/oracle-tunning-how-to-change-the-redo-log-file-size/ 4/9
6/9/2019 Oracle Tunning | How to change the Redo Log File size | Juan Andres Mercado Oracle Blog

Observemos los grupos que quedan.

SQL> select * from v$log;

GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS


---------- ---------- ---------- ---------- ---------- --- -------------
1 1 1801 52428800 2 NO CURRENT
3 2 1432 52428800 2 NO CURRENT
5 3 874 52428800 2 NO CURRENT
7 4 856 52428800 2 NO CURRENT
9 1 1800 536870912 2 YES INACTIVE
10 2 1431 536870912 2 YES INACTIVE
11 3 873 536870912 2 YES INACTIVE
12 4 854 536870912 2 YES INACTIVE

8 rows selected.

Quedaron solo los GRUPOS 1 3 5 7 con dimensión de 50MB y los nuevos que usaremos como
modo administrativo.

Agregamos los grupos 2 4 6 8 con la nueva dimensión de 500MB.

SQL> ALTER DATABASE ADD LOGFILE THREAD 1 GROUP 2 SIZE 512M;

Database altered.

SQL> ALTER DATABASE ADD LOGFILE THREAD 2 GROUP 4 SIZE 512M;

Database altered.

SQL> ALTER DATABASE ADD LOGFILE THREAD 3 GROUP 6 SIZE 512M;

Database altered.

SQL> ALTER DATABASE ADD LOGFILE THREAD 4 GROUP 8 SIZE 512M;

Database altered.

Observamos que los nuevos grupos fueron creados y se encuentran con STATUS = UNUSED.

SQL> select * from v$log;


Privacidad & Cookies: este sitio usa cookies. Al continuar usando este sitio, estás de acuerdo con su uso. Para saber más,
GROUP#las cookies,
incluyendo como controlar THREAD# SEQUENCE#
mira aquí: BYTES
Política de Cookies. MEMBERS ARC STATUS
---------- ---------- ---------- ---------- ---------- --- -------------
1 1 1805 52428800 2 NO CURRENTCerrar y aceptar
2 1 0 536870912 2 YES UNUSED

https://juanmercadoit.com/2011/06/06/oracle-tunning-how-to-change-the-redo-log-file-size/ 5/9
6/9/2019 Oracle Tunning | How to change the Redo Log File size | Juan Andres Mercado Oracle Blog

3 2 1432 52428800 2 YES ACTIVE


4 2 0 536870912 2 YES UNUSED
5 3 874 52428800 2 YES ACTIVE
6 3 0 536870912 2 YES UNUSED
7 4 858 52428800 2 NO CURRENT
8 4 0 536870912 2 YES UNUSED
9 1 1804 536870912 2 YES INACTIVE
10 2 1433 536870912 2 NO CURRENT
11 3 875 536870912 2 NO CURRENT
12 4 857 536870912 2 YES INACTIVE

12 rows selected.

Hacemos correr los LOGS para poner en STATUS = INACTIVE los candidatos 1 3 5 7 para ser
dropeados.

SQL> ALTER SYSTEM SWITCH LOGFILE;


System altered.

SQL> ALTER SYSTEM SWITCH LOGFILE;


System altered.

SQL> ALTER SYSTEM SWITCH LOGFILE;


System altered.

SQL> ALTER SYSTEM SWITCH LOGFILE;

System altered.

Vuelvo a consultar , y nos queda el escenario nuevamente listo para dropear los candidatos.

SQL> select * from v$log;

GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS


---------- ---------- ---------- ---------- ---------- --- -------------
1 1 1814 52428800 2 YES INACTIVE
2 1 1815 536870912 2 YES INACTIVE
3 2 1435 52428800 2 YES INACTIVE
4 2 1437 536870912 2 NO CURRENT
5 3 877 52428800 2 YES INACTIVE
6 3 879 536870912 2 NO CURRENT
7 4 861 52428800 2 YES INACTIVE
8 4 862 536870912 2 NO
Privacidad & Cookies: este sitio usa cookies. Al continuar usando este sitio, estás de acuerdo con suCURRENT
uso. Para saber más,
9 1 1816 536870912
incluyendo como controlar las cookies, mira aquí: Política de Cookies. 2 NO CURRENT
10 2 1436 536870912 2 YES INACTIVE
11 3 878 536870912 2 YES INACTIVE Cerrar y aceptar
12 4 860 536870912 2 YES INACTIVE

https://juanmercadoit.com/2011/06/06/oracle-tunning-how-to-change-the-redo-log-file-size/ 6/9
6/9/2019 Oracle Tunning | How to change the Redo Log File size | Juan Andres Mercado Oracle Blog

12 rows selected.

SQL> ALTER DATABASE DROP LOGFILE GROUP 2;

Database altered.

SQL> ALTER DATABASE DROP LOGFILE GROUP 3;

Database altered.

SQL> ALTER DATABASE DROP LOGFILE GROUP 5;

Database altered.

SQL> ALTER DATABASE DROP LOGFILE GROUP 7;

Database altered.

SQL>

Agregamos los grupos nuevos correspondientes a la serie 1 3 5 7.

SQL> ALTER DATABASE ADD LOGFILE THREAD 1 GROUP 1 SIZE 512M;

Database altered.

SQL> ALTER DATABASE ADD LOGFILE THREAD 2 GROUP 3 SIZE 512M;

Database altered.

SQL> ALTER DATABASE ADD LOGFILE THREAD 3 GROUP 5 SIZE 512M;

Database altered.

SQL> ALTER DATABASE ADD LOGFILE THREAD 4 GROUP 7 SIZE 512M;

Database altered.

Una vez que tenemos todos los grupos redimensionados podemos hacer correr los logs
nuevamente y eliminar los grupos que usamos como administrativos que se corresponden con la
serie 9 10 11 12 .

Privacidad & Cookies: este sitio usa cookies. Al continuar usando este sitio, estás de acuerdo con su uso. Para saber más,
SQL>
incluyendo como ALTERlasDATABASE
controlar DROP
cookies, mira aquí: LOGFILE
Política de GROUP
Cookies.9 ;

Database altered. Cerrar y aceptar

https://juanmercadoit.com/2011/06/06/oracle-tunning-how-to-change-the-redo-log-file-size/ 7/9
6/9/2019 Oracle Tunning | How to change the Redo Log File size | Juan Andres Mercado Oracle Blog

SQL> ALTER DATABASE DROP LOGFILE GROUP 10 ;

Database altered.

SQL> ALTER DATABASE DROP LOGFILE GROUP 11 ;

Database altered.

SQL> ALTER DATABASE DROP LOGFILE GROUP 12 ;

Database altered.

Resultado Final, REDOLOGS de 500MB y nuestros problemas de performance resueltos.

SQL> select * from v$log;

GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS


---------- ---------- ---------- ---------- ---------- --- -------------
1 1 1838 536870912 2 YES INACTIVE
2 1 1839 536870912 2 NO CURRENT
3 2 1444 536870912 2 YES INACTIVE
4 2 1445 536870912 2 NO CURRENT
5 3 888 536870912 2 YES INACTIVE
6 3 889 536870912 2 NO CURRENT
7 4 874 536870912 2 NO CURRENT
8 4 873 536870912 2 YES INACTIVE

8 rows selected.SQL>

Como llego a la conclusión de que el problema quedo resuelto ?

Por que al principio tome un reporte de AWR y lo compare con otro reporte AWR que tome al
final, luego de haber dejado correr durante un periodo los cambios.

COMPÁRTELO:

           
Me gusta
Sé el primero en decir que te gusta.

RELAT
Privacidad E D este sitio usa cookies. Al continuar usando este sitio, estás de acuerdo con su uso. Para saber más,
& Cookies:
incluyendo como controlar las cookies, mira aquí: Política de Cookies.

Cerrar y aceptar

https://juanmercadoit.com/2011/06/06/oracle-tunning-how-to-change-the-redo-log-file-size/ 8/9
6/9/2019 Oracle Tunning | How to change the Redo Log File size | Juan Andres Mercado Oracle Blog

ORA-01567 | Redo Log Oracle ASM | Migrating Oracle Dataguard | How to


Files Concepts datafiles from FileSystem to Add Standby redo Logs
En "DB - 10gR2" ASM instance En "DataGuard"
En "ASM"

Esta entrada fue publicada en DB - 10gR2, Tunning y etiquetada Database, FAQs Help and
Tutorials, ORA-01567, ORA-01624, Redo log, redologs oracle, rezise redologs, tunning,
tunning oracle, tunning redologs por Juan Andres Mercado. Guarda enlace permanente
[https://juanmercadoit.com/2011/06/06/oracle-tunning-how-to-change-the-redo-log-file-size/]
.

Acerca de Juan Andres Mercado

Big Data Enthusiast, DBA & Exadata Manager | Consultant | Father | Musician | Farmer |
Environmentalist Argentina | juanmercadoit.com
Ver todas las entradas por Juan Andres Mercado →

UN PENSAMIENTO EN “ORACLE TUNNING | HOW TO CHANGE THE REDO LOG FILE SIZE”

Pingback: Oracle Tunning | How to change the Redo Log File size « DbRunas – Noticias y
Recursos sobre Bases de Datos

Los comentarios están cerrados.

Privacidad & Cookies: este sitio usa cookies. Al continuar usando este sitio, estás de acuerdo con su uso. Para saber más,
incluyendo como controlar las cookies, mira aquí: Política de Cookies.

Cerrar y aceptar

https://juanmercadoit.com/2011/06/06/oracle-tunning-how-to-change-the-redo-log-file-size/ 9/9

Вам также может понравиться