3 Tutoriels d'introduction
Manuel de Référence MySQL 4.1 : Version Française
. Connexion et déconnexion au serveur . Entrer des requêtes . Création et utilisation d'une base de données . Obtenir des informations à propos des bases de données et des tables ->Utilisation de mysql en mode batch . Exemples de requêtes usuelles . Requêtes du projet Twin . Utilisation de MySQL avec Apache
|
3.5 Utilisation de mysql en mode batch
Dans les sections précédentes, vous avez utilisé
mysql
inter activement
pour entrer vos requêtes et voir les résultats. Vous pouvez aussi utiliser
mysql
en mode batch. Pour ce faire, placez les commandes que vous voulez
exécuter dans un fichier, puis dites à
mysql
de lire les entrées à partir
de celui-ci :
shell> mysql < fichier-batch
|
Si vous utilisez
mysql
sous Windows et que vous avez des caractères
spéciaux dans le fichier qui posent problèmes, vous pouvez faire :
dos> mysql -e "source fichier-batch"
|
Si vous devez spécifier les paramètres de connexion en ligne de commande, la commande
ressemblera à ca :
shell> mysql -h hôte -u utilisateur -p < fichier-batch Enter password: ********
|
Lorsque vous utilisez
mysql
de cette façon, vous créez un fichier de script,
puis vous l'exécutez.Si vous voulez que le script continue, même si il y a des erreurs, vous devez utiliser
l'option
--force
de la ligne de commande.
Pourquoi utilisez un script ? Voici quelques raisons :
-
Si vous utilisez une requête de façon répétitive (c'est à dire, chaque jour, ou chaque
semaine), en faire un script vous évitera de la réécrire chaque fois.
-
Vous pouvez générer de nouvelles requêtes à partir de requêtes existantes et
similaires en copiant et éditant des fichiers de scripts.
-
Ce mode peut aussi être utile lors du développement d'une requête,
particulièrement pour les commandes sur plusieurs lignes ou plusieurs
séquences de commandes. Si vous commettez une erreur, vous n'avez pas
à tout récrire. Editez juste votre script pour corriger l'erreur
et dites à
mysql
de l'exécuter à nouveau.
-
Si vous avez une requête qui produit beaucoup d'affichage, vous pouvez le rediriger
vers un visualiseur plutôt que de le regarder défiler sur votre écran :
shell> mysql < fichier-batch | more
|
-
Vous pouvez capturer l'affichage dans un fichier pour un traitement ultérieur :
shell> mysql < fichier_batch > mysql.out
|
-
Vous pouvez distribuer votre script à d'autres personnes pour qu'elles l'exécutent.
-
Quelques situations ne permettent pas une utilisation interactive, par exemple, quand
vous exécutez une requête à partir d'une tâche
cron
. Dans ce cas, vous devez utiliser
le mode batch.
Le format d'affichage par défaut est différent (plus concis) lorsque vous exécutez
mysql
en mode batch de celui utilisé inter activement. Par exemple, le
résultat de
SELECT DISTINCT espece FROM animal
ressemble à ça inter
activement :
+---------+ | espece | +---------+ | oiseau | | chat | | chien | | hamster | | serpent | +---------+
|
Mais à ça en mode batch :
espece oiseau chat chien hamster serpent
|
Si vous voulez le format d'affichage interactif en mode batch, utilisez
mysql -t
. Pour écrire les commandes exécutez dans la sortie, utilisez
mysql -vvv
.Vous pouvez aussi utiliser un script à partir de l'invite
mysql
en utilisant
la commande
source
:
mysql> source nom_fichier;
|
|