MySQL中用户授权/删除授权的方法
用戶授權方法
你可以通過發(fā)出GRANT語句增加新用戶:
| ?代碼如下 | 復制代碼 |
| shell> mysql --user=root mysql mysql> GRANT ALL PRIVILEGES ON *.* TO monty@localhost IDENTIFIED BY 'something' WITH GRANT OPTION; mysql> GRANT ALL PRIVILEGES ON *.* TO monty@"%" IDENTIFIED BY 'something' WITH GRANT OPTION; mysql> GRANT RELOAD,PROCESS ON *.* TO admin@localhost; mysql> GRANT USAGE ON *.* TO dummy@localhost; | |
這些GRANT語句安裝3個新用戶
授權:
命令:
| ?代碼如下 | 復制代碼 |
| GRANT privileges ON databasename.tablename TO 'username'@'host' | |
說明: privileges - 用戶的操作權限,如SELECT , INSERT , UPDATE 等(詳細列表見該文最后面).如果要授予所的權限則使用ALL.;databasename - 數據庫名,tablename-表名,如果要授予該用戶對所有數據庫和表的相應操作權限則可用*表示, 如*.*.
例子:
| ?代碼如下 | 復制代碼 |
| GRANT SELECT, INSERT ON test.user TO 'pig'@'%'; GRANT ALL ON *.* TO 'pig'@'%'; | |
注意:用以上命令授權的用戶不能給其它用戶授權,如果想讓該用戶可以授權,用以下命令:
| ?代碼如下 | 復制代碼 |
| GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION; | |
三.設置與更改用戶密碼
命令:
| ?代碼如下 | 復制代碼 |
| SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword'); | |
如果是當前登陸用戶用
| ?代碼如下 | 復制代碼 |
| SET PASSWORD = PASSWORD("newpassword"); | |
例子:
| ?代碼如下 | 復制代碼 |
| SET PASSWORD FOR 'pig'@'%' = PASSWORD("123456"); | |
撤權并刪除用戶
要取消一個用戶的權限,使用REVOKE語句。REVOKE的語法非常類似于GRANT語句,除了TO用FROM取代并且沒有INDETIFED BY和WITH GRANT OPTION子句:
?
| ?代碼如下 | 復制代碼 |
| REVOKE privileges (columns) ON what FROM user | |
user部分必須匹配原來 GRANT語句的你想撤權的用戶的user部分。privileges部分不需匹配,你可以用GRANT語句授權,然后用REVOKE語句只撤銷部分權限。
REVOKE語句只刪除權限,而不刪除用戶。即使你撤銷了所有權限,在user表中的用戶記錄依然保留,這意味著用戶仍然可以連接服務器。要完全刪除一個用戶,你必須用一條Delete語句明確從user表中刪除用戶記錄:
| ?代碼如下 | 復制代碼 |
| %mysql -u root mysqlmysql>Delete FROM user ->Where User="user_name" and Host="host_name";mysql>FLUSH PRIVILEGES; | |
Delete語句刪除用戶記錄,而FLUSH語句告訴服務器重載授權表。(當你使用GRANT和REVOKE語句時,表自動重載,而你直接修改授權表時不是。)
?
你可能感興趣的文章- mysql 創(chuàng)建用戶與授權、修改密碼
- MySql 5.X創(chuàng)建用戶并授權方法
總結
以上是生活随笔為你收集整理的MySQL中用户授权/删除授权的方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: jQuery实现右上角点击后滑下来的竖向
- 下一篇: 与众不同 windows phone (