MySQL是一套開源的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)。在MySQL中,所有權(quán)限是由授權(quán)管理的,通過授權(quán)用戶,可以讓用戶進(jìn)行數(shù)據(jù)庫(kù)的增刪改查操作。下面我們來講一下MySQL的所有權(quán)限如何進(jìn)行授權(quán)。
GRANT privileges ON databasename.tablename TO ‘mysqlusername’@‘localhost’ IDENTIFIED BY ‘mysqlpassword’;
上述代碼是實(shí)現(xiàn)MySQL授權(quán)的基本語(yǔ)句,其中,databasename表示數(shù)據(jù)庫(kù)名,tablename表示表名,mysqlusername表示授權(quán)的用戶,localhost表示對(duì)該用戶進(jìn)行授權(quán)的主機(jī),mysqlpassword表示用戶密碼,priviliges表示授權(quán)類別。
在MySQL中,授權(quán)類別分為全局權(quán)限、數(shù)據(jù)庫(kù)級(jí)權(quán)限和表級(jí)權(quán)限,下面我們分別來介紹這三種權(quán)限。
1、全局權(quán)限
全局權(quán)限是指授權(quán)用戶對(duì)整個(gè)MySQL服務(wù)器的授權(quán),包括所有數(shù)據(jù)庫(kù)和表。全局權(quán)限的授權(quán)語(yǔ)句為:
GRANT privileges ON *.* TO ‘mysqlusername’@‘localhost’ IDENTIFIED BY ‘mysqlpassword’;
其中,*.*表示所有數(shù)據(jù)庫(kù)和表,‘mysqlusername’@‘localhost’表示授權(quán)用戶及主機(jī)名。
2、數(shù)據(jù)庫(kù)級(jí)權(quán)限
數(shù)據(jù)庫(kù)級(jí)權(quán)限是指授權(quán)用戶對(duì)特定數(shù)據(jù)庫(kù)的授權(quán),包括數(shù)據(jù)庫(kù)下的所有表。數(shù)據(jù)庫(kù)級(jí)權(quán)限的授權(quán)語(yǔ)句為:
GRANT privileges ON databasename.* TO ‘mysqlusername’@‘localhost’ IDENTIFIED BY ‘mysqlpassword’;
其中,databasename.*表示databasename下的所有表,‘mysqlusername’@‘localhost’表示授權(quán)用戶及主機(jī)名。
3、表級(jí)權(quán)限
表級(jí)權(quán)限是指授權(quán)用戶對(duì)特定表格的授權(quán),只能訪問該表格的數(shù)據(jù)。表級(jí)權(quán)限的授權(quán)語(yǔ)句為:
GRANT privileges ON databasename.tablename TO ‘mysqlusername’@‘localhost’ IDENTIFIED BY ‘mysqlpassword’;
其中,databasename.tablename表示特定表格,‘mysqlusername’@‘localhost’表示授權(quán)用戶及主機(jī)名。
以上就是MySQL的所有權(quán)限的授權(quán)方法,分別包括全局權(quán)限、數(shù)據(jù)庫(kù)級(jí)權(quán)限和表級(jí)權(quán)限。根據(jù)實(shí)際需求進(jìn)行相應(yīng)授權(quán)即可實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的安全管理。