MySQL : commandes de bases


Lister, créer, supprimer... des bases de données

Quelques commandes avec l’outil "mysql"

Montre comment, à partir de l’utilitaire ligne de commande "mysql", afficher la liste des bases de données existantes, en créer ou en supprimer, afficher la liste des tables et leurs structures ou comment exécuter un script SQL.

Il existe plusieurs programmes graphiques qui permettent de gérer MySQL, que se soit pour créer des bases de données et des tables ou l’exécution de requêtes. Nous allons voir ici qu’à partir de la ligne de commande, il est également possible de réaliser toutes ces opérations et quelque fois plus rapidement.


 Démarrez l’utilitaire mysql

Pour lancer l’interpréteur de commande MySQL, il suffit de taper dans une console, la commande suivante :

$>mysql -u root -p

En choisissant -u root cela vous permettra de vous connecter en tant qu’administrateur du SGBD   et donc, d’avoir tous les droits. -p va vous permettre de saisir le mot de passe de l’administrateur après validation de la ligne.

Remarque : Après installation, il n’existe qu’un seul utilisateur qui se nomme ’root’ qui est le nom de l’administrateur du SGBD  . Normalement, vous avez du également définir son mot de passe lors de l’installation. Si ce n’est pas le cas, l’administrateur ne dispose pas de mot de passe.

Une fois le mot de passe saisie, vous devriez vous retrouver dans l’interpréteur de commandes de MySQL :

Une fois dans l’interpréteur de commandes, vous pourrez taper les commandes de gestions propre à MySQL. Vous pourrez également saisir directement des requêtes en SQL  .

Vous devrez toujours terminer vos commandes par le caractère ; ce qui vous permet de taper des commandes sur plusieurs lignes.

 Afficher l’aide et quitter l’interpréteur de commandes

Afficher l’aide MySQL

Pour afficher un résumé des commandes tapez :

mysql> help;

Quitter ’mySQL’

Pour quitter l’interpréteur de commande, tapez :

mysql> exit;

 Visualiser, créer, supprimer une base de données

Normalement, vous pourrez taper les commandes SQL   en majuscules ou minuscules dans l’interpréteur de commandes. Par habitude et pour plus de clarté, je les aient saisies en majuscules dans la plupart des exemples de cet article.

Visualiser les bases de données existantes

La commande suivante liste l’ensemble des bases qui ont été créées.

mysql>SHOW DATABASES;

Vous pouvez également filtrer la liste pour n’afficher que certaines bases de données :

La commande précédente n’affichera que les bases commençant par ’test’.
Le caractère % veut dire de 0 à plusieurs caractères quelconques. Vous pouvez également utiliser _ qui représente un seul caractère quelconque.

Créer une nouvelle base de données

Syntaxe générale :

CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name    [create_specification] ...

avec pour create_specification :

[DEFAULT] CHARACTER SET [=] charset_name | [DEFAULT] COLLATE [=] collation_name

La commande suivante crée une nouvelle base de données vide avec le nom spécifié.

mysql>CREATE DATABASE ma_base;

Lorsque vous créez une nouvelle base de données, vous pouvez préciser le type de codification des caractères ainsi que la règle de tri comme dans l’exemple suivant :

mysql> CREATE DATABASE ma_base CHARACTER SET 'utf8' COLLATE 'utf8_general_ci';

Supprimer la base de données

mysql> DROP DATABASE ma_base;

ATTENTION :La commande précédente supprime la base de données et tout ce qu’elle contient : tables, données...

Définir une base comme base courante

mysql> USE ma_base;

Remarque : Dans les commandes précédentes, vous pouvez remplacer le mot DATABASE(S) par SCHEMA(S) car MySQL ne fait pas de différence entre les deux notions contrairement à d’autres SGBD.

 Renseignements sur les tables

Afficher la liste des tables

Pour afficher la liste des tables de la base courante :

Il est possible d’ajouter un filtre pour n’afficher que certaines tables :

Afficher la liste des tables d’une base de données différente de la table courante :

mysql>SHOW TABLES FROM ma_base;

Afficher les propriétés d’une table

Vous pouvez également utiliser la commande suivante, équivalente à describe mais que je trouve plus longue à taper :

mysql> SHOW COLUMNS FROM TR_CLIENT_CLI;

Pour récupérer la commande CREATE TABLE correspondant à une table existante :

mysql>SHOW CREATE TABLE ma_table;

 Exécuter un script SQL

Lorsque vous devez créer une nouvelle base de données, au lieu de taper toutes les commandes de créations de tables index et autre objets en ligne de commande, il est plus simple de les saisir dans un éditeur de texte et de les enregistrer dans un fichier script. La commande suivante vous permettra d’exécuter ce script à partir de l’interpréteur de commande.

mysql>SOURCE fichier_script.sql;

Exemple de script : création d’une base de données

Comme exemple de script, nous allons voir comment créer une nouvelle base de données contenant une table.

Voici le script d’exemple qui peut être saisie à partir d’un simple éditeur de texte comme vi :

  1. CREATE DATABASE IF NOT EXISTS db_musique;
  2.  
  3. USE db_musique;
  4.  
  5. CREATE TABLE T_COMPOSITEURS_CMP
  6. (
  7.         CMP_ID     INT AUTO_INCREMENT PRIMARY KEY,
  8.         CMP_NOM    VARCHAR( 40 ),
  9.         CMP_PRENOM VARCHAR( 40 ),
  10.         CMP_NEE    SMALLINT,
  11.         CMP_DECEDE SMALLINT
  12. );

Télécharger

Ce fichier se nomme : create_base_db_musique-mysql.sql et a été compié dans le dossier /tmp.

Dans mysql, il suffit de taper la commande suivante pour créer la base de données :

On peut vérifier que notre table a bien été créée :

 Conclusion

Avec les quelques commandes précédentes, vous en saurez assez pour créer et gérer vos bases de données sans avoir besoins d’autres logiciels que l’outil en ligne de commande contenu dans les paquets d’installation. Bien sur, pour créer vos scripts, vous devrez également connaître le langage SQL en plus des quelques commandes vues ici.

Article n° 40

Crée par: chris

Créé le: 1er septembre 2015

Modifié le: 1er septembre 2015

Nombre de visites: 676

Popularité: 9 %

Popularité absolue: 1

Mots clés de cet article


SPIP

2003-2024 LePpf
Plan du site | | RSS 2.0 | Sur YouTube

Visiteurs connectés : 3

Nombre moyen de visites quotidiennes sur le site: 226