1伞广, 創(chuàng)建 用戶
CREATE USER '用戶名'@'可以登陸此賬戶的ip地址' IDENTIFIED BY '密碼';
這里我創(chuàng)建了一個用戶名為suny鹿驼,登陸地址為本機地址,密碼是5201314的賬戶
ip地址那里指定該用戶在哪個主機上可以登陸,本地用戶可直接用localhost, 如果想讓該用戶可以從任意遠程主機登陸,可以使用通配符%,當然你也可以填寫一個ip地址,隨你的情況而定。
2.賬戶權限操作:
GRANT 指定該用戶擁有的操作權限 ON 數據庫名字.數據表名 TO '用戶名'@'允許登陸的ip地址' ;
這里給用戶名為suny的用戶賦予了查詢(select)的權限奋蔚,它只允許查詢在test數據庫下score表的數據。操作權限常用的分為**SELECT**(查詢數據) , **INSERT**(插入數據) , **UPDATE**(更新數據) 物臂,**DELETE**(刪除),**ALL**(賦予所有操作權限)
在這里如果你想讓這個用戶可以操作所有的表的話旺拉,你應該給它*來操作所有表。把 數據庫名字.表名 換成 *.* 就可以讓這個用戶可以在設置的權限內操作所有數據庫棵磷,例如你給一個用戶select(查詢)的權限的話蛾狗,這個用戶就能查詢所有數據庫里面的數據,但是請注意設置了select權限仪媒,所以只是能查詢所有數據庫的數據沉桌,而不能做增刪改之類的操作
授權其他賬戶de權限
GRANT 指定該用戶擁有的操作權限 ON 數據庫名字.數據表名 TO '用戶名'@'允許登陸的ip地址' WITH GRANT OPTION
后面添加了 WITH GRANT OPTION 這個權限谢鹊,意思可以理解為授予用戶可以設置其他用戶權限的權限。
3.更改用戶的密碼
?自己修改自己的密碼
你需要登陸你自己的賬戶再執(zhí)行這條命令
SET PASSWORD = PASSWORD("新的密碼");
?修改別的賬戶的密碼
SET PASSWORD FOR '想修改密碼的用戶名'@'登陸的ip地址' = PASSWORD('設置新的密碼');
4.撤銷用戶的操作權限
REVOKE 要撤銷的操作權限 ON 數據庫名.數據庫表名 FROM '用戶名'@'登陸的ip地址';
這里操作權限跟賦予的操作權限是一樣的留凭,操作權限常用的分為**SELECT**(查詢數據) , **INSERT**(插入數據) , **UPDATE**(更新數據) 佃扼,**DELETE**(刪除)等等,當我們執(zhí)行撤銷命令時可能會碰到以下的情況:你賦予權限的時候是這樣的
?第一種情況:
?GRANT SELECT ON test.user TO 'suny'@'%',執(zhí)行往后suny用戶擁有select(查詢)test下的user表的權限蔼夜,然后想要撤銷它權限的話兼耀,執(zhí)行REVOKE SELECT ON *.* FROM 'suny'@'%';并不能撤銷它的權限。
?第二種情況:
?REVOKE SELECT ON *.* FROM 'suny'@'%';執(zhí)行往后suny用戶擁有select(查詢)test下的user表的權限求冷,然后想要撤銷它權限的話瘤运,執(zhí)行GRANT SELECT ON test.user TO 'suny'@'%', 也不能撤銷它的權限。
5.刪除用戶
看某用戶行為不滿意的時候匠题,要刪了它怎么辦拯坟?
DROP USER '用戶名'@'登陸ip地址';