mysqlhotcopy
est un script Perl qui utilise
LOCK TABLES
, FLUSH TABLES
et
cp
ou scp
pour faire
rapidement des sauvegardes de bases. C'est la méthode la plus
rapide pour faire une sauvegarde. C'est aussi le moyen le plus
sûr pour copier des tables et bases, mais il ne peut fonctionner
que sur la machine qui contient les fichiers de données.
mysqlhotcopy
fonctionne uniquement sous Unix,
et il ne fonctionne qu'avec les tables de type
MyISAM
et ISAM
.
shell> mysqlhotcopy db_name [/path/to/new_directory]
shell> mysqlhotcopy db_name_1 ... db_name_n /path/to/new_directory
shell> mysqlhotcopy db_name./regex/
mysqlhotcopy
supporte les options suivantes :
-?, --help
Affiche un écran d'aide et quitte.
--allowold
Ne pas annuler si la sauvegarde existe déjà (renomme la simplement en _old)
--checkpoint=db_name.tbl_name
Insère un point de contrôle dans la table spécifiée (base.table)
--debug
Active le débogage.
--dryrun, -n
Rapporte les actions réalisées sans les faire.
--flushlog
Vide les logs sur le disque une fois que toutes les tables sont verrouillées.
--keepold
Ne pas effacer une sauvegarde précédente (celle qui a été renommée) lorsque c'est terminé.
--method=#
Méthode de copie (cp
ou
scp
).
--noindices
Ne pas inclure les fichiers d'index complet dans la copie,
pour faire des fichiers de sauvegarde plus petit et plus
rapide. Les index peuvent toujours être reconstruits plus
tard avec myisamchk -rq.
.
-p, --password=#
Mot de passe utilisé pour la connexion au serveur.
--port=port_num, -P port_num
Port utilisé pour la connexion au serveur.
--quiet, -q
Mode silencieux. N'affiche que les erreurs.
--regexp=expr
Copie toutes les bases dont le nom vérifie un masque d'expression régulière.
--socket=path, -S path
Socket utilisée pour la connexion au serveur.
--suffix=str
Suffixe des noms des bases copiées.
--tmpdir=path
Dossier temporaire (au lieu de /tmp
).
--user=user_name, -u user_name
Nom d'utilisateur pour la connexion au serveur.
Vous pouvez essayer perldoc mysqlhotcopy
pour
avoir plus de documentation sur mysqlhotcopy
.
mysqlhotcopy
lit les options du groupe
[client]
et [mysqlhotcopy]
dans le fichier d'options.
Pour être capable d'exécuter mysqlhotcopy
,
vous avez besoin des droits d'écriture dans le dossier de
sauvegarde, et le droit de SELECT
dans les
tables que vous souhaitez copier, ainsi que les droits MySQL de
RELOAD
(pour utiliser la commande
FLUSH TABLES
).
shell> perldoc mysqlhotcopy
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.