MySQL

Requetes MySql

Exécuter une requête MySql en ligne de commande :

Pré-requis :

Avoir un client MySql installé

$ apt-get install mysql-client

Exécution d'une requête :

$ echo "select * from ma_base.ma_table where champ1 = valeur1" | mysql -u user -pmotdepasse

De cette manière, il est tout à fait possible d'exécuter une requête SQL dans un script (en bash par exemple) et d'en exploiter le résultat.

Etiquettes: 

Se connecter à un serveur MySql à partir de n'importe quel host

Par défaut, sur une distribution style Debian, le serveur MySql accepte les connexions uniquement à partir de la machine locale.

Toutes connexions à partir d'un host différent sont automatiquement refusées.

$ netstat -lpn | grep mysql
tcp        0      0 127.0.0.1:3306            0.0.0.0:*               LISTEN      4884/mysqld

Pour autoriser les connexions à partir de n'importe quels hosts, il faut modifier le fichier /etc/mysql/my.cnf.

Etiquettes: 

Ajouter un super utilisateur MySql

Les commandes suivantes ajoute l'utilisateur "superUser" ayant tous les droits "ALL PRIVILEGES.....WITH GRANT OPTION" sur toutes les bases de sonnées "*.*", avec le mot de passe "secret" et pouvant se connecter de n'importe quelle machine "%":

Se connecter au serveur mysql avec l'utilisateur root

Etiquettes: 

Enregistrer le résultat d'une requête dans un fichier

Se connecter à MySQL :

$ mysql -h localhost -u user -p

Sélectionner la base de données :

$ .
> USE maBaseDeDonnees;

Exécuter la requête :

$ .
> SELECT * INTO OUTFILE '/home/user/monFichier.txt' FROM maTable;

! Il faut que le user connecté à MySQL ait l'autorisation d'écrire dans le répertoire indiqué

Etiquettes: 

Pages