Maison > base de données > tutoriel mysql > Comment exécuter correctement les commandes MySQL à partir de scripts Shell ?

Comment exécuter correctement les commandes MySQL à partir de scripts Shell ?

Susan Sarandon
Libérer: 2024-11-27 17:33:11
original
957 Les gens l'ont consulté

How to Correctly Execute MySQL Commands from Shell Scripts?

Exécuter des commandes MySQL à partir de scripts Shell

L'automatisation de l'exécution des commandes SQL via des scripts Shell simplifie les tâches de gestion des données. Un cas d'utilisation courant consiste à restaurer des données à partir d'un fichier SQL, ce qui nécessite une connexion à un serveur distant.

Problème :

Tentative d'exécution d'une commande SQL via un script shell en utilisant la commande :

mysql -h "server-name" -u root "password" "database-name" < "filename.sql"
Copier après la connexion

résulte en un erreur.

Résolution :

L'erreur provient probablement d'une manière incorrecte de spécifier le mot de passe. Pour résoudre ce problème, utilisez l'indicateur -p sans aucun espace entre celui-ci et le mot de passe :

mysql -h "server-name" -u "root" "-pXXXXXXXX" "database-name" < "filename.sql"
Copier après la connexion

Conseils supplémentaires :

  • Stockage du nom d'utilisateur et du mot de passe dans ~/.my.cnf élimine le besoin de les inclure dans la ligne de commande.
  • Utilisation de l'indicateur -x dans l'exécution du script shell La commande vous permet de surveiller la façon dont chaque commande est exécutée, facilitant ainsi le dépannage.

Exemple de script Shell révisé :

perl fb_apps_frm_fb.pl
perl fb_new_spider.pl ds_fbids.txt ds_fbids.sql
mysql -h dbservername -u username "-pXXXXXXXX" dbname < ds_fbids.sql
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal