當你初次在機器上安裝完MySQL時,你可以匿名進行訪問數(shù)據(jù)庫或者以不帶口令的root身份進入數(shù)據(jù)庫。假如你是一個管理員, 你還要進行一些用戶的建立及授權(quán),這又涉及到設(shè)置密碼的問題.下面我們就討論一下如何設(shè)置密碼:
首先我們應(yīng)該知道Mysql數(shù)據(jù)庫中的口令存儲必須用password()函數(shù)加密它.因為在user表中是以加密形式存儲口令,而不是作為純文本.如果你沒有加密,直接在數(shù)據(jù)庫中執(zhí)行以下語句:
use mysql
insert into user (host,user,password) values
('%','user_name','your password');
flush privileges;
相信結(jié)果不會讓你滿意.因為服務(wù)器比較的是加密的值,所以服務(wù)器連接一定失敗.這里需要說明的是flush privileges;這條
命令起到了重新加載授權(quán)表.你也可以在shell下直接用mysqladmin -u root reload或者mysqladmin -u root flush-privileges來
實現(xiàn)重載授權(quán)表.
在MySQL環(huán)境下,你可以使用以下語句進行設(shè)置密碼:
1.insert into user(host,user,password)
values('%','user_name',password("your password");
2.set password for user_name = password("your password")
以上兩種方法都必須進行重載授權(quán)表.
3.當然你也可以在創(chuàng)建一個用戶時直接設(shè)置密碼,grant語句將為你自動加密口令.
示例:
grant all on *.* to mailto:user_name@
identified by "your password";
另外大家也可以在shell環(huán)境下用mysqladmin程序來設(shè)置密碼。
示例:
mysqladmin -u root password "your password"
更多信息請查看IT技術(shù)專欄