修改密碼:
1.例如你的 root用戶現(xiàn)在沒有密碼,你希望的密碼修改為123456,,那么命令是:
mysqladmin -u root password 123456
2.如果你的root現(xiàn)在有密碼了(123456),,那么修改密碼為abcdef的命令是:
mysqladmin -u root -p password abcdef
注意,命令回車后會問你舊密碼,,輸入舊密碼123456之后命令完成,,密碼修改成功。
3.如果你的root現(xiàn)在有密碼了(123456),,那么修改密碼為abcdef的命令是:
mysqladmin -u root -p123456 password abcdef (注意-p 不要和后面的密碼分
開寫,,要寫在一起,不然會出錯,錯誤如下所示)
4.使用phpmyadmin,這是最簡單的了,,修改mysql庫的user表,,
不過別忘了使用PASSWORD函數(shù)。
忘記密碼:
下面我們提供了6種不同的修改mysql root用戶的密碼,,與增加mysql用戶的方法,。
方法一
使用phpmyadmin,這是最簡單的了,,修改mysql庫的user表,,
不過別忘了使用PASSWORD函數(shù)。
方法二
使用mysqladmin,,這是前面聲明的一個特例,。
mysqladmin -u root -p password mypasswd
輸入這個命令后,,需要輸入root的原密碼,然后root的密碼將改為mypasswd,。
把命令里的root改為你的用戶名,,你就可以改你自己的密碼了。
當(dāng)然如果你的mysqladmin連接不上mysql server,,或者你沒有辦法執(zhí)行mysqladmin,,
那么這種方法就是無效的。
而且mysqladmin無法把密碼清空,。
下面的方法都在mysql提示符下使用,,且必須有mysql的root權(quán)限:
方法三
mysql> INSERT INTO mysql.user (Host,User,Password)
VALUES('%','jeffrey',PASSWORD('biscuit'));
mysql> FLUSH PRIVILEGES
確切地說這是在增加一個用戶,用戶名為jeffrey,,密碼為biscuit,。
在《mysql中文參考手冊》里有這個例子,所以我也就寫出來了,。
注意要使用PASSWORD函數(shù),,然后還要使用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()函數(shù),
但是不需要使用FLUSH PRIVILEGES,。
方法六
使用GRANT ... IDENTIFIED BY語句
mysql> GRANT USAGE ON *.* TO jeffrey@"%" IDENTIFIED BY 'biscuit';
這里PASSWORD()函數(shù)是不必要的,,也不需要使用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 。