mysql8安装记录

需要的安装包:

下载地址:https://dev.mysql.com/downloads/mysql/

 

安装顺序:

按照依赖关系依次安装rpm包 依赖关系依次为common→libs→client→server

rpm -ivh mysql-community-common-8.0.17-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.17-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.17-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.17-1.el7.x86_64.rpm

注:ivh中, i-install安装;v-verbose进度条;h-hash哈希校验

安装过程中出现的问题:

1、mariadb-libs 被 mysql-community-libs-8.0.13-1.el7.x86_64 取代

解决办法:执行yum remove mysql-libs解决

2、安装server时,报/usr/bin/perl is needed by mysql-community-server-8.0.17-1.el7.x86_64

执行yum -y install perl.x86_64这个命令解决

参考:https://blog.csdn.net/u010886217/article/details/89416159

解决这两个问题后,mysql安装成功。

启动mysql服务:service mysqld start

启动没有报错,需要进入mysql

mysql安装成功后,会为root用户生成一个默认密码,在/var/log/mysqld.log文件中。

获取密码后,执行命令mysql -uroot -p

然后输入默认密码,登录成功。

这时候要修改默认密码。

执行set password=password('roo')会报错误

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'password('root@123')' at line 1

这个命令在mysql8上不能用了

换了命令:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';

报错误:Your password does not satisfy the current policy requirements

百度发现,是设置的密码不符合校验规范。

首先通过命令查看校验规则:SHOW VARIABLES LIKE 'validate_password%';

mysql8安装记录_第1张图片

然后降低校验等级:

mysql> set global validate_password.policy=0;

mysql> set global validate_password.length=1;

全部修改后如下图:

mysql8安装记录_第2张图片

再执行ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';即可修改成功。

参考链接:

https://www.cnblogs.com/zgxblog/p/10708182.html

https://blog.csdn.net/wltsysterm/article/details/79649484

 

设置远程链接:

修改完root密码后,通过navicate链接mysql,链接不上。

1、首先去linux上看端口是否开放:

netstat -anp | grep 3306

 

2、查询指定端口是否已开 firewall-cmd --query-port=3306/tcp

发现3306端口被防火墙屏蔽了,关掉防火墙

3、查看防火墙状态
查看防火墙状态 systemctl status firewalld
开启防火墙 systemctl start firewalld  
关闭防火墙 systemctl stop firewalld
开启防火墙 service firewalld start 
若遇到无法开启
先用:systemctl unmask firewalld.service 
然后:systemctl start firewalld.service

链接:https://blog.csdn.net/realjh/article/details/82048492

关掉防火墙后,还是无法通过navicate连接。

因为mysql8的密码校验机制,跟mysql5不一样,navicate还不支持。

use mysql;

mysql8安装记录_第3张图片

需要把root的Host和plugin修改成%和mysql_native_password

update user set host='%' where user='root';

update user set plugin='mysql_native_password' where user='root';

修改后,重新修改密码

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';

然后赋予权限就可以了。

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;

 

参考链接:

https://blog.csdn.net/shenhonglei1234/article/details/84786443

https://www.jianshu.com/p/cd910ba51b3d

https://blog.csdn.net/qq_30505673/article/details/82623435

https://blog.csdn.net/zhengbin9/article/details/82729861

 

centos7 防火墙相关

https://www.jianshu.com/p/87ba0f564e86

firewall-cmd --state                          ##查看防火墙运行状态,是否是running

firewall-cmd --reload                        ##重新载入配置,比如添加规则之后,需要执行此命令

firewall-cmd --get-zones                  ##列出支持的zone

firewall-cmd --get-services              ##列出支持的服务,在列表中的服务是放行的

firewall-cmd --list-ports                    ##列出开放的端口

firewall-cmd --query-service ftp                          ##查看ftp服务是否支持,返回yes或者no

firewall-cmd --add-service=ftp                            ##临时开放ftp服务

firewall-cmd --add-service=ftp --permanent        ##永久开放ftp服务

firewall-cmd --remove-service=ftp --permanent  ##永久移除ftp服务

firewall-cmd --add-port=80/tcp --permanent      ##永久添加80端口

iptables -L -n                                  ##查看规则,这个命令是和iptables的相同的

man firewall-cmd                            ##查看帮助

systemctl stop firewalld                  ##关闭防火墙

systemctl start firewalld                  ##开启防火墙

systemctl status firewalld              ##查看防火墙状态

systemctl restart firewalld              ##重启防火墙

systemctl disable firewalld              ##开机关闭防火墙,即永久关闭

https://www.cnblogs.com/zxg-blog/p/9835263.html 

 

其中注意永久关闭防火墙,防止下次启动navicate还是连接不上mysql

注意将mysql设置为随机自启动

systemctl list-unit-files | grep mysql

如果为enable则为随机自启动

设置mysql不随机启动:

systemctl disable mysqld

设置mysql随机启动 

systemctl enable mysqld

https://www.jb51.net/article/105372.htm

https://blog.csdn.net/tingyu1995/article/details/88326923

你可能感兴趣的:(Mysql,mysql,linux)