方法一:grant命令創建用戶並授權(針對只修改權限)
grant命令簡單語法如下:
grant all privileges on dbname.* to username@localhost identified by 'passwd';
列表說明如下:
說明:上述命令是授權localhost主機上通過用戶username管理dbname數據庫的所有權限,密碼是passwd。其中,username,dbname,passwd可根據業務的情況修改。
舉例:創建yuwen用戶,對test庫具備所有權限,允許從localhost主機登陸管理數據庫,密碼為yuwen。
首先,查看下當前數據庫用戶情況:
mysql> select user,host from mysql.user;
然后,執行如下授權命令:
mysql> grant all on test.* to yuwen@localhost identified by 'yuwen';
最后,查看當前數據庫用戶情況:
mysql> select user,host from mysql.user;
查看授權用戶具體權限:
mysql>show grants for yuwen@`%`;(或者mysql> show grants for yuwen@`%` \G)
說明:可以看到默認權限是usage,即連接權限,后面又增加了all權限!
==============================================================================
方法二:create和grant配合法(創建用戶並修改權限)
首先創建用戶username及密碼passwd,授權主機localhost。
語法:create user username@localhost identified by 'passwd';
如:創建用戶utest及密碼test,授權主機localhost。
mysql> create user utest@localhost identified by 'utest';
然后授權localhost主機上通過用戶username管理dbname數據庫的所有權限,無需密碼。
語法:grant all on dbname.* to username@localhost;
如:授權localhost主機上utest管理test數據庫的所有權限。
mysql> grant all on test.* to utest@localhost;
查看當前用戶信息:
mysql> select user,host from mysql.user;
查看utest具體權限:
mysql> show grants for utest@localhost;(或者mysql> show grants for utest@localhost\G)
mysql刷新權限命令:FLUSH PRIVILEGES;(一般用於數據庫用戶信息更新后)