Live2D

CentOS7安装mysql8,包含所有可能出现的问题

版本号:VMware:12,CentOS:Cent7,mysql:8.0.22 for Linux on x86_64

1.卸载自带mysql及相应的配置文件:

 

rpm -qa | grep -i mysql

2.删除相应的mysql版本:

yum -y remove mysql-*

注意此处的mysql需要根据上一步显示的信息进行卸载

3.删除出现过的mysql文件夹(建议都删除,如果自己下载tar.gz文件来安装mysql会缺少依赖,这个问题后面说):

find / -name mysql

删除对应文件夹语法:rm -rf 路径,删除时请注意,一旦删除无法恢复

4.删除默认配置文件:

rm -rf /etc/my.cnf

5.删除默认mysql的登录密码:

rm -rf /root/.mysql_sercret

6.删除mariadb:

由于MySQL在CentOS7中收费,所以已经不支持MySQL了,取而代之在CentOS7内部集成了mariadb,而安装MySQL的话会和MariaDB的文件冲突,所以需要先卸载掉MariaDB.

使用rpm 命令查找出要删除的mariadb文件;

rpm -pa | grep mariadb

举个栗子:

显示结果:

mariadb-libs-5.5.56-2.el7.x86_64
删除上面的程序

rpm -e mariadb-libs-5.5.56-2.el7.x86_64
删除不掉则强制删除法
rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64

 

7.centos的yum 源中默认是没有mysql的,所以我们配置Mysql 8.0安装源

sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

8.设置好后进行安装:

sudo yum --enablerepo=mysql80-community install mysql-community-server

一路y+enter安装即可,成功视图:

 

 

 9.启动mysql服务:

sudo service mysqld start

10.查看mysql临时密码,并登录:

grep "A temporary password" /var/log/mysqld.log

登录:

mysql -uroot -p

输入临时密码(该密码不可见)

 

11.登录成功后,设置新密码:

ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘new password’;

密码需要满足:长度大于8,大小写都有,数字,特殊符号

12.配置远程访问:

use mysql;
CREATE USER ‘root’@’%’ IDENTIFIED BY ‘新密码’;#新密码满足条件同上
grant all privileges on *.* to 'root'@'%' ;

13.刷新权限(使刚刚配置远程访问的用户的权限立即生效):

grant all privileges on *.* to 'root'@'%' ;

14.客户端连接错误:

原因是mysql8的加密方式规则不一样,是caching_sha2_password
需要加密方式改成mysql_native_password就行了
语法:ALTER USER ‘[用户名]’@’%’ IDENTIFIED WITH mysql_native_password BY ‘[密码]’;
输入:ALTER USER ‘root’@’%’ IDENTIFIED WITH mysql_native_password BY ‘root’;
加密方式成功改成mysql_native_password

15.如果客户端连接仍然报错,把防火墙关闭或防火墙开启特定端口:

1.命令行界面输入命令“systemctl status firewalld.service”并回车
2.如果active(running)”,说明防火墙已经被打开了
3.输入systemctl stop firewalld.service命令,进行关闭防火墙。
4.输入命令“systemctl disable firewalld.service”命令,即可永久关闭防火墙

开启3306端口

 

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

 

 

 

问题汇总:

1./var/log/mysqld.log 中找不到临时密码

步骤12345,然后重修安装

2.下载tar.gz包,比如:mysql-8.0.13-1.el6.x86_64.rpm-bundle.tar,安装server时:

依赖检测失败:
        libsasl2.so.2()(64bit) 被 mysql-community-server-8.0.13-1.el6.x86_64 需要

百度搜一堆全是mysql5.7的信息,都没啥用。实际上是因为安装包与系统不一致。

 

posted @ 2020-12-06 14:00  eminemrapgod  阅读(391)  评论(0编辑  收藏  举报