Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
mariadb [Le 10/06/2018, 11:31]
L'Africain [Définir/Redéfinir le mot de passe root et les différentes sécurités]
mariadb [Le 20/06/2018, 21:49] (Version actuelle)
krodelabestiole [Installation] + sudo apt install (techno serveur)
Ligne 7: Ligne 7:
 **[[wpfr>​MariaDB]]** est un système de gestion de base de données relationnelles. Après le rachat de [[wpfr>​MySQL]] par Sun Microsystems,​ puis de Sun par Oracle Corporation,​ son fondateur (Michael Widenius) démissionne pour lancer une version alternative,​ sous licence GPL et 100% compatible avec [[:MySQL]]. **[[wpfr>​MariaDB]]** est un système de gestion de base de données relationnelles. Après le rachat de [[wpfr>​MySQL]] par Sun Microsystems,​ puis de Sun par Oracle Corporation,​ son fondateur (Michael Widenius) démissionne pour lancer une version alternative,​ sous licence GPL et 100% compatible avec [[:MySQL]].
 MariaDB se base sur le code source de MySQL 5.1. MariaDB se base sur le code source de MySQL 5.1.
- 
---- //Source: [[http://​fr.wikipedia.org/​wiki/​MariaDB|Wikipédia]]//​ 
  
 Il s'agit donc d'un fork plus communautaire et ouvert, et 100% compatible MySQL. Il s'​avère aussi plus performant selon certaines études. Il est utilisé comme serveur MySQL par défaut sur [[wpfr>​Debian]]. Sur Ubuntu cependant, c'est toujours [[:MySQL]] qui est proposé par défaut. Il s'agit donc d'un fork plus communautaire et ouvert, et 100% compatible MySQL. Il s'​avère aussi plus performant selon certaines études. Il est utilisé comme serveur MySQL par défaut sur [[wpfr>​Debian]]. Sur Ubuntu cependant, c'est toujours [[:MySQL]] qui est proposé par défaut.
Ligne 17: Ligne 15:
  
 Pour installer le serveur MariaDB : [[apt>​mariadb-server]] ou Pour installer le serveur MariaDB : [[apt>​mariadb-server]] ou
-<code bash> 
-sudo apt install mariadb-server 
-</​code>​ 
-Pour installer le client MariaDB : [[apt>​mariadb-client]] ou 
-<code bash> 
-sudo apt install mariadb-client 
-</​code>​ 
  
-===== PHP =====+<​code>​sudo apt install mariadb-server</​code>​
  
-Pour que [[:PHP]] dialogue avec le serveur MariaDB, il ne faut pas oublier d'​installer le [[:​php#​association_avec_un_serveur_de_base_de_donnees|module correspondant]] : [[apt>​php-mysql]].+==== PHP ====
  
-===== Définir/​Redéfinir ​le mot de passe root et les différentes sécurités =====+Pour que [[:PHP]] dialogue avec le serveur MariaDB, il ne faut pas oublier d'​installer le [[:​php#​association_avec_un_serveur_de_base_de_donnees|module correspondant]],​ qui reste [[apt>​php-mysql]].
  
-Lors de la première installation vous devrez définir le mot de passe root : +===== Différences entre MariaDB et MySQL =====
-<code bash>​sudo mysql_secure_installation</​code>​+
  
-Permet aussi de limiter l'accès root uniquement en local… si vous rencontrez l'erreur \\ +<note important>​L'​ensemble du comportement du serveur MariaDB reste très similaire à celui de MySQL. La commande ​''​mysql'' ​reste valable, ainsi que les commandes ​''​systemctl ... myslq''.
-//ERROR 1698 (28000): Access denied for user 'root'@'localhost'// \\ +
-pensez bien à être en sudo +
-<code bash>​sudo mysql -u root</​code>​ +
-Pour [[:​phpMyAdmin]],​ il faut utiliser le compte éponyme… //​phpmyadmin//​ avec le mot de passe définit lors de l'installation (de phpmyadmin).+
  
-Si vous avez oublié votre mot de passe root :\\ +Pour l'​essentiel ​vous pouvez donc suivre la [[:mysql|documentation de MySQL]]. ​On trouve cependant quelques différences auxquelles il faudra éventuellement faire attention.</​note>​ 
-//ERROR 1045 (28000): Access denied for user '​root'​@'​localhost'//​ \\ + 
-les solutions classiques à [[:​MySQL]] ​ne résolvent pas le problèmeIl faut relancer ​ +==== auth_socket s'​appelle unix_socket sous MariaDB ==== 
-<​code ​bash>sudo mysql_secure_installation + 
- +<​code ​mysql>MariaDB [(none)]>​ SELECT user, host, plugin, password FROM mysql.user; 
-Change the root password? [Y/n]  ++------+-----------+-------------+----------+ 
-New password: ​+| user | host      | plugin ​     | password ​| 
 ++------+-----------+-------------+----------+ 
 +| root | localhost | unix_socket |          | 
 ++------+-----------+-------------+----------+
 </​code>​ </​code>​
-Si vous souhaitez accéder à votre serveur sur un réseau il vous faudra répondre non (n) à la question qui vous proposera de désactiver les connexions distantes.\\ 
-Si vous rencontrez des problèmes de connexion sur un serveur de développement,​ en particulier avec phpMyAdmin, consultez [[https://​www.citizenz.info/​mariadb-mysql-connexion-root-avec-phpmyadmin-sous-ubuntu-16-04|ce tutoriel]] afin de rétablir le fonctionnement original de type MySQL. 
  
-Après cela le fonctionnement ​est semblable ​à [[:Mysql]].+Donc si vous entendez parler de l'un ou de l'​autre de ces plugins, il s'agit du même comportement (qui permet d'​utiliser ​le système d'​authentification des utilisateurs Ubuntu, plutôt que des couples identifiants / mots de passe spécifique à MySQL). 
 + 
 +Quelques commandes sont à adapter dans la section //​[[mysql#​utilisateurs]]//​. 
 + 
 +==== unix_socket par défaut pour root dès Xenial ==== 
 + 
 +//​[[:​mysql#​authentification|unix_socket]]// ​est utilisé par défaut pour le compte //root// dès [[:​xenial|Ubuntu 16.04 Xenial]]. 
 + 
 +Donc en ce qui concerne l'​authentification,​ en particulier celle de l'​utilisateur //root//, et l'​accès ​à la commande ''​mysql''​ en "​super-administrateur",​ suivez la documentation de MySQL concernant ​[[:Bionic]] plutôt que [[:Xenial]] si vous utilisez MariaDB même sur Xenial. 
 + 
 +==== password plutôt que authentication_string sur la table users ==== 
 + 
 +Dans la table //users// de la base de données //mysql//, où sont stockés les utilisateurs MySQL, les mots de passes sont renseignés dans le champs //​password//​ sur MariaDB, au lieu de //​authentication_string//​ sur MySQL. 
 + 
 +Cela n'a pas un gros impact, et les commandes pour gérer les utilisateurs restent globalement les mêmes, mais pour [[:​mysql#​lister_les_utilisateurs|lister les utilisateurs existants]] en affichant leurs méthodes d'​authentification on utilisera plutôt : 
 +<code mysql>​SELECT user, host, plugin, password FROM mysql.user;</​code>​ 
 + 
 +==== UTF-8 par défaut partout ====
  
-=====Problèmes connus===== +MariaDB ​opte pour l'[[wpfr>UTF-8]] par défaut pour l'​ensemble des opérations ​(y compris la création de base de données). Il est donc inutile de prendre [[:mysql#​configuration_en_utf-8|cette section]] en compte, et le comportement général du serveur de base de données s'en trouve mieux harmonisé.
-====Connexion impossible==== +
-Si vous n'​arrivez à vous connecter à MariaDB, et rencontrez ​l'erreur suivante: +
-<code>ERROR 1698 (28000): Access denied for user 'root'​@'​localhost'</​code>​+
  
-Il vous faudra modifier les droits de l'​utilisateur root. Entrez dans un [[:​terminal]] les commandes suivantes: 
-<code bash>​sudo mysql -u root 
-use mysql; 
-update user set plugin=''​ where User='​root';​ 
-flush privileges; 
-exit;</​code>​ 
 ===== Liens ===== ===== Liens =====
  
Ligne 74: Ligne 69:
  
 ---- ----
-//​Contributeurs : [[:​utilisateurs:​time132|time132]],​ [[:​utilisateurs/​bcag2]]//​+//​Contributeurs : [[:​utilisateurs:​time132|time132]],​ [[:​utilisateurs/​bcag2]], [[:​utilisateurs:​krodelabestiole]]//
  • mariadb.1528623068.txt.gz
  • Dernière modification: Le 10/06/2018, 11:31
  • par L'Africain