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.
-
--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 datos
nombre_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.
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