Mysql入门MySQL的root密码忘记怎么办 修改root密码的方式
《Mysql入门MySQL的root密码忘记怎么办 修改root密码的方式》要点: 如果哪天你忘记了线上MySQL数据库的root暗码,怎么办?MYSQL教程 大家往往会想到skip-grant-tables参数,具体步骤如下:MYSQL教程 1. 关闭MySQL数据库,因为root暗码忘记了,mysqladmin无法使用,此时,只能通过kill pid关闭程序.MYSQL教程 在这里,科普一下kill 和kill -9的区别MYSQL教程 默认参数下,kill 发送SIGTERM信号给进程,告诉进程,你需要被关闭,请自行停止运行并退出. 2. 在my.cnf文件[mysqld]部分添加skip-grant-tables参数MYSQL教程 3. 登录数据库,修改root账户的暗码MYSQL教程 以下是修改root暗码的三种方式:MYSQL教程 ??? 1> mysql> set password for 'root'@'localhost'=password('123'); 无需刷新权限表MYSQL教程 ??? 2> mysql> update mysql.user set password=password("456") where user="root" and host="localhost";MYSQL教程 ???????? mysql> flush privileges;MYSQL教程 ??? 3> # mysqladmin -u root password "123"MYSQL教程 4. 关闭数据库,注释掉skip-grant-tables参数,重新启动数据库.MYSQL教程 ?上面这种方式虽然不错,但是有个问题,你必须重启数据库,对于线上环境,这可能是不被允许的.MYSQL教程 下面来谈谈另一种方法,有点“黑暗科技”的味道MYSQL教程 这个方法利用的是mysql.user表还是MyISAM引擎的特性.MYSQL教程 1. 将该实例的mysql.user表copy到另一个实例的目录下,譬如,test数据库的目录下MYSQL教程 MYSQL教程 2. 登录另一个实例数据库,修改上述三个文件的权限,并修改root暗码MYSQL教程 mysql> select user,host,password from test.user; +------+-----------+-------------------------------------------+ | user | host | password | +------+-----------+-------------------------------------------+ | root | localhost | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | +------+-----------+-------------------------------------------+ 1 row in set (0.00 sec) mysql> update test.user set password=password("hello") where user="root" and host="localhost"; Query OK,1 row affected (0.15 sec) Rows matched: 1 Changed: 1 Warnings: 0 3. 将上述三个文件copy回源数据库MYSQL教程 MYSQL教程 4. 获取mysqld的pid,通过kill -HUP `pidof mysqld`方式让mysqld进程重新加载配置文件MYSQL教程 MYSQL教程 [root@keepalived01 ~]# mysql -phello Warning: Using a password on the command line interface can be insecure. ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) [root@keepalived01 ~]# kill -HUP 4283 [root@keepalived01 ~]# mysql -phello Warning: Using a password on the command line interface can be insecure. Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 2528 Server version: 5.6.26 MySQL Community Server (GPL) Copyright (c) 2000,2015,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> 通过上述输出可以看出,kill -HUP之前,直接用暗码hello登录被拒绝,kill -HUP之后,就可以直接登录了.MYSQL教程 当然,以上方法仅供参考,在生产上慎用,毕竟平安压倒一切,天晓得哪里会出现问题.MYSQL教程 以上就是本文的全部内容,希望可以帮助大家解决root暗码忘记的困扰,谢谢大家的阅读.MYSQL教程 编程之家PHP培训学院每天发布《Mysql入门MySQL的root密码忘记怎么办 修改root密码的方式》等实战技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培养人才。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |