Una de las facilidades que otorga la base de datos MySQL es la capacidad de realizar respaldos sin necesidad de detener o apagar el motor de base de datos. Los respaldos en caliente (hot copy) de MySQL no requieren ningun cambio opcional al motor - Como ocurre con Oracle donde la BD ha de estar en modo Archivelog para poder realizar copias en caliente -.
Aqui la tarea es mas simple, MySQL hace uso del script perl mysqlhotcopy, un script desarrollado por Tim Bunce. La manera de funcionar del script es dando uso de LOCK TABLES por cada tabla a respaldar, es decir si quieres respaldar un database que posee 50 tablas, el script en su momento de ejecucion va haciendo un LOCK en cada fila y columna que va respaldando, una vez respaldada una fila y columna procede a hacerle un UNLOCK y bloquea la siguiente fila o columna que va a respaldar.
mysqlhotcopy solo funciona sobre tablas MyIsam. Y la manera de ejecutarlo es con el siguiente comando:
shell> mysqlhotcopynombre_de_base_de_datos
[/ruta/al/nuevo_directorio
]
shell> mysqlhotcopynombre_de_base_de_datos_1
...nombre_de_base_de_datos_n
/ruta/al/nuevo_directorio
mysqlhotcopy soporta los siguientes parametros:
-
--help
,-?
Muestra un mensaje de ayuda y sale.
-
--allowold
No aborta si el objetivo ya existe (lo renombra añadiendo un sufijo_old
).
-
--checkpoint=
nombre_de_base_de_datos.nombre_de_tabla
Inserta puntos de referencia en la base de datosnombre_de_base_de_datos
y en la tablanombre_de_tabla
.
-
--debug
Activa la opción de depuración.
-
--dryrun
,-n
Reporta acciones sin ejecutarlas realmente.
-
--flushlog
Vuelca logs tras bloquear todas las tablas.
-
--keepold
No borra objetivos previos (renombrados) cuando acaba.
-
--method=
#
Método para copiar (cp
oscp
).
-
--noindices
No incluye los índices en la copia de seguridad. Esto hace que la copia de seguridad sea más inteligente y rápida. Los índices pueden reconstruirse posteriormente con myisamchk -rq.
-
--password=
contraseña
, -pcontraseña
La contraseña a usar al conectar con el servidor. Tenga en cuenta que el valor de la contraseña no es opcional para esta opción, no como con otros programas MySQL.
-
--port=
,número_de_puerto
-P
número_de_puerto
El puerto TCP/IP a usar cuando se conecta el servidor local.
-
--quiet
,-q
Es silencioso excepto para errores.
-
--regexp=
expresión_regular
Copia todas las bases de datos con nombres que cumplan la expresión regular dada.
-
--socket=
,ruta
-S
ruta
El fichero socket Unix a usar para la conexión.
-
--suffix=
cadena
El sufijo para nombres de bases de datos copiadas.
-
--tmpdir=
ruta
Directorio temporal (en lugar de/tmp
).
-
--triggers
Vuelca disparadores para cada tabla volcada. Esta opción está activada por defecto; desactívela con--skip-triggers
. Esta opción se añadió en MySQL 5.0.11. Antes de esta versión, los disparadores no se vuelcan.
-
--user=
,nombre_de_usuario
-u
nombre_de_usuario
El nombre de usuario MySQL a usar cuando se conecta al servidor.
No hay comentarios:
Publicar un comentario