MySQL possède une simple interface "ligne de commande"
les commandes SQL doivent être séparées par un " ; " (!!!)
Les exemples suivants supposent que vous avez accès à une base de données
Connexion à un serveur MySQL (depuis un terminal unix / telnet)
mysql -h machine -u utilisateur -p [base_de_données]
-h: machine hôte
-u: utilisateur MySQL (pas Unix)
-p: mot de passe MySQL (pas Unix)
mysql -h tecfasun5 -u schneide -p
Enter password:
Utilisation/changement d’une base de données (USE)
mysql> USE demo;
ou directement lors de la connexion:
mysql -h tecfa -u schneide -p demo
Lister les tables (SHOW)
SHOW TABLES;
+----------------+
| Tables in demo |
+----------------+
| demo1 |
| test |
Décrire la structure d’une table (DESCRIBE)
DESCRIBE demo1;
+----------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+----------------+
| id | int(10) | | PRI | 0 | auto_increment |
| login | varchar(10) | | MUL | | |
| password | varchar(100) | YES | | NULL | |
| fullname | varchar(40) | | | | |
| url | varchar(60) | | | | |
| food | int(11) | | | 0 | |
| work | int(11) | | | 0 | |
| love | int(11) | | | 0 | |
| leisure | int(11) | | | 0 | |
| sports | int(11) | | | 0 | |
+----------+--------------+------+-----+---------+----------------+
mysql -h hote -u user -p demo < test.mysql
Le contenu du fichier test.mysql contient les commandes SQL pour créer une table, voir par exemple 4.5 “Création de tables (CREATE)” [22]
N’oubliez pas d’indiquer votre base de données ("demo" ci-dessus) !
Note: si la table existe déjà, il faut la tuer avec "DROP TABLE if exists" (sinon utiliser ALTER pour modifier sa structure)
DROP TABLE [IF EXISTS] table
Ex: DROP TABLE demo2
Ex: DROP TABLE if exists demo4
On peut "dumper" une base de données en entier
Cela crée les commandes SQL pour tout restituer (y compris les INSERT)
Avec l’utilitaire ’mysqldump’ (sortir de mysql!):
mysqldump -h hote -u user -p demo > save.mysql
Note: ’vivian’ dans les exemples est à la fois un nom d’utilisateur et de base de données.
Lister toutes les bases de données sur un serveur:
mysqlshow -h hote -u bob -p
mysqlshow -h hote -u bob --password=******
Lister les tables dans une base de données
mysqlshow -h hote -u bob -p vivian
mysqlshow -h hote -u bob --password=****** bob
Lister la définition d’une table
mysqlshow -h hote -u bob -p bob test