之前自己在centos6.8下安装mysql8.0过程中,在设置密码时总是有格式错误或者其它报错,找了许多资料,由于mysql版本不一样等各种原因,始终解决不了。后经过各方资料总结,通过以下的操作步骤终于将mysql密码设置完成了 。
1、跳过登入验证
在/etc/my.cnf文件夹中的 [mysqld] 的后面添加skip-grant-tables;跳过登入权限验证;
[mysqld]
socket=/tmp/mysql/mysql.sock
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
# 添加跳过验证(修改后重启,修改完后删除再重启)
skip-grant-tables
2、重启msyql服务
这一步骤是为了使修改的配置生效
service mysqld restart
3、无密码进入mysql
直接用 mysql ,或者mysql -u root;
mysql> use mysql;
4、先把密码置为空字符串
不这样做后面修改密码会报错
mysql> update user set authentication_string="" where user="root";
#这个刷新非常有必要;不让后面执行alter就会出错
mysql> flush privileges;