mysql8.0.22安装_安装MySQL 8.0 遇到的问题及解决

过去公司都是用的5.7 系列的MySQL,随着8.0的发版,也想试着升级一下。遇到了两个小错误,记录在此。

路径设置:

安装包路径:/data/mysql80/

48eecd3bfa71fe2ba69cd2167f6ee657.png

数据路径:

/data/mysql/

dad31402c484abecc2acf3408911c4cd.png

下面描述一下,我安装时遇到的错误 和 问题解决方案:

问题1 Premission denied

因为 mysql80 安装文件 是我从其它Server上Copy过来的,不是官网下载解压,所以,我在初始化MySQL 和 启动MySQL 服务是报错,提示权限不够。

初始化报错:

0e315ada40cdee3cd65ac5f81520251f.png

启动服务报错 :

9ccec7da87f19e913a60c261f7f25f3c.png

解决方案:

针对第一个错误,执行以下代码:

chmod -R 755 /data/mysql80/bin/

针对第二个错误,执行以下代码:

chmod -R 755 ./mysql.server (这个文件是 /data/mysql80/support-files)

chmod -R 755 /etc/init.d/mysqld

问题2 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('XXXXX')' at line 1

在登录MySQL,修改root密码时,使用就方法 SET PASSWORD=PASSWORD(‘[新密码]’) 报错。

2bfe1ab709cd0326f16fbbbde418cb8e.png

查看网上的相关解释为:

以前版本的MySQL的密码认证插件是“mysql_native_password”,而现在使用的是“caching_sha2_password”。

解决方案:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';

FLUSH PRIVILEGES;

问题3 开启远程登入报错,You are not allowed to create a user with GRANT

当开启远程登入时,提示错误信息如下:

9c476ab8914e1c6103e01c73ebc7026b.png

解决方案:

通过命令

select host,user,authentication_string,plugin from user;

查看host 栏位值 确实限定为 localhost ;

则直接通过 命令

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

直接修改。

处理方法:
1、授权root用户可以远程登陆

GRANT ALL ON *.* TO 'root'@'%';
1
2、刷新权限

flush privileges;
1
3、修改加密规则

ALTER USER 'root'@'localhost' IDENTIFIED BY 'yourpassword' PASSWORD EXPIRE NEVER;
1
4、更新 root 用户密码

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'yourpassword';
1
5、刷新权限

FLUSH PRIVILEGES;

验证,可以远程连接了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值