GRANT
用於為使用者授權。
GRANT
priv_type [(column_list)]
[, priv_type [(column_list)]] ...
ON priv_level
TO user [auth_option]
[WITH {GRANT OPTION}]
參數
priv_type
:權限類別型,詳情請參見資料庫許可權模型。column_list
:選擇性參數,當priv_type
為SELECT
時,可以填寫表中的列名,針對具體列授予SELECT
授權。priv_level
:被授權對象層級。*.*
:整個叢集層級的許可權。db_name.*
:資料庫層級的許可權。db_name.table_name
或者table_name
:表層級的許可權。
注意事項
通過GRANT
授權使用者時,您需要擁有GRANT OPTION
許可權。
樣本
為帳號account2授予叢集層級的
all
許可權。GRANT all ON *.* TO 'account2';
為帳號account3授予資料庫層級的
all
許可權。GRANT all ON adb_demo.* TO 'account3';
可以通過
GRANT
建立並授權帳號。例如,建立全域DML帳號。
GRANT insert,select,update,delete on *.* to 'test'@'%' identified by 'Testpassword1';
建立資料庫層級DML帳號。
GRANT insert,select,update,delete on adb_demo.* to 'test123' identified by 'Testpassword123';
建立帳號並授予列層級的
SELECT
許可權。GRANT select (customer_id, sex) ON customer TO 'test321' identified by 'Testpassword321';