1. 程式人生 > 實用技巧 >Mysql使用者許可權管理

Mysql使用者許可權管理

1. 檢視mysql使用者

select User,Host,authentication_string from mysql.user;

+------+--------------+-----------------------+
| User | Host         | authentication_string |
+------+--------------+-----------------------+
| root | localhost    |                       |
| root | b7d0cf7b6e2f |                       |
| root | 127.0.0.1    |                       |
| root | ::1          |                       |
|      | localhost    | NULL                  |
|      | b7d0cf7b6e2f | NULL                  |
+------+--------------+-----------------------+
  • 可以先檢視user表中的欄位,select自己想要的欄位資訊,一般有user,host,password(有些版本是authentication_string)

2. 增加使用者

 create user '新使用者名稱'@'localhost' identified by '密碼';
 # 允許所有ip連線
 create user '新使用者名稱'@'%' identified by '密碼';

3. 給新使用者賦予許可權

# 基本格式如下
grant all privileges on 資料庫名.表名 to '新使用者名稱'@'指定ip' identified by '新使用者密碼' ;
# 允許訪問所有資料庫下的所有表
grant all privileges on *.* to '新使用者名稱'@'指定ip' identified by '新使用者密碼' ;
# 指定資料庫下的指定表
grant all privileges on test.test to '新使用者名稱'@'指定ip' identified by '新使用者密碼' ;

4. 刪除使用者

DROP USER username@localhost;

5. 修改使用者許可權

#設定使用者擁有所有許可權也就是管理員
grant all privileges on *.* to '使用者名稱'@'指定ip' identified by '使用者密碼' WITH GRANT OPTION;
#擁有查詢許可權
grant select on *.* to '使用者名稱'@'指定ip' identified by '使用者密碼' WITH GRANT OPTION;
#其它操作許可權說明,select查詢 insert插入 delete刪除 update修改
#設定使用者擁有查詢插入的許可權
grant select,insert on *.* to '使用者名稱'@'指定ip' identified by '使用者密碼' WITH GRANT OPTION;
#取消使用者查詢的查詢許可權
REVOKE select ON what FROM '使用者名稱';

6. 修改後重新整理許可權

flush privileges;

7. mysql啟動命令及連線

# 啟動mysql
mysqld

# 連線mysql
mysql -uroot -p