mysql新增使用者並授權
阿新 • • 發佈:2020-12-19
mysql 新增使用者並設定許可權
-
建立使用者
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
-
說明
username – 你將建立的使用者名稱 host – 指定該使用者在哪個主機上可以登陸,如果是本地使用者可用localhost, 如 果想讓該使用者可以從任意遠端主機登陸,可以使用萬用字元% password – 該使用者的登陸密碼,密碼可以為空,如果為空則該使用者可以不需要密碼登 陸伺服器
-
例子
CREATE USER 'javacui'@'localhost' IDENTIFIED BY '123456'; CREATE USER 'javacui'@'172.20.0.0/255.255.0.0' IDENDIFIED BY '123456'; CREATE USER 'javacui'@'%' IDENTIFIED BY '123456'; CREATE USER 'javacui'@'%' IDENTIFIED BY ''; CREATE USER 'javacui'@'%';
-
-
授權
GRANT privileges ON databasename.tablename TO 'username'@'host';
-
說明
privileges – 使用者的操作許可權,如SELECT , INSERT , UPDATE 等(詳細列表見該文最後面).如果要授予所 的許可權則使用ALL databasename – 資料庫名 tablename-表名,如果要授予該使用者對所有資料庫和表的相應操作許可權則可用* 表示, 如*.*
-
例子
GRANT SELECT, INSERT ON test.user TO 'javacui'@'%'; GRANT ALL ON *.* TO 'javacui'@'%';
-
-
設定與更改使用者密碼
SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');
若是當前使用者:
SET PASSWORD = PASSWORD("newpassword");
-
撤銷許可權
REVOKE privilege ON databasename.tablename FROM 'username'@'host';
例子:
REVOKE SELECT ON *.* FROM 'javacui'@'%';
假如你在給使用者’javacui’@'%’授權的時候是這樣的(或類似 的):GRANT SELECT ON test.user TO ‘javacui’@'%’, 則在使用 REVOKE SELECT ON .
相反,如果授權使用的是GRANT SELECT ON . TO ‘javacui’@'%’;則 REVOKE SELECT ON test.user FROM ‘javacui’@'%’;命令也不能撤銷該使用者對test資料庫中user表的 Select 許可權
具體資訊可以用命令SHOW GRANTS FOR ‘javacui’@'%’; 檢視
-
刪除使用者
DROP USER ‘username’@'host’;
-
重新整理資料庫
flush privileges;