Installation et configuration de MySQL 5.5.62 sur CentOS 7

Préparation du système et nettoyage

Avant de procéder à l'installation de MySQL, il est impératif de supprimer toute version préexistante de MariaDB, qui est souvent installée par défaut sur CentOS 7, afin d'éviter les conflits de bibliothèques.

# Identification des paquets MariaDB installés
rpm -qa | grep mariadb

# Suppression du paquet spécifique (ajuster selon le résultat précédent)
yum remove -y mariadb-libs

Gestion des dépendances et de l'environnement

L'exécution de MySQL nécessite certaines bibliothèques système. Installez les composants essentiels suivants :

yum install -y libaio autoconf

Créez ensuite un compte utilisateur dédié à l'exécution du service MySQL pour renforcer la sécurité du système :

useradd -r -s /bin/false mysql

Déploiement des binaires

Téléchargez l'archive binaire générique (glibc) depuis le site officiel, puis procédez à l'extraction dans le répertoire local du système.

# Extraction de l'archive vers /usr/local
tar -zxvf mysql-5.5.62-linux-glibc2.12-x86_64.tar.gz -C /usr/local/

# Création d'un lien symbolique ou renommage pour simplifier l'accès
cd /usr/local
mv mysql-5.5.62-linux-glibc2.12-x86_64 mysql

Initialisation de la base de données

Configurez les droits d'accès sur les répertoires et exécutez le script d'initialisation des tables système de MySQL.

cd /usr/local/mysql

# Attribution temporaire des droits pour l'installation
chown -R mysql:mysql .

# Initialisation des fichiers de données
./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

# Sécurisation des permissions : root possède les binaires, mysql possède les données
chown -R root .
chown -R mysql data

Configuration du service et du système

Mettez en place le fichier de configuration et le script de démarrage pour permettre au système de gérer le processus MySQL.

# Mise en place du fichier de configuration
cp support-files/my-medium.cnf /etc/my.cnf

# Configuration du script de service
cp support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld

# Ajout aux services de démarrage
chkconfig --add mysqld
chkconfig mysqld on

Pour rendre les commandes MySQL accessibles globalement, mettez à jour votre variable d'environnement PATH :

echo "export PATH=\$PATH:/usr/local/mysql/bin" >> /etc/profile
source /etc/profile

Démarrage et sécurisation initiale

Lancez le service et définissez le mot de passe du compte adminisrtateur (root).

service mysqld start

# Définition du mot de passe initial
mysqladmin -u root password 'votre_mot_de_passe'

Si vous avez besoin que les noms de tables ne soeint pas sensibles à la casse, modifiez le fichier /etc/my.cnf :

[mysqld]
lower_case_table_names = 1

Opérations de gestion courantes

Voici quelques commandes SQL essentielles pour administrer votre nouvelle instance MySQL :

-- Accès à la console
-- mysql -u root -p

-- Création d'une base de données et d'un utilisateur
CREATE DATABASE app_db CHARACTER SET utf8;
CREATE USER 'admin_user'@'%' IDENTIFIED BY 'secure_password';

-- Attribution des privilèges
GRANT ALL PRIVILEGES ON app_db.* TO 'admin_user'@'%';
FLUSH PRIVILEGES;

-- Modification des droits existants
REVOKE INSERT ON app_db.* FROM 'admin_user'@'%';

Le contrôle du service s'effecute via les commandes standards Linux : service mysqld stop pour l'arrêt, service mysqld restart pour le redémarrage, et service mysqld status pour vérifier l'état du processus.

Étiquettes: MySQL CentOS7 database-administration linux-server SQL

Publié le 13 juillet à 08h07