前言
过去公司都是用的5.7 系列的MySQL,随着8.0的发版,也想试着升级一下。遇到了两个小错误,记录在此。
在开始之前,如果对MySQL8.0安装步骤不清楚的朋友们可以参考这篇文章:http://www.zzvips.com/article/81362.html ,好了,下面话不多说了,来一起看看详细的介绍吧
路径设置:
安装包路径:/data/mysql80/
数据路径:
/data/mysql/
下面描述一下,我安装时遇到的错误 和 问题解决方案:
问题1 Premission denied
因为 mysql80 安装文件 是我从其它Server上Copy过来的,不是官网下载解压,所以,我在初始化MySQL 和 启动MySQL 服务是报错,提示权限不够。
初始化报错:
启动服务报错 :
解决方案:
针对第一个错误,执行以下代码:
1
|
chmod -R 755 /data/mysql80/bin/
|
针对第二个错误,执行以下代码:
1
|
chmod -R 755 . /mysql .server
|
(这个文件是 /data/mysql80/support-files)
和
1
|
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(‘[新密码]') 报错。
查看网上的相关解释为:
以前版本的MySQL的密码认证插件是“mysql_native_password”,而现在使用的是“caching_sha2_password”。
解决方案:
1
2
3
|
ALTER USER 'root' @ 'localhost' IDENTIFIED WITH mysql_native_password BY '新密码' ;
FLUSH PRIVILEGES ;
|
问题3 开启远程登入报错,You are not allowed to create a user with GRANT
当开启远程登入时,提示错误信息如下:
解决方案:
通过命令
1
|
select host, user ,authentication_string,plugin from user ;
|
查看host 栏位值 确实限定为 localhost ;
则直接通过 命令
1
|
update user set host = "%" where user = 'root' ;
|
直接修改。
验证,可以远程连接了。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对服务器之家的支持。
原文链接:https://www.cnblogs.com/xuliuzai/p/9682646.html