Linux下修改mysql的root密碼
下面是具體步驟
一、知道原來的myql數據庫的root密碼;
1、 在終端命令行輸入
1
|
mysqladmin -u root -p password
"新密碼"
回車 ,Enter password: 【輸入原來的舊密碼】
|
2、 登錄mysql系統修改, mysql -uroot -p 回車 Enter password: 【輸入原來的密碼】
1
2
3
4
5
6
7
|
mysql>use mysql;
mysql> update user
set
password=password(
"新密碼"
)
where
user=
'root'
;
mysql> flush privileges;
mysql> exit;
|
然后使用剛才輸入的新密碼即可登錄。
二、不知道原來的myql的root的密碼;
首先,你必須要有操作系統的root權限了。
需要先停止mysql服務,/etc/init.d/mysqld stop
當提示mysql已停止后進行下一步操作
1
|
Shutting down MySQL. SUCCESS!
|
在終端命令行輸入
1
|
mysqld_safe --skip-grant-tables & 【登錄mysql系統】
|
輸入mysql登錄mysql系統
1
2
3
4
5
6
7
|
mysql> use mysql;
mysql> UPDATE user SET password=password(
"新密碼"
) WHERE user=
'root'
; 【密碼注意大小寫】
mysql> flush privileges;
mysql> exit;
|
重新啟動mysql服務
這樣新的root密碼就設置成功了。
三、修改root登錄權限
當你修改好root密碼后,很有可能出現這種情況
1
|
ERROR 1045 (28000): Access denied
for
user
'root'
@
'localhost'
(
using
password: YES)
|
這是因為root登錄權限不足,具體修改方法如下
需要先停止mysql服務,/etc/init.d/mysqld stop
當提示mysql已停止后進行下一步操作
1
|
Shutting down MySQL. SUCCESS!
|
在終端命令行輸入
1
|
mysqld_safe --skip-grant-tables & 【登錄mysql系統】
|
輸入mysql登錄mysql系統
1
2
3
4
5
6
7
8
9
|
mysql>use mysql;
mysql>update user
set
host =
'%'
where
user =
'root'
;
mysql>
select
host, user
from
user;
mysql> flush privileges;
mysql> exit;
|
然后重新啟動mysql服務就可以了。