Comment utiliser une base de donnée MySQL sur votre Hébergement Web Gandi
MySQL est le système de base de données le plus populaire sur le Web. Il alimente des cadres d’application populaires tels que WordPress, Drupal ou Magento et c’est la base de données incontournable pour de nombreux développeurs web.
MySQL 5.7 (Percona) et 8.0 (Percona) sont actuellement disponibles sur Hébergement Web et peuvent être utilisés avec tous les langages.
Vous pouvez créer autant de bases de données et d’utilisateurs que vous le souhaitez dans votre instance. Vous n’êtes limité que par la taille du disque, que vous pouvez augmenter à tout moment jusqu’à 1 To.
Le service de base de données MySQL peut-être géré depuis la console d’urgence SSH ou depuis une interface Web. Cet article décrit comment accéder, créer et gérer les bases de données MySQL sur un Hébergement Web Gandi.
Le service de base de données MySQL est disponible sur localhost
et il n’est pas possible d’accéder au service depuis l’extérieur de l’instance.
La méthode de connexion préférée est le socket Unix situé sur le chemin détaillé ci-dessous. Un utilisateur par défaut (root
) et une base de données (default_db
) existent afin que vous puissiez tester rapidement votre connexion et effectuer des tâches de gestion.
Paramètres de connexion par défaut :
Adresse: localhost
Socket: /srv/run/mysqld/mysqld.sock
Utilisateur : root
Mot de passe : <vide>
Base de données: default_db
Nous vous encourageons à créer de nouveaux utilisateurs avec de fortes références et de nouvelles bases de données pour vos sites Web ou applications. Vous trouverez ci-dessous des instructions sur la façon d’effectuer ces tâches et d’autres tâches de gestion.
Vous pouvez accéder à votre base de données Hébergement Web à partir de la section Administration et Sécurité dans la page de gestion de votre instance.
Cliquez sur le bouton « Aller au panneau de contrôle » dans la section « Base de données ». Saisissez le nom d’utilisateur et le mot de passe associés à l’instance pour vous authentifier à votre panneau de contrôle.
Une fois terminé, vous verrez alors la page de connexion phpMyAdmin.
Par défaut, l’utilisateur phpMyAdmin est root
et il n’y a pas de mot de passe. Tapez donc root
comme utilisateur, laissez le mot de passe vide, et cliquez sur Go. Vous serez alors connecté à PHPmyAdmin et pourrez gérer vos bases de données à partir de là.
Pour créer une base de données, connectez-vous à votre interface phpMyAdmin à partir de votre page d’administration Hébergement Web et une fois dans la base de données, cliquez sur l’onglet Bases de données.
Ensuite, choisissez un nom pour votre base de données et terminez en cliquant sur Créer.
Maintenant vous voudrez créer vos utilisateurs pour la base de données.
Pour ce faire, utilisez l’option Privileges une fois que vous êtes dans la page d’administration de la base de données (cliquez sur le nom de la base de données pour vous y rendre). Cliquez sur le lien Ajouter un nouvel utilisateur et remplissez le formulaire pour créer un utilisateur.
Pour importer votre base de données et l’utiliser avec l’instance Simpe Hosting de Gandi, allez dans votre interface phpMyAdmin et cliquez sur l’onglet Importer.
Note
phpMyAdmin supporte les fichiers compressés. Ils doivent être dans le format : “nom.(format).(compression)”
Si votre base de données est trop grande, vous devrez déposer son fichier .sql
par sFTP dans votre répertoire /lamp0/tmp
. Ensuite, vous pouvez trouver le fichier et l’importer à partir de phpMyAdmin sans rencontrer d’erreurs sur le fait qu’il est trop gros.
Pour accéder à votre base de données MySQL par ligne de commande, vous devez d’abord vous connecter à votre instance via la console SSH.
Notez que la console se déconnectera automatiquement après quelques minutes d’inactivité. Si cela se produit, vous pouvez simplement initier une nouvelle connexion SSH sans avoir besoin de réactiver la console.
Une fois connecté à votre console SSH, vous pouvez vous connecter à votre base de données MySQL avec le client MySQL avec cette ligne (si aucun mot de passe root n’a été défini) :
Ou, si vous avez déjà défini un mot de passe root, avec ce qui suit :
Ceci est utile pour faire des sauvegardes de votre base de données. Pour ce faire, vous pouvez utiliser la commande mysqldump
comme ceci (si vous voulez exporter toutes vos bases de données) :
mysqldump -u root -p --all-databases > /srv/data/tmp/backup_mysql.sql
Ou comme ça, si vous voulez en exporter une seule (en remplaçant my_database
par le nom de votre base de données) :
mysqldump -u root -p --databases my_database > /srv/data/tmp/backup_mysql.sql
Il est possible d’effectuer des exportations automatiques périodiques en utilisant également un job anacron. Pour en savoir plus à ce sujet, consultez le guide anacron.
Note
Notez que seuls les répertoires /srv/data/tmp
et /srv/data/home
sont accessible en écriture - à l’exception des vhostss. Par conséquent, nous recommandons de créer un répertoire spécifique pour les exportations MySQL afin de les regrouper au même endroit.
Il est possible de réinitialiser le mot de passe de l’utilisateur MySQL root
directement depuis votre interface Gandi, en cliquant sur le bouton Réinitialiser le mot de passe.
Une fois que vous avez fait cela, vous pouvez vous connecter à MySQL avec l’utilisateur root
et un mot de passe vierge. Le fait de réinitialiser votre mot de passe utilisateur root
n’affecte pas votre base de données d’une autre manière.
Note
Rappelez-vous que vous devrez modifier toutes les pages de configuration de vos scripts afin qu’ils puissent accéder à votre base de données dans le cas où vous changeriez votre mot de passe.
Vous pouvez accéder aux logs de la base de données à partir du panneau de contrôle de votre instance, via sFTP ou la console SSH.
error.log
: Les journaux relatifs au serveur MySQL. Vous pouvez voir les tables qui se sont plantées et qui ont été réparées.
slow-queries.log
: Ici, vous pouvez voir les requêtes qui prennent un temps d’exécution inhabituellement long. Cela peut se produire dans le cas où certaines tables sont verrouillées.
La sortie suivante montre que MySQL a redémarré :
120614 16:09:59 [Note] Plugin 'FEDERATED' is disabled.
InnoDB: The InnoDB memory heap is disabled
InnoDB: Mutexes and rw_locks use GCC atomic builtins
InnoDB: Compressed tables use zlib 1.2.6
120614 16:09:59 InnoDB: Initializing buffer pool, size = 8.0M
120614 16:09:59 InnoDB: Completed initialization of buffer pool
120614 16:09:59 InnoDB: highest supported file format is Barracuda.
InnoDB: The log sequence number in ibdata files does not match
InnoDB: the log sequence number in the ib_logfiles!
120614 16:09:59 InnoDB: Database was not shut down normally!
InnoDB: Starting crash recovery.
InnoDB: Reading tablespace information from the .ibd files...
InnoDB: Restoring possible half-written data pages from the doublewrite
InnoDB: buffer...
120614 16:10:00 InnoDB Plugin 1.0.17 started; log sequence number 2657932
120614 16:10:00 [Note] /usr/sbin/mysqld: ready for connections.
Version: '5.1.61-2' socket: '/srv/run/mysqld/mysqld.sock' port: 0 (Debian)
Dans cette sortie, on voit que les tables de votre base de données ont été vérifiées ; si les tables semblent s’être plantées, MySQL essaie de les réparer automatiquement :
120614 16:04:45 [ERROR] /usr/sbin/mysqld: Table './wp/wp_comments' is marked as crashed and should be repaired
120614 16:04:45 [Warning] Checking table: './wp/wp_comments'
120614 16:04:45 [ERROR] /usr/sbin/mysqld: Table './wp/wp_links' is marked as crashed and should be repaired
120614 16:04:45 [Warning] Checking table: './wp/wp_links'
120614 16:04:45 [ERROR] /usr/sbin/mysqld: Table './wp/wp_options' is marked as crashed and should be repaired
120614 16:04:45 [Warning] Checking table: './wp/wp_options'
Les instances PHP utilisent un serveur de base de données MySQL. La configuration de ce serveur MySQL peut-être modifiée, cependant certains paramètres ne sont pas modifiables afin de garantir le bon fonctionnement de l’instance.
Afin de modifier cette configuration, accédez à votre instance via sFTP et téléchargez le fichier /lamp0/etc/mysql/custom.cnf
.
Modifiez localement le fichier en ajoutant les paramètres que vous souhaitez modifier. Les valeurs qui ne seront pas modifiées resteront aux valeurs par défaut.
Lorsque vous êtes satisfait de vos modifications, chargez le fichier dans votre instance, en remplaçant l’original (/lamp0/etc/mysql/custom.cnf
).
C’est notamment de cette façon que vous pouvez apporter des modifications à la variable sql_mode
, dont vous trouverez un exemple commenté dans le fichier.
Vous pouvez aussi ajouter d’autres fichiers de paramètres dans /lamp0/etc/mysql/
à condition que l’extension de chaque fichier soit .cnf
afin que la configuration soit prise en compte.
Pour que vos modifications soient effectives, vous devez redémarrer votre instance.
Comment utiliser une base de donnée MySQL sur votre Hébergement Web Gandi¶
Connexion à votre base de données
Gérer votre base de données avec phpMyAdmin
Créer une base de données MySQL
Importation d’une base de données existante
Gestion de votre base de données MySQL à partir de la ligne de commande
Accéder à votre base de données
Exporter une base de données
Réinitialisation du mot de passe utilisateur “root” pour MySQL
Journaux
Exemples de journaux
Modifier la configuration de MySQL
Voir aussi :
MySQL est le système de base de données le plus populaire sur le Web. Il alimente des cadres d’application populaires tels que WordPress, Drupal ou Magento et c’est la base de données incontournable pour de nombreux développeurs web.
MySQL 5.7 (Percona) et 8.0 (Percona) sont actuellement disponibles sur Hébergement Web et peuvent être utilisés avec tous les langages.
Vous pouvez créer autant de bases de données et d’utilisateurs que vous le souhaitez dans votre instance. Vous n’êtes limité que par la taille du disque, que vous pouvez augmenter à tout moment jusqu’à 1 To.
Le service de base de données MySQL peut-être géré depuis la console d’urgence SSH ou depuis une interface Web. Cet article décrit comment accéder, créer et gérer les bases de données MySQL sur un Hébergement Web Gandi.
Connexion à votre base de données¶
Le service de base de données MySQL est disponible sur
localhost
et il n’est pas possible d’accéder au service depuis l’extérieur de l’instance.La méthode de connexion préférée est le socket Unix situé sur le chemin détaillé ci-dessous. Un utilisateur par défaut (
root
) et une base de données (default_db
) existent afin que vous puissiez tester rapidement votre connexion et effectuer des tâches de gestion.Paramètres de connexion par défaut :
Nous vous encourageons à créer de nouveaux utilisateurs avec de fortes références et de nouvelles bases de données pour vos sites Web ou applications. Vous trouverez ci-dessous des instructions sur la façon d’effectuer ces tâches et d’autres tâches de gestion.
Gérer votre base de données avec phpMyAdmin¶
Vous pouvez accéder à votre base de données Hébergement Web à partir de la section Administration et Sécurité dans la page de gestion de votre instance.
Cliquez sur le bouton « Aller au panneau de contrôle » dans la section « Base de données ». Saisissez le nom d’utilisateur et le mot de passe associés à l’instance pour vous authentifier à votre panneau de contrôle.
Une fois terminé, vous verrez alors la page de connexion phpMyAdmin.
Par défaut, l’utilisateur phpMyAdmin est
root
et il n’y a pas de mot de passe. Tapez doncroot
comme utilisateur, laissez le mot de passe vide, et cliquez sur Go. Vous serez alors connecté à PHPmyAdmin et pourrez gérer vos bases de données à partir de là.Créer une base de données MySQL¶
Pour créer une base de données, connectez-vous à votre interface phpMyAdmin à partir de votre page d’administration Hébergement Web et une fois dans la base de données, cliquez sur l’onglet Bases de données.
Ensuite, choisissez un nom pour votre base de données et terminez en cliquant sur Créer.
Maintenant vous voudrez créer vos utilisateurs pour la base de données.
Pour ce faire, utilisez l’option Privileges une fois que vous êtes dans la page d’administration de la base de données (cliquez sur le nom de la base de données pour vous y rendre). Cliquez sur le lien Ajouter un nouvel utilisateur et remplissez le formulaire pour créer un utilisateur.
Importation d’une base de données existante¶
Pour importer votre base de données et l’utiliser avec l’instance Simpe Hosting de Gandi, allez dans votre interface phpMyAdmin et cliquez sur l’onglet Importer.
Note
phpMyAdmin supporte les fichiers compressés. Ils doivent être dans le format : “nom.(format).(compression)”
Si votre base de données est trop grande, vous devrez déposer son fichier
.sql
par sFTP dans votre répertoire/lamp0/tmp
. Ensuite, vous pouvez trouver le fichier et l’importer à partir de phpMyAdmin sans rencontrer d’erreurs sur le fait qu’il est trop gros.Gestion de votre base de données MySQL à partir de la ligne de commande¶
Pour accéder à votre base de données MySQL par ligne de commande, vous devez d’abord vous connecter à votre instance via la console SSH.
Notez que la console se déconnectera automatiquement après quelques minutes d’inactivité. Si cela se produit, vous pouvez simplement initier une nouvelle connexion SSH sans avoir besoin de réactiver la console.
Accéder à votre base de données¶
Une fois connecté à votre console SSH, vous pouvez vous connecter à votre base de données MySQL avec le client MySQL avec cette ligne (si aucun mot de passe root n’a été défini) :
Ou, si vous avez déjà défini un mot de passe root, avec ce qui suit :
Exporter une base de données¶
Ceci est utile pour faire des sauvegardes de votre base de données. Pour ce faire, vous pouvez utiliser la commande
mysqldump
comme ceci (si vous voulez exporter toutes vos bases de données) :Ou comme ça, si vous voulez en exporter une seule (en remplaçant
my_database
par le nom de votre base de données) :Il est possible d’effectuer des exportations automatiques périodiques en utilisant également un job anacron. Pour en savoir plus à ce sujet, consultez le guide anacron.
Note
Notez que seuls les répertoires
/srv/data/tmp
et/srv/data/home
sont accessible en écriture - à l’exception des vhostss. Par conséquent, nous recommandons de créer un répertoire spécifique pour les exportations MySQL afin de les regrouper au même endroit.Réinitialisation du mot de passe utilisateur “root” pour MySQL¶
Il est possible de réinitialiser le mot de passe de l’utilisateur MySQL
root
directement depuis votre interface Gandi, en cliquant sur le bouton Réinitialiser le mot de passe.Une fois que vous avez fait cela, vous pouvez vous connecter à MySQL avec l’utilisateur
root
et un mot de passe vierge. Le fait de réinitialiser votre mot de passe utilisateurroot
n’affecte pas votre base de données d’une autre manière.Note
Rappelez-vous que vous devrez modifier toutes les pages de configuration de vos scripts afin qu’ils puissent accéder à votre base de données dans le cas où vous changeriez votre mot de passe.
Journaux¶
Vous pouvez accéder aux logs de la base de données à partir du panneau de contrôle de votre instance, via sFTP ou la console SSH.
Exemples de journaux¶
La sortie suivante montre que MySQL a redémarré :
Dans cette sortie, on voit que les tables de votre base de données ont été vérifiées ; si les tables semblent s’être plantées, MySQL essaie de les réparer automatiquement :
Modifier la configuration de MySQL¶
Les instances PHP utilisent un serveur de base de données MySQL. La configuration de ce serveur MySQL peut-être modifiée, cependant certains paramètres ne sont pas modifiables afin de garantir le bon fonctionnement de l’instance.
Afin de modifier cette configuration, accédez à votre instance via sFTP et téléchargez le fichier
/lamp0/etc/mysql/custom.cnf
.Modifiez localement le fichier en ajoutant les paramètres que vous souhaitez modifier. Les valeurs qui ne seront pas modifiées resteront aux valeurs par défaut. Lorsque vous êtes satisfait de vos modifications, chargez le fichier dans votre instance, en remplaçant l’original (
/lamp0/etc/mysql/custom.cnf
).C’est notamment de cette façon que vous pouvez apporter des modifications à la variable
sql_mode
, dont vous trouverez un exemple commenté dans le fichier.Vous pouvez aussi ajouter d’autres fichiers de paramètres dans
/lamp0/etc/mysql/
à condition que l’extension de chaque fichier soit.cnf
afin que la configuration soit prise en compte.Pour que vos modifications soient effectives, vous devez redémarrer votre instance.
Voir aussi :¶