1、我们以centos操作系统为例,如果在以后简单使用mysql的过程中不想输入密码的话,我们可以选择修改my.ini文件,使用whereis my.ini查看my.ini文件的位置,可以看到是在/etc/的目录下,我们使用vim 命令进行编辑,在mysqld下方输入skip -grant -tables然后保存退出即可。
2、修改完成后使用service mysqld restart 重启mysql服务。使用mysql -u root -p 然后直接回车,我们可以看到已经可以登录到mysql了。但是在此时如果进行修改密码的设置则会报如下的错误。
3、我们訇咀喃谆将步骤1,2的设置进行恢复,注释掉my.ini文件中的skip -grant -tables,然后使用service mysqld restart 重启mysql服务。实醪撅此饕际上在安装mysql的过程中是帮我们自动生成了一个临时密码的,这个密码保存在/var/log/mysqld.log文件里,我们查看该文件或者使用grep "A temporary password" /var/log/mysqld.log查看这个临时密码,结果如下图所示,冒号后面的即为密码,复制出来即可。使用mysql -u root -p 然后输入这个密码即可登录mysql。
4、上面提到的/var/log/mysqld.log文件还有其他的用途,如果我们在启动mysql时失败了,可以打开这个文件去查看失败的原因,如下图所示,提示/var/lib/mysql/文件夹下的不可用,那么我们就删除该文件夹即可。
5、mysql8.0修改密码的方式倦虺赳式和mysql5.7不一样,像update user set password=password("123456") where user=泌驾台佐39;root';mysqladmin -u root -p password "123456";update user set authentication_string = password(‘123456’) where user=‘root’;等等这些网上能搜到的命令统统不管用了,正确的用法是在登录mysql后使用alter user user() identified by "123456"进行设置,密码是123456。
6、由于使用的密码太简单了,默认密码检查策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于8位。因此我们需要修改密码策略和密码长度,注意不是validate_password_policy,这样会报错,mysql8.0已经改成validate_password.policy了,另外长度设置也一样,如下图所示,修改完成后再重新设置密码就可以了。修改完密码后记得重启mysql服务,然后使用新的密码登录试试吧。