1. 程式人生 > >使用mysqladmin命令修改MySQL密碼與忘記密碼

使用mysqladmin命令修改MySQL密碼與忘記密碼

聲明 需要 但是 int scu p12 修改 還要 參考

修改密碼:

1.例如你的 root用戶現在沒有密碼,你希望的密碼修改為123456,那麽命令是:

mysqladmin -u root password 123456

2.如果你的root現在有密碼了(123456),那麽修改密碼為abcdef的命令是:

mysqladmin -u root -p password abcdef

註意,命令回車後會問你舊密碼,輸入舊密碼123456之後命令完成,密碼修改成功。

3.如果你的root現在有密碼了(123456),那麽修改密碼為abcdef的命令是:

mysqladmin -u root -p123456 password abcdef (註意-p 不要和後面的密碼分

開寫,要寫在一起,不然會出錯,錯誤如下所示)

4.使用phpmyadmin,這是最簡單的了,修改mysql庫的user表,


不過別忘了使用PASSWORD函數。



忘記密碼:

下面我們提供了6種不同的修改mysql root用戶的密碼,與增加mysql用戶的方法。

方法一

使用phpmyadmin,這是最簡單的了,修改mysql庫的user表,

不過別忘了使用PASSWORD函數。

方法二

使用mysqladmin,這是前面聲明的一個特例。

mysqladmin -u root -p password mypasswd

輸入這個命令後,需要輸入root的原密碼,然後root的密碼將改為mypasswd。

把命令裏的root改為你的用戶名,你就可以改你自己的密碼了。

當然如果你的mysqladmin連接不上mysql server,或者你沒有辦法執行mysqladmin,

那麽這種方法就是無效的。

而且mysqladmin無法把密碼清空。

下面的方法都在mysql提示符下使用,且必須有mysql的root權限:

方法三

mysql> INSERT INTO mysql.user (Host,User,Password)

VALUES('%','jeffrey',PASSWORD('biscuit'));

mysql> FLUSH PRIVILEGES

確切地說這是在增加一個用戶,用戶名為jeffrey,密碼為biscuit。

在《mysql中文參考手冊》裏有這個例子,所以我也就寫出來了。

註意要使用PASSWORD函數,然後還要使用FLUSH PRIVILEGES。

方法四

和方法三一樣,只是使用了REPLACE語句

mysql> REPLACE INTO mysql.user (Host,User,Password)

VALUES('%','jeffrey',PASSWORD('biscuit'));

mysql> FLUSH PRIVILEGES

方法五

使用SET PASSWORD語句,

mysql> SET PASSWORD FOR jeffrey@"%" = PASSWORD('biscuit');

擬也必須使用PASSWORD()函數,

但是不需要使用FLUSH PRIVILEGES。

方法六

使用GRANT ... IDENTIFIED BY語句

mysql> GRANT USAGE ON *.* TO jeffrey@"%" IDENTIFIED BY 'biscuit';

這裏PASSWORD()函數是不必要的,也不需要使用FLUSH PRIVILEGES。

註意: PASSWORD() [不是]以在Unix口令加密的同樣方法施行口令加密。

MySQL 忘記口令的解決辦法

如果 MySQL 正在運行,首先殺之: killall -TERM mysqld。

啟動 MySQL :bin/safe_mysqld --skip-grant-tables &

就可以不需要密碼就進入 MySQL 了。

然後就是

>use mysql

>update user set password=password("new_pass") where user="root";

>flush privileges;

重新殺 MySQL ,用正常方法啟動 MySQL 。




使用mysqladmin命令修改MySQL密碼與忘記密碼