Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 06/09/2008, à 10:48

rniamo

script et script mysql [résolu]

bonjour,
comment executer une commande mysql (create user et create table)dans un script bash ?
merci

Dernière modification par rniamo (Le 06/09/2008, à 12:10)


< Quelques un des mes programmes  | Cuisine Facile (pour les gourmands) | Fast MVC for PHP >
        \   ^__^
         \  (o o)\_______
            (___)\            )\

Hors ligne

#2 Le 06/09/2008, à 11:26

tiky

Re : script et script mysql [résolu]

Tu mets ton script sql dans un fichier, par exemple query.sql puis tu tapes une commande du style:

mysql -u un_utilisateur -p ton_mdp < query.sql

Ça doit aussi marcher en faisant un echo.


Conseil d'expert: il vous faut un dentifrice adapté...

Hors ligne

#3 Le 06/09/2008, à 12:09

rniamo

Re : script et script mysql [résolu]

ok merci beaucoup


< Quelques un des mes programmes  | Cuisine Facile (pour les gourmands) | Fast MVC for PHP >
        \   ^__^
         \  (o o)\_______
            (___)\            )\

Hors ligne

#4 Le 06/09/2008, à 18:31

rniamo

Re : script et script mysql [résolu]

je up parce que j'ai quelques soucis :

FICHIER_MYSQL="query.sql";
echo "CREATE USER '$1'@'localhost' IDENTIFIED BY '$2';" > $FICHIER_MYSQL;
echo "CREATE DATABASE IF NOT EXISTS '$1' DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;" >> $FICHIER_MYSQL;
mysql -u "$UTILISATEUR_MYSQL"  --password="$MOT_DE_PASSE_MYSQL" < query.sql;
rm query.sql;

1) comment véréifier si je peux créer l'utilisateur ?
2) la 2eme ligne ne marche pas. (edit : ça marche sans les ' de '$1')

merci

Dernière modification par rniamo (Le 06/09/2008, à 18:44)


< Quelques un des mes programmes  | Cuisine Facile (pour les gourmands) | Fast MVC for PHP >
        \   ^__^
         \  (o o)\_______
            (___)\            )\

Hors ligne

#5 Le 06/09/2008, à 19:04

tiky

Re : script et script mysql [résolu]

1) Je n'ai pas compris ta question, tu veux savoir si la commande mysql réussie ou échoue?

2) Pour les ', c'est normal, en bash, ça demande de ne pas interpréter le contenu de la chaîne. Par exemple:

echo "$HOME"

et

echo '$HOME'

ne donneront pas le même résultat.


Conseil d'expert: il vous faut un dentifrice adapté...

Hors ligne

#6 Le 06/09/2008, à 19:32

rniamo

Re : script et script mysql [résolu]

ok. pour le 1 t'as compris, moi je veux créer un utilisateur mais s'i existe que se passe t-il ? Que faire dasnce cas ?


< Quelques un des mes programmes  | Cuisine Facile (pour les gourmands) | Fast MVC for PHP >
        \   ^__^
         \  (o o)\_______
            (___)\            )\

Hors ligne

#7 Le 06/09/2008, à 19:40

tiky

Re : script et script mysql [résolu]

MySQL retourne une erreur? Il faut récupérer le code retour de la commande MySQL avec $?
juste après. Si une erreur est survenue, il devrait être différent de 0. Maintenant MySQL n'est pas forcé de considérer cela comme une erreur et peut retourner 0. Il faut tester wink Si c'est pas le cas, MySQL doit donner un message d'erreur, en le filtrant avec awk et un if, ça devrait être bon.


Conseil d'expert: il vous faut un dentifrice adapté...

Hors ligne

#8 Le 06/09/2008, à 20:30

rniamo

Re : script et script mysql [résolu]

j'obtient :

ERROR 1396 (HY000): Operation CREATE USER failed


< Quelques un des mes programmes  | Cuisine Facile (pour les gourmands) | Fast MVC for PHP >
        \   ^__^
         \  (o o)\_______
            (___)\            )\

Hors ligne

#9 Le 06/09/2008, à 20:41

tiky

Re : script et script mysql [résolu]

Tu peux essayer ceci:

mysql -u "$UTILISATEUR_MYSQL"  --password="$MOT_DE_PASSE_MYSQL" < query.sql || echo "échec"

l'opération || permet d'exécuter le echo seulement si mysql échoue.

Dernière modification par tiky (Le 06/09/2008, à 20:41)


Conseil d'expert: il vous faut un dentifrice adapté...

Hors ligne

#10 Le 06/09/2008, à 21:23

rniamo

Re : script et script mysql [résolu]

ok, ça ira. merci.


< Quelques un des mes programmes  | Cuisine Facile (pour les gourmands) | Fast MVC for PHP >
        \   ^__^
         \  (o o)\_______
            (___)\            )\

Hors ligne