一、背景
cenos8 通过yum 安装mysql8.0.21。修改数据存储路径和log文件路径。重新启动
二、问题
1. 启动无法打开mysqld.log
解决:查看mysqld.log 文件所属权限。删除重新启 动
chown -R mysql:mysql mysql/ #修改mysql 文件夹权限
2.mysql -u root -p 登录提示,无法连接 /var/lib/mysql/mysql.sock
解决:修改 /etc/my.cnf 客户端sock 路径。 sock文件路径在 server 端和client端都需要配置。client不配置的话,需要指定scok路径,进行启动。命令:mysql -u root -p -S 'scoke路径'
3.mysql8 设置sql_mode后不能启动
解决:已经取消了NO_AUTO_CREATE_USER
mysql8 正确配置: sql_mode:sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
三、注意
1.mysql8.0.21 配置文件路径。配置文件在/etc/my.cnd.d/** 下面
四、
四、配置mysql8.0.21 笔记(注意:各版本之间、环境都会对配置有影响)
1.chown mysql:mysql -R /home/data/mysql/ #复权限 给 mysql 用户存储路径
2.
配置文件修改sock 文件后,不能连接。必须指定,因为需要在client 端进行配置
解决: 在 /etc/my.cnf.d/client.cnf 中配置 在 [client] 下配置 socket=/home/data/mysql/mysql/mysql.sock
3.修改MySQL登录密码
select user,host from user;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY ''; #根据上面一步操作进行修改。看host 是 localhost 还是 % 。
FLUSH PRIVILEGES; #刷新权限
4.修改MySQL支持远程登录
update user set host = '%' where user = 'root'; #在mysql 库中
5.启动、停止命令
systemctl start mysqld.service
systemctl status mysqld.service
systemctl stop mysqld.service
6.查看端口
netstat -nltp # mysql8 默认开启3306 、33060 两个端口