mysql忘记密码后重置密码的问题

  1. 云栖社区>
  2. 博客>
  3. 正文

mysql忘记密码后重置密码的问题

技术小胖子 2017-11-09 20:09:00 浏览880
展开阅读全文

   5.5版本

忘记原来的myql的root的密码;首先,你必须要有操作系统的root权限了。

要是连系统的root权限都没有的话,先考虑root系统再走下面的步骤。


先看进程

ps -aux|grep mysql

杀死进程。

下面的ID指对应的进程

kill -9 ID

停止服务。

所以一般是这样


/etc/init.d/mysqld stop

# mysqld_safe --skip-grant-tables &&,


/bin/systemctl stop  mysql.service (最近www.oneinstack.com方法安装的,用这句)

表示在后台运行再打开一个终端。


这里无需密码就能进入了。

# mysql

打开mysql.

mysql> use mysql;

修改密码:

mysql 5.6用这一句:

mysql> UPDATE user SET password=password("test123") WHERE user='root'; 

mysql 5.7用这一句:

mysql> update mysql.user set authentication_string=password('test123') where user='root' and Host = 'localhost';  


让其生效。

mysql> flush privileges;

退出。

mysql> exit;                         


##本来mysql是不分大小写的,但是这个是修改的mysql中的mysql数据库的具体的值,要注意到。

 

[root@iZ626s67tu3Z init.d]# mysqld_safe --skip-grant-tables &
[1] 7221


[root@iZ626s67tu3Z init.d]# 2017-03-15T12:31:32.188353Z mysqld_safe Logging to '/data/mysql/mysql-error.log'.


2017-03-15T12:31:32.238110Z mysqld_safe Starting m


ysqld daemon with databases from /data/mysql


另外是打开3306端口:

iptables -I INPUT 4 -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT

这一句我终于记住了!


还有开启远程访问:

mysql> use mysql;  
mysql> update user set host = '%' where user = 'root';  
mysql> select host, user from user;  
mysql> flush privileges;  


网上还有几篇可参考一下:   

 http://linux.it.net.cn/e/data/mysql/2015/0222/13247.html  

http://blog.csdn.net/wooshn/article/details/7786473


http://blog.csdn.net/yageeart/article/details/7973381





     本文转自phpervip 51CTO博客,原文链接:http://blog.51cto.com/phpervip/1907006,如需转载请自行联系原作者

网友评论

登录后评论
0/500
评论
技术小胖子
+ 关注