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édentesRévision précédente
Prochaine révision
Révision précédente
mysql [Le 25/03/2026, 03:03] – mise en forme | màj liens | je ne vois pas trop l'intérêt du chapitre Qt5 ? réécrit et renommé modules | corrections | réécriture Connexions entrantes | liens internes | icône | détails krodelabestiolemysql [Le 25/03/2026, 17:43] (Version actuelle) – [MySQL] détails CGI | double licence | détails krodelabestiole
Ligne 4: Ligne 4:
 ====== MySQL ====== ====== MySQL ======
  
-**[[https://www.mysql.com/|MySQL]]** est un [[wpfr>SGBD|système de gestion de bases de données relationnelles]] (SGBDR) [[wpfr>logiciel propriétaire|propriétaire]], très populaire, gratuit, performant, //multithread//...+**[[https://www.mysql.com/|MySQL]]** est un [[wpfr>SGBD|système de gestion de bases de données relationnelles]] (SGBDR) très populaire, gratuit, performant, //multithread//, sous double licence [[wpfr>logiciel libre|libre]] ou [[wpfr>logiciel propriétaire|propriétaire]] (il est libre quand distribué avec un logiciel libre, ce qui est le cas d'Ubuntu, mais pas forcément d'autres applications qui l'utilisent).
  
-<note tip>MySQL appartient à [[wpfr>Oracle_(entreprise)|Oracle]]. Il existe un fork open-source, plus communautaire, 100% compatible MySQL et a priori plus performant créé et maintenu par Michael Wideniusm fondateur de MySQL. Il s'agit de [[:MariaDB]], qui est également disponible sur Ubuntu, et choisi par défaut sur [[wpfr>Debian]].</note>+<note important> 
 +**MySQL** appartient à [[wpfr>Oracle_(entreprise)|Oracle]].
  
-MySQL est principalement un //serveur// de bases de données. Pour s'y connecter localement ou à distance, on utilise un //client//. Il peut s'agir de la commande ''[[man>mysql]]'', ou couramment d'un script ou [[:nodejs|JavaScript]], ou [[:PHP]]. Il faudra dans ce dernier cas installer le [[:php#association_avec_un_serveur_de_base_de_donnees|module]] ''[[apt>php-mysql]]'' qui permet à PHP de communiquer avec un serveur MySQL. +Il existe un fork //[[wpfr>open source]]// et complètement [[wpfr>logiciel libre|libre]], plus communautaire, 100% compatible **MySQL** et a priori plus performant, créé et maintenu par le fondateur de MySQL, Michael Wideniusm. Il s'agit de **[[:MariaDB]]**, qui est également disponible sur Ubuntu, et choisi par défaut sur [[:distributions#Debian]]. 
 +</note> 
 + 
 +**MySQL** est principalement un //[[:serveur]]// de bases de données. Pour s'y connecter localement ou à distance, on utilise un //client//. Il peut s'agir de la commande ''[[man>mysql]]'', d'une application, ou pour le [[:Web]] d'un script [[wpfr>Common_Gateway_Interface|CGI]] : [[:nodejs|JavaScript]], [[:Python]], [[:Ruby]], [[:installation_non_standard_de_logiciel#Perl]], etc. ou [[:PHP]]. Il faudra dans ce dernier cas installer le [[:php#association_avec_un_serveur_de_base_de_donnees|module]] ''[[apt>php-mysql]]'' qui permet à PHP de communiquer avec un serveur MySQL. 
  
 ===== Installation ===== ===== Installation =====
Ligne 186: Ligne 190:
 bind-address = XXX.XXX.XXX.XXX bind-address = XXX.XXX.XXX.XXX
 </file> </file>
- +où ''XXX.XXX.XXX.XXX'' est l'[[:reseau#lexique|adresse IP]] de l'interface sur laquelle MySQL doit écouter. Ceci permet de n'écouter que sur une IP privée si vous avez plusieurs interfaces réseaux, et de bloquer votre adresse publique (et donc Internet).
-où ''XXX.XXX.XXX.XXX'' est l'[[:reseau#lexique|adresse IP]] de l'interface sur laquelle MySQL doit écouter. Ceci permet de n'écouter que sur une IP privée si vous avez plusieurs interfaces réseaux.+
  
 Pour forcer MySQL à écouter sur toutes les interfaces réseau, il suffit de commenter la ligne ''bind-address = 127.0.0.1'' (ou écrire ''bind-address = 0.0.0.0''), mais c'est très dangereux si le serveur est exposé sur Internet. Pour forcer MySQL à écouter sur toutes les interfaces réseau, il suffit de commenter la ligne ''bind-address = 127.0.0.1'' (ou écrire ''bind-address = 0.0.0.0''), mais c'est très dangereux si le serveur est exposé sur Internet.
Ligne 193: Ligne 196:
 [[#Redémarrer]] le service après avoir modifié le fichier de configuration. [[#Redémarrer]] le service après avoir modifié le fichier de configuration.
  
-Cependant l'authentification de chaque utilisateur MySQL dépend de sa localisation.+<note important>L'authentification de chaque utilisateur MySQL dépend de sa localisation.</note>
  
 Par exemple avec ''%%'nom_utilisateur'@'localhost'%%'', l'utilisateur ne peut se connecter que depuis la machine locale. Par exemple avec ''%%'nom_utilisateur'@'localhost'%%'', l'utilisateur ne peut se connecter que depuis la machine locale.
  
-Pour [[#créer un utilisateur]] MySQL qui soit autorisé à se connecter à distance, remplacer ''%%@'localhost'%%'' par ''@'//XXX//.//XXX//.//XXX//.//XXX//%%'%%'', dans la commande, où ''//XXX//.//XXX//.//XXX//.//XXX//'' est l'[[:reseau#lexique|adresse IP]] d'où l'utilisateur doit pouvoir se connecter.+Pour [[#créer un utilisateur]] MySQL qui soit autorisé à se connecter à distance, remplacer ''%%@'localhost'%%'' par ''@'//XXX//.//XXX//.//XXX//.//XXX//%%'%%'', dans les requêtes le concernant, où ''//XXX//.//XXX//.//XXX//.//XXX//'' est l'[[:reseau#lexique|adresse IP]] d'où l'utilisateur doit pouvoir se connecter.
  
 Pour autoriser l'accès venant de n'importe quel emplacement (ce qui est très peu [[:sécurité|sécurisé]] !), remplacer l'adresse IP par le caractère ''%'' : '''nom_utilisateur'@'%%%'%%''. Pour autoriser l'accès venant de n'importe quel emplacement (ce qui est très peu [[:sécurité|sécurisé]] !), remplacer l'adresse IP par le caractère ''%'' : '''nom_utilisateur'@'%%%'%%''.