mysqlhotcopy es un script Perl que fue escrito
originalmente por Tim Bunce. Usa LOCK TABLES,
FLUSH TABLES, y cp o
scp para realizar una copia de seguridad
rápida de la base de datos. Es la forma más rápida de hacer una
copia de seguridad de la base de datos o de tablas, pero sólo
puede ejecutarse en la misma máquina donde está el directorio de
base de datos. mysqlhotcopy sólo realiza
copias de seguridad de tablas MyISAM. Funciona
en Unix y NetWare.
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
En la base de datos señalada realiza una copia de seguridad de las tablas que verifican una expresión regular dada:
shell> mysqlhotcopynombre_de_base_de_datos./expresión_regular/
La expresión regular para el nombre de tabla puede negarse
precediéndola con una tilde ('~'):
shell> mysqlhotcopynombre_de_base_de_datos./~expresión_regular/
mysqlhotcopy soporta las siguientes opciones:
-
--help,-?Muestra un mensaje de ayuda y sale.
-
--allowoldNo aborta si el objetivo ya existe (lo renombra añadiendo un sufijo
_old). -
--checkpoint=nombre_de_base_de_datos.nombre_de_tablaInserta puntos de referencia en la base de datos
nombre_de_base_de_datosy en la tablanombre_de_tabla. -
--debugActiva la opción de depuración.
-
--dryrun,-nReporta acciones sin ejecutarlas realmente.
-
--flushlogVuelca logs tras bloquear todas las tablas.
-
--keepoldNo borra objetivos previos (renombrados) cuando acaba.
-
--method=#Método para copiar (
cposcp). -
--noindicesNo 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ñaLa 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,-Pnúmero_de_puertoEl puerto TCP/IP a usar cuando se conecta el servidor local.
-
--quiet,-qEs silencioso excepto para errores.
-
--regexp=expresión_regularCopia todas las bases de datos con nombres que cumplan la expresión regular dada.
-
--socket=ruta,-SrutaEl fichero socket Unix a usar para la conexión.
-
--suffix=cadenaEl sufijo para nombres de bases de datos copiadas.
-
--tmpdir=rutaDirectorio temporal (en lugar de
/tmp). -
--triggersVuelca 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,-unombre_de_usuarioEl nombre de usuario MySQL a usar cuando se conecta al servidor.
mysqlhotcopy lee los grupos de opciones
[client] y [mysqlhotcopy] de
los ficheros de opciones.
Para ejecutar mysqlhotcopy, debe tener: acceso
a los ficheros de las tablas de las que está haciendo copia de
seguridad; el permiso SELECT para estas tablas;
y el permiso RELOAD (para poder ejecutar
FLUSH TABLES).
Use perldoc para información adicional de
mysqlhotcopy:
shell> perldoc mysqlhotcopy