Maison  >  Article  >  base de données  >  Comment installer Mysql sous le système Linux

Comment installer Mysql sous le système Linux

迷茫
迷茫original
2017-03-26 11:54:071126parcourir

Contexte

J'ai commencé à apprendre à déployer Ambari il n'y a pas longtemps. J'ai rencontré quelques problèmes lors de l'installation de MySQL. Maintenant, j'ai trouvé des processus de déploiement sur Internet. et les ont enregistrés pour plus de facilité. Installez MySQL plus tard.

Centos 7.2 Installer Mysql 5.7.13

Installez d'abord yum, comme suit :

tar xvf yum-x.x.x.tar .gz

cd yum-x.x.x
yummain.py install yum

Ce qui précède est le processus général en mémoire.

1. Téléchargez la source du repo mysql

La source yum de CentOS 7.2 n'a pas mysql par défaut Vous devez d'abord télécharger la source du repo mysql

2. Installez le paquet mysql57-community-release-el7-8.noarch.rpm

  • rpm <span class="hljs-attribute">-ivh mysql57<span class="hljs-attribute">-community<span class="hljs-attribute">-release<span class="hljs-attribute">-el7<span class="hljs-subst">-<span class="hljs-number">8.noarch<span class="hljs-built_in">.rpm  <span class="hljs-subst">--nodeps <span class="hljs-subst">--<a href="http://www.php.cn/wiki/125.html" target="_blank">for</a>ce</span></span></span></span></span></span></span></span></span>

Installez ceci Après le package, vous obtiendrez deux sources de dépôt mysql yum : /etc/yum.repos.d/mysql-community.repo et /etc/yum.repos.d/mysql-community-source.repo

3. Installez mysql

yum install mysql-server
    4. Démarrez le service mysql

Vérifiez si le service MySQL a été démarré

service mysqld status

S'il n'est pas démarré, vous pouvez utiliser la commande suivante pour démarrer le service

<code class="hljs sql has-numbering">service mysqld start<br/>or<br/>systemctl <span class="hljs-operator"><span class="hljs-keyword">start mysqld</span></span></code>

5. Réinitialiser le mot de passe root

MySQL5.7 générera un mot de passe aléatoire pour l'utilisateur root après l'installation, au lieu du mot de passe vide comme les versions précédentes.
Vous pouvez modifier le mot de passe de connexion root en mode sans échec ou vous connecter avec un mot de passe aléatoire pour modifier le mot de passe. La méthode de mot de passe aléatoire utilisée ci-dessous est

Le mot de passe aléatoire généré par MySQL pour l'utilisateur root peut être trouvé via le fichier mysqld.log :

  • <span class="hljs-keyword">grep <span class="hljs-string">'temporary password' /var/<span class="hljs-keyword">log/mysqld.<span class="hljs-keyword">log</span></span></span></span>

Modifier le mot de passe de l'utilisateur root : (la politique de mot de passe de MySQL est relativement complexe et les mots de passe trop simples seront rejetés)

  • mysql <span class="hljs-attribute">-u root <span class="hljs-attribute">-p mysql<span class="hljs-subst">> Enter password: (输入刚才查询到的随机密码) mysql<span class="hljs-subst">> <span class="hljs-built_in">SET PASSWORD FOR <span class="hljs-string">'root'@<span class="hljs-string">'localhost'<span class="hljs-subst">= <span class="hljs-string">"Root-123"; mysql<span class="hljs-subst">> exit</span></span></span></span></span></span></span></span></span></span>

Connectez-vous avec le nouveau mot de passe root :

  • mysql <span class="hljs-attribute">-u root <span class="hljs-attribute">-pRoot<span class="hljs-subst">-<span class="hljs-number">123</span></span></span></span>

Si la méthode ci-dessus ne parvient pas être modifié, vous pouvez utiliser le mode sans échec suivant pour modifier root :

关闭服务
systemctl stop mysqld.service
vi /etc/my.cnf 
mysqld下面添加skip-grant-tables 保存退出启动服务
systemctl start mysqld.service
mysql -u root 不用密码直接回车
use mysql
update user set authentication_string=password(&#39;Root-123&#39;) where User=&#39;root&#39; and Host=&#39;localhost&#39;;
flush privileges;
exit;
vi /etc/my.cnf 把 skip-grant-tables 一句删除保存退出重启mysql服务 
systemctl restart mysqld.service
再次登录即可
mysql -u root -pRoot-123如果进行操作出现下面的提示:
You must reset your password using ALTER USER statement before executing this statement.
就再设置一遍密码
set password = password(&#39;Root-123&#39;);

6. Ouvrez le port 3306

Autoriser le nom d'utilisateur root et le mot de passe Root-123456 à se connecter. le serveur mysql depuis n'importe quel hôte

mysql>GRANT ALL PRIVILEGES ON *.* TO &#39;root&#39;@&#39;%&#39; IDENTIFIED BY &#39;Root-123456&#39; WITH GRANT OPTION;
mysql>FLUSH PRIVILEGES;
mysql>exit;
  • Activer l'accès externe au port mysql 3306 du pare-feu

    firewall-cmd --zone=public --add-port=3306/tcp --permanent

    firewall-cmd --reload

<span class="hljs-comment"><span class="hljs-literal"><span class="hljs-comment"><span class="hljs-literal"><span class="hljs-literal"><span class="hljs-comment"><span class="hljs-literal"><span class="hljs-literal"><span class="hljs-comment"><span class="hljs-literal"><span class="hljs-comment"><span class="hljs-literal"><span class="hljs-literal"><span class="hljs-comment"><span class="hljs-comment"><span class="hljs-literal"><span class="hljs-comment"><span class="hljs-literal"><span class="hljs-literal"><span class="hljs-comment">总结 </span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span>

Mysql est configuré plus en détail ci-dessus Vous pouvez utiliser systemctl restart mysqld.service pour démarrer. Pour afficher l'état de MySQL, utilisez la commande (ps -ef|grep mysql) pour afficher la configuration et l'état actuels. Je viens juste de commencer à apprendre cela et il y a encore beaucoup de choses que je ne comprends pas. J'espère que vous pourrez me donner quelques conseils.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn