DCL操作
mysql數(shù)據(jù)庫權(quán)限問題:
- root:
即 超級管理員,擁有所有權(quán)限(可以干任何事情)- 權(quán)限賬戶:
只擁有部分權(quán)限(CURD)
例如:只能操作某個數(shù)據(jù)庫的某張表
那么,在這里,本人來講解下 權(quán)限的種類:
種類:
- select
- insert
- delete
- update
- drop
- create
- all
(表示以上權(quán)限都擁有)
那么,現(xiàn)在本人來講解下有關(guān)DCL的相關(guān)語句和函數(shù):
相關(guān)語句和函數(shù):
1. 查詢用戶密碼:
Select password('root');
2. 查詢數(shù)據(jù)庫用戶:
SELECT * FROM USER;
3. 密碼加密:
與Java中的hashcode()一樣一樣,屬于單向加密
md5(要加密的字符串);
4. 修改密碼:
UPDATE USER SET PASSWORD=PASSWORD('密碼字符串') WHERE USER='管理員用戶名';
5. 分配權(quán)限賬戶:
-
方式1:
語法:
GRANT 權(quán)限 ON 數(shù)據(jù)庫名.表名 TO '用戶名'@'localhost' IDENTIFIED BY '密碼';
說明:
- @ 后面可以是localhost 也可以是ip
也可以給%
%代表任意一臺計(jì)算機(jī)都可以連接上來- 分配多個權(quán)限,用逗號隔開
例如:
GRANT SELECT,DELETE ON mydb.employee TO 'eric'@'localhost' IDENTIFIED BY 'youzg666';
-
方式2:
語法:
INSERT INTO USER (HOST, USER, PASSWORD, select_priv, insert_priv, ...) VALUES ('localhost', '用戶名', PASSWORD('密碼'), '權(quán)限是否分配標(biāo)記', '權(quán)限是否分配標(biāo)記', ...);
在這里,本人對以上語法做一下說明:
說明:
上述語法中的 權(quán)限是否分配標(biāo)記 取值:
Y:分配該權(quán)限
N:不分配該權(quán)限
例如:
INSERT INTO USER (HOST, USER, PASSWORD, select_priv, insert_priv, update_priv) VALUES ('localhost', 'guest', PASSWORD('guest123'), 'Y', 'Y', 'Y');
6. 刪除用戶:
語法:
Delete FROM user Where User='用戶名' and Host='localhost';
例如:
Delete FROM user Where User='eric' and Host='localhost';
那么,本篇博文的知識點(diǎn)在這里就講解完畢了。
(請觀看本人博文 —— 《數(shù)據(jù)庫 —— 專欄總集篇》)