mysql root 忘记密码

Posted 晴天小猫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql root 忘记密码相关的知识,希望对你有一定的参考价值。

前提:客户端服务器端必须在同一台机器上面才能修改
 
如果mysql库里面没有其他用户数据,可以直接初始化mysql库。
 
但是如果mysql库创建了很多用户就不能进行初始化了。只能从新找回密码
要想找回管理员密码必须停止mysql服务
service mysqld stop
 
然后手动启动mysql。编辑/etc/init.d/mysqld
 
找到 有个 $bindir/mysqld_safe --datadir="$datadir" --pid-file="mysqld_pid_file_path" $other_args >/dev/null 2>&1 &
 
修改为:
$bindir/mysqld_safe --skip--grant-tables --skip-networking --datadir="$datadir" --pid-file="mysqld_pid_file_path" $other_args >/dev/null 2>&1 &
 
再启动mysql服务。
 
然后登陆上去后再设置密码注意这里再修改密码时候只能去改mysql.user表里面的password 字段了
update user set Password=password(‘设置的新密码‘); where user=‘root‘;
 
然后在退出mysql,停止mysql服务,重新编辑/etc/init.d/mysqld  把刚才改的字段再改回去。
再重新启动mysql服务即可
 
 
方法2:
 
使用mysqld_safe  命令加上一些参数,登陆时候不使用授权表
 
首先停止mysql服务
 
然后:
mysqld_safe --skip-grant-tables --user=mysql &
直接新开一个shell输入mysql即可进入
 
如果无法进入,提示
mysqld_safe Starting mysqld daemon with databases from /mydata/data
mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
 
请查看/var/log/mysqld.log
我查看到日志显示这样:
160412  6:21:04 [ERROR] /usr/local/mysql/bin/mysqld: Can‘t create/write to file ‘/var/run/mysqld/mysqld.pid‘ (Errcode: 2)
160412  6:21:04 [ERROR] Can‘t start server: can‘t create PID file: No such file or directory
160412 06:21:04 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
应该是/var/run/mysqld目录不存在,系统无法在此目录找到pid文件
 
解决:新建目录,在目录下面建立pid文件
 mkdir /var/run/mysqld
在目录下面新建mysqld.pid文件,并授权该目录下面的所有文件为mysql用户,mysql组
 
[[email protected] log]# cd /var/run/mysqld
[[email protected] mysqld]# touch mysqld.pid
[[email protected] run]# chown -R mysql.mysql  mysqld
 
 
接着去修改mysqlku里面user表
update mysql.user set password = password(‘your pwd‘);
 
最后刷新权限
flush privileges;
 
最后再启动mysql服务
 
之前你使用免密码登陆之后,mysql服务已经被启动了,是以无授权表方式启动的,当你update改完密码之后,需要重启mysql服务,你会这样
/etc/init.d/mysqld stop
 
此时他会提示你PID文件不存在。因为你之前启动不是使用/etc/init.d/mysqld  start 启动的因此就不会生成pid文件
所以不能通过这样重启。
 
正确重启方式:
mysqladmin -u root -p shutdown
/etc/init.d/mysqld start

以上是关于mysql root 忘记密码的主要内容,如果未能解决你的问题,请参考以下文章

mysql 忘记root密码

win7下mysql服务器忘记密码怎么办

mysql忘记root密码

Mysql忘记root密码

MySQL忘记root密码的解决办法

MySQL忘记root密码