標籤:破解 centos6.5 mysql 資料庫密碼
MySql資料庫在使用的過程中往往會出現密碼忘記,或者是密碼驗證失敗,出現種情況,我在這裡匯總出現以下兩種方法:
第一種方法:
報錯代碼:
mysqladmin: connect to server at ‘localhost‘ failed
error: ‘Access denied for user ‘root‘@‘localhost‘ (using password: YES)‘
解決辦法:
先停止MySql資料庫的服務
service mysqld stop
然後啟用MySql資料庫的安全模組
mysqld_safe --skip-grant-tables &
在進行使用mysql進行登入到資料庫中
mysql -u root -p
進入到資料庫中更改root的密碼
use mysql
update user set password=PASSWORD("newpassword")where user="root"; #更改的密碼為newpassword
flush privileges; 更新許可權
quit 退出
最後啟動mysql系統的服務,在使用更改的新密碼進入到mysql的資料庫中,提示登入成功!
service mysqld restart
mysql -u root -p
第二種情況:
忘記本地root的登入密碼
解決辦法:
1、編輯/etc/my.cnf
在[mysqld] 配置部分添加一行
skip-grant-tables
2、儲存後重啟mysql
[[email protected] etc]# service mysqld restart
Shutting down MySQL. [ OK ]
Starting MySQL. [ OK ]
3、登入資料庫重新設定root密碼
[[email protected] ~]# mysql -uroot -p mysql
Enter password:
直接斷行符號進入
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.1.47-log Source distribution
Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL v2 license
Type ‘help;‘ or ‘\h‘ for help. Type ‘\c‘ to clear the current input statement.
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| test |
+--------------------+
3 rows in set (0.00 sec)
執行下列語句
mysql> update user set password=password("mysql") where user=‘root‘;
Query OK, 4 rows affected (0.00 sec)
Rows matched: 4 Changed: 4 Warnings: 0
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
4、刪除/etc/my.cnf檔案中添加的“skip-grant-tables”行,重啟mysql;
用新設的密碼就能正常登入了;
本文出自 “薰衣草的天空” 部落格,請務必保留此出處http://youlei.blog.51cto.com/2669714/1652950
Centos6.5系統下面破解MySql資料庫的密碼