DBAtlas · Atlas d'exploitation des bases de données

Installation de MySQL sur un serveur unique (prête pour la production)

MySQLNiveau: DébutantDurée: 30–45 min

Installe de zéro un serveur MySQL 8.4 LTS (ou 8.0) depuis le dépôt officiel, prêt pour la production : répertoires séparés pour les données, les binlogs et les logs, un my.cnf calculé selon la RAM, le CPU et le type de disque, GTID et durée de rétention des binlogs, slow query log, SELinux/AppArmor, accès root restreint et utilisateur applicatif. Vous obtenez une instance vérifiée, avec sa première sauvegarde ; les guides de réplication, d'InnoDB Cluster, de sauvegarde et de sécurité s'appuient sur cette installation.

Topologie: 1 serveur

Avant de commencer

  • Le serveur tourne sur un système d'exploitation pris en charge et à jour ; le fuseau horaire et NTP (chrony) sont corrects.
  • La RAM et le CPU correspondent aux valeurs du formulaire (my.cnf est calculé à partir d'elles : buffer pool … Mo).
  • Un disque/LV est monté pour …, … et … (persistant dans fstab), le système de fichiers est XFS ou ext4 et l'espace libre est suffisant. Les binlogs seront conservés … jours ; prévoyez au moins … fois votre volume d'écriture quotidien.
  • Le nom d'hôte … est défini et se résout vers sa propre IP ; le réseau applicatif (…) est joignable.
  • Le serveur peut joindre repo.mysql.com en HTTPS, ou un miroir interne est configuré.
  • Le port … (et le port X Protocol …) est libre.
  • Ni MariaDB ni la version MySQL du système d'exploitation ne sont installés sur le serveur (conflit avec le MySQL officiel).
  • Le mot de passe de l'utilisateur applicatif est prêt… (sur la famille RHEL, validate_password est activé par défaut : au moins 8 caractères, majuscules/minuscules, un chiffre et un caractère spécial)…. Il sera demandé pendant l'installation sans être affiché ; il ne doit contenir ni ' ni \.
  • Vous êtes connecté avec les droits root ou sudo ; la fenêtre de maintenance et un plan de retour arrière (snapshot du serveur) sont prêts.

Phases du guide

  • Préparation du système d'exploitation — Nom d'hôte et mise à jour du système · Paramètres du noyau (sysctl) · Appliquer les paramètres sysctl · Désactiver les Transparent Huge Pages
  • Installation du logiciel MySQL — Désactiver le module MySQL du système d'exploitation · Ajouter le dépôt MySQL officiel · Installer le logiciel serveur MySQL · Déclarer le dépôt APT MySQL officiel · Installer le logiciel serveur MySQL
  • Répertoires et configuration — Créer les répertoires et attribuer les droits · Écrire my.cnf · Relever la limite de fichiers ouverts (systemd) · Recharger la configuration systemd · Définir les étiquettes SELinux · Déclarer les nouveaux répertoires auprès d'AppArmor …
  • Démarrage du service — Activer et démarrer le service · Nettoyer l'ancien répertoire de données par défaut
  • Accès root et sécurité — Trouver le mot de passe root temporaire · Passer root en auth_socket · Définir le mot de passe root · Enregistrer les identifiants de connexion root (mysql_config_editor) · Supprimer les comptes par défaut et la base test · Composant de politique de mots de passe (validate_password)
  • Base et utilisateur applicatifs — Créer la base et l'utilisateur applicatif
  • Accès réseau — Ouvrir le port dans le pare-feu
  • Vérification — Vérifier que les paramètres sont appliqués · Vérifier l'error log · Test de connexion à distance
  • Après l'installation — Prendre la première sauvegarde logique · Brancher la supervision
Ouvrir le plan pas à pas adapté à votre environnement →