一、root用戶密碼的維護:
由於安裝MySQL完後,MySQL會自動提供一個不帶密碼的root用戶,為了安全起見給root設置密碼:
#mysqladmin -u root password 123 (123為密碼,也可以寫成:'123'或"123") ;
設置密碼後登入時就不能直接輸入mysql了,必須跟些參數了,如下:
[root@localhost ~]# mysql -u root -p (-u 後跟登入的用戶名,-p 提示要密碼登入)
Enter password:(輸入密碼)
修改密碼:
[root@localhost ~] #mysqladmin -u root -p password 123456 (password 後跟的是要更新的新密碼)
Enter password:(輸入原始密碼,回車即可)
二、其他用戶的增加和刪除:
以root用戶登入,在mysql中有一張mysql.user表是存儲MySQL中所有用戶的信息表,所以可以直接增加刪除這個表的記錄就可增加和刪除用戶;
1.添加用戶(有兩種形式):
A.mysql> grant all on *.* to yushan@"%" identified by "123" ;
mysql>flush privileges; (刷新系統權限表)
(執行完會在mysql.user表插入一條記錄,all表示-www.2cto.com-所有權限(包括增 刪 改 查等權限), *.* 表示所有數據庫,yushan為添加的用戶名,123為密碼,%為匹配的所有主機,上面的信息都可以指定如grant select,update on db.* to yushan@localhost identified by '123";)
B.直接對mysql.user添加一條記錄
mysql> insert into mysql.user(Host,User,Password) values("localhost","yusuhan",password("123"));
mysql>flush privileges;
這樣就創建了一個名為:yushan 密碼為:123 (密碼是經過加密的 ) 的用戶,不過這樣沒有權限因為只添加了三個字段,也可通過grant添加權限:
mysql>grant all on *.* to yushan@localhost identified by '123";
mysql>flush privileges;(刷新系統權限表)
(這種好像有點啰嗦了。直接用grant不久得了)
添加完用戶 如果要遠程登入MySQL,必須跟上主機Ip 如下:
[root@localhost ~]# mysql -u yushan -p -h 192.168.59.123
Enter password:(輸入密碼)
2.刪除用戶 :
mysql>delete from mysql.user where user ='yushan' ;
mysql>flush privileges; (刷新系統權限表)
其他用戶的密碼修改與root的一樣,在這裡無論是添加或是刪除操作後必須來個flush privileges;這樣才能起作用特別是刪除用戶後,如果未執行,被刪除的用戶還可登入,以上都是在MySQL root用戶下操作,為了MySQL的安全,應該給用戶指定相應的權限
作者 天空CppBlog.com