• Aucun résultat trouvé

4 - MYSQLADMIN ET CALCULETTE MYSQL

4.1 : Mysqladmin

https://dev.mysql.com/doc/refman/5.5/en/mysqladmin.html

Présentation

mysqladmin est un utilitaire pour exécuter des commandes d'administration. Vous pouvez l'utiliser pour vérifier la configuration du serveur, créer et effacer des bases, etc.

Syntaxe

La syntaxe de mysqladmin est :

shell> mysqladmin [OPTIONS] command [command-option] command ...

Commandes

Le mysqladmin actuel supporte les commandes suivantes : shutdown

Eteint le serveur.

ping

Vérifie si mysqld fonctionne ou pas.

version

Affiche la version du serveur.

password new-password

Spécifie un nouveau mot de passe. Modifie l'ancien mot de passe en new-password pour le compte que vous utilisez lors de la connexion avec mysqladmin.

create databasename

Crée une nouvelle base.

drop databasename

Efface une base et toutes ces tables.

variables

Affiche les variable disponibles.

extended-status

Affiche un message de statut du serveur très complet.

flush-hosts

Vide tous les hôtes mis en cache.

flush-logs

Vide de la mémoire tous les logs.

flush-privileges

Recharger les tables de droits (identique à la commande reload).

flush-status

Remet à zéro les variables de statut.

flush-tables

Vide de la mémoire toutes les tables.

flush-threads

Vide les threads de cache. Nouveau en MySQL 3.23.16.

kill id, id,...

Termine un thread MySQL.

processlist

Affiche la liste des processus du serveur. Cela revient à la commande SHOW PROCESSLIST.

Si --verbose est utilisé, le résultat est le même que SHOW FULL PROCESSLIST.

reload

Recharge les tables de droits.

refresh

Vide de la mémoire toutes les tables, puis ferme et réouvre les fichiers de logs.

slave-start

Démarre l'esclave de réplication.

status

Affiche le message de statut court du serveur.

slave-stop

Eteint l'esclave de réplication.

4.2 : La calculette mysql

https://dev.mysql.com/doc/refman/5.5/en/mysql.html

Présentation

La calculette mysql est l’utilitaire qui permet d’exécuter toutes les commandes SQL.

Syntaxe

La syntaxe de mysql est :

shell> mysql [dbname] [–option] [-option] [...]

dbname pour se connecter directement à une base de données (équivalent d’un USE).

Options

-u username ou --user=username

spécifier le nom d’utilisateur

-p pwd ou --password=pwd

spécifier le nom d’utilisateur

-h hote ou --host=hote

spécifier le nom de l’hôte du serveur

-? ou --help

afficher l’aide -t

résultats sous forme de tableau (défaut) -H

résultats sous forme de tableau HTML -X

résultats en XML -E

résultats sous forme verticale (liste : mode « \G » par défaut) -B

version « batch » : il n’y a de résultats que pour les « select ». Les résultats sont des tableaux avec tabulations entre les champs.

database

mysql se connecte directement dans la database (fait un use database).

> toto.txt

idem que le précédent, mais les résultats des « select » vont dans le fichier toto.txt qu’on pourra ouvrir avec EXCEL.

< toto.txt

exécute le contenu du fichier dans myql

-e « requête »

exécute une requête et quitte mysql

Utiliser un fichier contenant des commandes, produire des résultats dans un fichier Dans l’OS:

C :> mysql dbname < fichier.sql –u user –p

La commande exécute les commandes contenues dans le fichier puis quitte mysql.

Mysql rentre directement dans la BD dbname.

Les résultats s’affiche à l’écran

On peut aussi renvoyer les résultats dans un fichier :

C :> mysql dbname < fichier.sql >resultat.txt –u user –p

A partir de mysql :

mysql> source fichier.sql

ou bien

mysql> \. fichier.sql

Exercice

Chargez la BD BiblioInnoDB.

Ecrivez un script qui fait un select des livres avec les œuvres.

En ligne de commande, récupérer le résultat du scipt dans un fichier « résultat.txt ».

Exporter les données à partir de MySQL : SELECT … INTO OUTFILE

mysql> SELECT * INTO OUTFILE ‘c:/dept.csv’

fields terminated by ‘,’

FROM dept;

Le fichier sera un .csv exploitable sous Excel, par exemple.

Chemin absolu

mysql> SELECT * INTO OUTFILE ‘c:/dept.csv’

fields terminated by ‘,’

FROM dept;

Chemin relatif : DATADIR

mysql> SELECT * INTO OUTFILE ‘./dept.csv’

fields terminated by ‘,’

FROM dept;

Chemin relatif : DATADIR / BDused

mysql> SELECT * INTO OUTFILE ‘dept.csv’

fields terminated by ‘,’

FROM dept;

Exercice

Chargez la BD BiblioInnoDB.

Exporter un select des livres avec les œuvres dans un fichier csv appelé livres.csv. Ouvrez le avec Excel ou un équivalent.

Importer les données à partir de MySQL : LOAD DATA INFILE

mysql> LOAD DATA INFILE ‘c:/dept.csv’ INTO TABLE dept fields terminated by ‘,’;

http://dev.mysql.com/doc/refman/5.0/fr/load-data.html

On peut importer des données en précisant le format de séparation des champs.

Par exemple: les fichiers “csv” produit par Excel utilisent la virgule comme séparateur.

Attention :

La table correspondant au fichier importé doit avoir le même schéma que celle dans laquelle les tuples sont insérés.

Chemin absolu

mysql> LOAD DATA INFILE ‘c:/dept.csv’ INTO TABLE dept fields terminated by ‘,’;

Chemin relatif : DATADIR

mysql> LOAD DATA INFILE ‘./dept.csv’ INTO TABLE dept fields terminated by ‘,’;

Chemin relatif : DATADIR / BDused

mysql> LOAD DATA INFILE ‘dept.csv’ INTO TABLE dept fields terminated by ‘,’;

Chemin relatif : DATADIR / BD au choix

mysql> LOAD DATA INFILE ‘./empdept/dept.csv’ INTO TABLE dept fields terminated by ‘,’;

Avec les options REPLACE ou IGNORE, quand une donnée rentre avec une clé primaire existant déjà, elle remplacera l’ancienne ou elle sera ignorée. Sinon, l’opération s’arrête en erreur.

LOAD DATA INFILE ‘nomFichier’ REPLACE INTO TABLE nomTableOUTFILE

Documents relatifs