第一步 登入
## 登入方案1 ### 5.7默认会生成root初始密码文件 /root/.mysql_secret# 使用密码文件中的初始密码登入root身份,若成功则直接进行第三步## 登入方案2 ### 如果应用未生成初始密码文件,则我们以安全模式启动mysql,并跳过身份验证,匿名登入service mysqld stopmysqld_safe --skip-grant-tables &## 登入方案3 ### 如果应用未安装mysqld_safe,则我们编辑mysql配置,改为跳过身份验证,匿名登入# vim /etc/my.cnf, 添加如下一行skip-grant-tables
第二步 初步更新密码
# 若能root登入,则直接第三步# 有时候不成功,仍然是匿名身份# 匿名登入后, 执行如下sql语句, 初步更新root密码use user;update user set authentication_string=password("123456") where user="root";flush privileges;
第三步 最终更新密码
# 初步更新的密码仅仅提供了登录权限,其他命令都没有授权# 用初步更新的root密码登入root,然后执行以下命令set Password=PASSWORD('new-password-here') #执行这一条后root才具有所有命令的权限flush privileges;# 5.7加强了安全机制, 所以对密码强制要求高强度,可编辑配置文件关闭# vim /etc/my.cnf, 添加如下一行validate-password=OFF
第四步 还原匿名登入配置,服务重启