Maison > Article > base de données > Comment installer la base de données MySQL dans un environnement Linux
L'avantage de l'installation binaire de MySQL est qu'elle peut être installée dans n'importe quel chemin et qu'elle offre une bonne flexibilité. Plusieurs instances MySQL peuvent également être installées sur un seul serveur. L'inconvénient de cette méthode est qu'elle est compilée, donc les performances ne sont pas aussi bonnes que la version compilée à partir du code source et les paramètres de compilation ne peuvent pas être personnalisés de manière flexible. Si l'utilisateur ne souhaite pas installer le package RPM le plus simple mais inflexible, ni un package de code source complexe et fastidieux, alors le package binaire compilé sera le meilleur choix.
Site officiel de mysql : https://dev.mysql.com/downloads/mysql/
Parce que j'ai téléchargé mysql-8.0.23-linux - Version glibc2.12-x86_64.tar, s'il existe la dernière version, téléchargez simplement la dernière version.
Transférer le package d'installation dans le répertoire du package système Linux via le répertoire de création de données
--切换到安装目录 cd /app --解压xz压缩文件 tar -xvf /app/package/mysql-8.0.23-linux-glibc2.12-x86_64.tar.xz
Créer un groupe d'utilisateurs MySQL et un utilisateur MySQL
--把mysql-8.0.23-linux-glibc2.12-x86_64修改为mysql文件夹名称 mv /app/mysql-8.0.23-linux-glibc2.12-x86_64 /app/mysqlModifier les autorisations du répertoire MySQL
--在mysql根目录下创建data目录,用于存放数据 mkdir /app/mysql/data
--创建mysql用户组和mysql用户 groupadd mysql useradd -g mysql mysql
Configurer mysql
--修改mysql目录权限 chown -R mysql.mysql /app/mysql/
my.cnf Entrez le contenu de configuration suivant :
--先切换到mysql安装目录 cd /app/mysql --初始化数据库 bin/mysqld --initialize --user=mysql --basedir=/app/mysql --datadir=/app/mysql/data
Configurer les variables d'environnement
--先切换到mysql.support-files目录 cd /app/mysql/support-files --在mysql/support-files创建文件my-default.cnf touch my-default.cnf --复制配置文件到/etc/my.cnf cp -a ./my-default.cnf /etc/my.cnf --编辑my.cnf vim /etc/my.cnf
Démarrage de mysql
[client] port=3306 socket=/tmp/mysql.sock [mysqld] port=3306 user=mysql socket=/tmp/mysql.sock basedir=/app/mysql datadir=/app/mysql/data
Vous pouvez rencontrer l'erreur suivante lors du démarrage de mysql :
Échec du démarrage de mysqld. service : Unité introuvable.
ou
Démarrage de MySQL.Logging sur '/app /mysql/data/dengwu.err'.... ERREUR ! app/mysql/data/dengwu.pid).
La solution est la suivante :
--编辑profile文件 vim /etc/profile --配置mysql环境变量 PATH=/data/mysql/bin:/data/mysql/lib:$PATH export PATH --使mysql环境变量生效 source /etc/profile --看环境变量是否生效 echo $PATH
La tâche pour mariadb.service a échoué car le processus de contrôle s'est terminé avec un code d'erreur. Voir "systemctl status mariadb.service". et "journalctl -xe" pour plus de détails.
La solution est la suivante :
cd /app/mysql/bin systemctl start mysqld or service mysql startDémarrage de MySQL .. ERREUR ! Le serveur s'est arrêté sans mettre à jour le fichier PID (/app/mysql/data/dengwu.pid. ).
La solution est la suivante :
--需要安装mariadb-server yum install -y mariadb-server --然后启动mariadb服务 systemctl start mariadb.service --需要的可以添加mariadb服务开机启动 systemctl enable mariadb.service
Puis redémarrez mysql :
4. Changez le mot de passe mysql L'utilisateur root se connecte à mysql pour la première fois, car nous ne connaissons pas l'initiale. mot de passe. Généralement, nous réinitialiserons un nouveau mot de passe. Les opérations spécifiques sont les suivantes :
chown -R mysql.mysql /app/mysql/
Entrez la ligne de commande suivante :
--查看mysql进程 ps -ef|grep mysqld --杀死mysql进程 kill -9 mysql进程ID
Si vous oubliez le mot de passe, réessayez Ajouter :
--编辑my.cnf vim /etc/my.cnf
Puis connectez-vous à mysql :
default_authentication_plugin=mysql_native_passwordEntrez ensuite la commande pour afficher le groupe d'utilisateurs mysql :
--跳过密码验证(等设置了密码就去掉) skip-grant-tables
Vérifiez si l'utilisateur root n'a pas l'autorisation d'activer la connexion à distance. Sinon, exécutez la commande suivante :
--登录mysql mysql -u root -p
Activez la connexion à distance Après avoir obtenu le autorisations, modifiez le mot de passe de l'utilisateur root :
--查看mysql用户表 select user,host,authentication_string from mysql.user;Si le pare-feu est activé, vous devez ajouter une autorisation pour autoriser l'accès au port mysql. La commande spécifique est la suivante :
--修改root用户可以远程连接 update mysql.user set host='%' where user='root';Ensuite, redémarrez mysql :
--如果host是localhost则@字符后面是localhost,反之则是%,以host结果为准 --修改加密规则 alter user 'root'@'%' identified by 'qwer1234' password expire never; --更新一下用户的密码 alter user 'root'@'%' identified with mysql_native_password by 'qwer1234'; --刷新权限 flush privileges; --修改root用户密码 alter user 'root'@'%' identified by 'qwer1234';
5. . Configurez la stratégie de groupe de sécurité mysql Alibaba Cloud
Connectez-vous à Alibaba Cloud->Règles du groupe de sécurité->Règles d'accès->Direction entrante-> Ajoutez manuellement la stratégie suivante :
Connexion réussie à l'aide de Navicat :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!