Dans notre dernier article, l'histoire derrière l'acquisition de "MySQL" et l'essor de "MariaDB" a été très appréciée. Dans cet article, nous avons déjà discuté de la nécessité de forker MySQL, de la montée en puissance de MariaDB, de ses caractéristiques, d'une étude comparative de MariaDB et MySQL, du mouvement de certaines des entreprises et sociétés de renommée mondiale (Google, Wikipedia) de MySQL à MariaDB et beaucoup d'autres aspects techniques et non techniques.
Ici, nous allons installer MariaDB 10.1 sur Debian Jessie (test) et le testera en créant de petites tables et en exécutant plusieurs requêtes dans le processus d'apprentissage et de compréhension.
Installer MariaDB 10.1 sur Debian Jessie
Sous les systèmes Debian, il est fortement recommandé d'installer 'python-software-properties ', avant de vous diriger vers l'installation de MariaDB à partir des dépôts officiels.
# apt-get install python-software-properties
Ensuite, importez et enregistrez la clé GPG, qui active apt pour vérifier l'intégrité des logiciels qu'il télécharge.
# apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xcbcb082a1bb943db
Maintenant, ajoutez le référentiel officiel MariaDB suivant à votre fichier sources.list, en utilisant la commande suivante.
# add-apt-repository 'deb http://mariadb.biz.net.id//repo/10.1/debian sid main'
Si l'ajout d'un référentiel génère une erreur telle que "add-apt-repository :commande introuvable ”, vous devez installer ‘software-properties-common’ comme indiqué ci-dessous.
# apt-get install software-properties-common
Mettre à jour la liste des packages disponibles sur le système.
# apt-get update
Enfin, installez MariaDB Server et Client, en utilisant les commandes suivantes.
# apt-get install mariadb-server mariadb-client
Si l'installation se passe bien, vérifiez la version de MariaDB installée.
# mysql -V mysql Ver 15.1 Distrib 5.5.38-MariaDB, for debian-linux-gnu (x86_64) using readline 5.1
Connectez-vous à MariaDB en utilisant root (non recommandé), suivi du mot de passe.
$ mysql -u root -p
Exemple de sortie
Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 28 Server version: 5.5.38-MariaDB-1 (Debian) Copyright (c) 2000, 2014, Oracle, Monty Program Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]>
REMARQUE :Le "aucun" ci-dessus signifie qu'aucune base de données n'est actuellement sélectionnée.
Exécuter diverses requêtes MariaDB
Comment créer un utilisateur dans MariaDB. Utilisez la syntaxe suivante pour créer un utilisateur dans MariaDB.
CREATE USER 'USER_NAME' IDENTIFIED BY 'PASSWORD';
Par exemple, pour créer l'utilisateur 'sam ‘ avec le mot de passe ‘sam123 ', nous devons exécuter.
MariaDB [(none)]> CREATE USER 'sam' IDENTIFIED BY 'sam123'; Query OK, 0 rows affected (0.00 sec)
Maintenant quittez MariaDB et connectez-vous en utilisant l'utilisateur sam .
$ mysql -u 'sam' -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 36 Server version: 5.5.38-MariaDB-1 (Debian) Copyright (c) 2000, 2014, Oracle, Monty Program Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]>
Supprimer/supprimer l'utilisateur MySQL "sam".
MariaDB [(none)]> DROP USER sam; Query OK, 0 rows affected (0.00 sec)
Voir toutes les bases de données disponibles.
MariaDB [(none)]> SHOW DATABASES; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | +--------------------+ 3 rows in set (0.04 sec)
REMARQUE :Toutes les bases de données présentées ci-dessus sont utilisées par MariaDB en interne. Ne modifiez pas ces bases de données à moins de savoir ce que vous faites.
Sélectionnez une base de données dans la liste (nécessaire pour exécuter des requêtes).
MariaDB [(none)]> USE mysql; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed MariaDB [mysql]>
Afficher toutes les tables de la base de données.
MariaDB [mysql]> SHOW TABLES; | Tables_in_mysql | +---------------------------+ | columns_priv | | db | | event | | func | | general_log | | help_category | | help_keyword | | help_relation | | help_topic | ..... 24 rows in set (0.00 sec)
Voir toutes les colonnes d'une table dites "utilisateur" de la base de données "mysql". Utilisez l'une des deux requêtes.
SHOW COLUMNS FROM user; or DESCRIBE user;
Le résultat des deux requêtes est le même.
MariaDB [mysql]> describe user; +------------------------+-----------------------------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +------------------------+-----------------------------------+------+-----+---------+-------+ | Host | char(60) | NO | PRI | | | | User | char(16) | NO | PRI | | | | Password | char(41) | NO | | | | | Select_priv | enum('N','Y') | NO | | N | | | Insert_priv | enum('N','Y') | NO | | N | | | Update_priv | enum('N','Y') | NO | | N | | | Delete_priv | enum('N','Y') | NO | | N | | | Create_priv | enum('N','Y') | NO | | N | | | Drop_priv | enum('N','Y') | NO | | N | | ....... 42 rows in set (0.01 sec)
Voir les informations détaillées sur l'état du serveur de MariaDB.
MariaDB [mysql]> SHOW STATUS; +------------------------------------------+----------------------+ | Variable_name | Value | +------------------------------------------+----------------------+ | Aborted_clients | 0 | | Aborted_connects | 0 | | Access_denied_errors | 0 | | Aria_pagecache_blocks_not_flushed | 0 | | Aria_pagecache_blocks_unused | 15737 | | Aria_pagecache_blocks_used | 2 | | Aria_pagecache_read_requests | 176 | | Aria_pagecache_reads | 4 | | Aria_pagecache_write_requests | 8 | .... 419 rows in set (0.00 sec)
Voir l'instruction MariaDB qui a été utilisée pour créer la base de données, dites "mysql".
MariaDB [mysql]> SHOW CREATE DATABASE mysql; +----------+------------------------------------------------------------------+ | Database | Create Database | +----------+------------------------------------------------------------------+ | mysql | CREATE DATABASE `mysql` /*!40100 DEFAULT CHARACTER SET latin1 */ | +----------+------------------------------------------------------------------+ 1 row in set (0.00 sec)
Voir l'instruction MariaDB utilisée pour créer la table, dites "utilisateur".
MariaDB [mysql]> SHOW CREATE TABLE user; + | Table | Create Table +------- | user | CREATE TABLE `user` ( `Host` char(60) COLLATE utf8_bin NOT NULL DEFAULT '', `User` char(16) COLLATE utf8_bin NOT NULL DEFAULT '', `Password` char(41) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '', `Select_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N', `Insert_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N', ....
Voir les droits de sécurité accordés à un/tous les utilisateurs de MariaDB.
MariaDB [mysql]> SHOW GRANTS; +----------------------------------------------------------------------------------------------------------------------------------------+ | Grants for [email protected] | +----------------------------------------------------------------------------------------------------------------------------------------+ | GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*698vsgfkemhvjh7txyD863DFF63A6bdfj8349659232234bs3bk5DC1412A' WITH GRANT OPTION | | GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION | +----------------------------------------------------------------------------------------------------------------------------------------+ 2 rows in set (0.00 sec)
Voir les AVERTISSEMENTS du serveur MariaDB.
MariaDB [mysql]> SHOW WARNINGS; +--------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Level | Code |Message | +-------+------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Error | 1064 | You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'ON mysql' at line 1 | +-------+------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ 1 row in set (0.00 sec)
Voir Erreurs du service MariaDB.
MariaDB [mysql]> SHOW ERRORS; +-------+------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Level | Code | Message | +-------+------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Error | 1064 | You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'ON mysql' at line 1 | +-------+------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ 1 row in set (0.00 sec)
C'est tout pour le moment. Le ‘SPECTACLE ' Statement a beaucoup de fonctionnalités, dont nous parlerons dans le futur article avec d'autres requêtes à exécuter sur MariaDB pour obtenir le résultat souhaité. Jusque-là, restez à l'écoute et connecté à Tecmint. N'oubliez pas de nous faire part de vos précieux commentaires dans la section des commentaires ci-dessous.