ITPub博客

首页 > 数据库 > MySQL > Mysql 5.5 重置root密码

Mysql 5.5 重置root密码

原创 MySQL 作者:feelpurple 时间:2016-04-06 11:06:39 0 删除 编辑
如果忘记了root密码,可以通过下面的流程来重置密码:
注:需要重启数据库

由于不知道root的密码,不能通过常规的方式来关闭数据库

通过杀掉进程的方式来强制关闭数据库

[root@localhost ~]# ps -ef|grep mysql
root     26764 55613  0 Apr04 pts/2    00:00:00 /bin/sh ./mysqld_safe --defaults-file=/etc/my.cnf
mysql    27174 26764  0 Apr04 pts/2    00:01:04 /data/bin/mysqld --defaults-file=/etc/my.cnf --basedir=/data --datadir=/var/lib/mysql --plugin-dir=/data/lib/plugin --user=mysql --log-error=/log/err.log --open-files-limit=10240 --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/lib/mysql/mysql.sock --port=3306
root     27192 55613  0 Apr04 pts/2    00:00:00 ./mysql -usystem -px xxxxxxxxx mysql
root     34544 18985  0 12:11 pts/3    00:00:00 /data/bin/mysql -ufire -px xxxxxxxxx
root     37683 13290  0 19:32 pts/0    00:00:00 grep mysql

[root@localhost ~]# kill `cat /var/run/mysqld/mysqld.pid`

以下面方式启动数据库,忽略授权验证和禁止网络客户端连接

[root@localhost bin]# ./mysqld_safe --defaults-file=/etc/my.cnf --skip-grant-tables --skip-networking&
[1] 38252

更改管理员用户密码

[root@localhost bin]# ./mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.5.48-log production environment

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> select user();
+--------+
| user() |
+--------+
| root@  |
+--------+
1 row in set (0.00 sec)

mysql> update mysql.user set password=password('System#2013') where user='system';
Query OK, 0 rows affected (0.15 sec)
Rows matched: 1  Changed: 0  Warnings: 0

mysql> commit;
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.19 sec)

关闭数据库并重新启动数据库

[root@localhost bin]# ./mysqladmin -usystem shutdown -p
Enter password: 
160405 19:48:22 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
[1]+  Done                    ./mysqld_safe --defaults-file=/etc/my.cnf --skip-grant-tables --skip-networking
[root@localhost bin]# ./mysqld_safe --defaults-file=/etc/my.cnf &
[1] 38903
[root@localhost bin]# 160405 20:07:43 mysqld_safe Logging to '/log/err.log'.
160405 20:07:43 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26506993/viewspace-2076005/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2014-08-01

  • 博文量
    404
  • 访问量
    1192545