tft每日頭條

 > 科技

 > mysql 數據庫權限

mysql 數據庫權限

科技 更新时间:2024-08-23 04:16:28

簡介:在MySQL數據庫中,為了保證數據的安全性,數據管理員需要根據需要創建賬戶,并為每個賬戶賦予不同的權限,以滿足不同用戶的需求。

本文主要介紹Mysql數據庫的賬戶密碼及權限管理,并通過實際操作進行檢驗。詳細内容請參考下文。

一、訪問Mysql

1、登陸linux系統

mysql 數據庫權限(Mysql數據庫操作指引)1

2、查看mysql服務

執行指令 # systemctl status mysqld

mysql 數據庫權限(Mysql數據庫操作指引)2

二、Mysql賬戶管理

1、查看當前可登錄數據庫的用戶

mysql> select host,user from user;

mysql 數據庫權限(Mysql數據庫操作指引)3

2、創建賬戶

mysql> create user jason@'%' identified by '1qaz!QAZ';

mysql 數據庫權限(Mysql數據庫操作指引)4

mysql 數據庫權限(Mysql數據庫操作指引)5

備注:username是用戶名,host用于指定登錄的主機,如果是本地用戶用localhost,如果需要遠程連接可以指定ip,或者使用“%”可以從任意主機登錄。

3、修改賬戶

mysql> update user set user='jasontang' where user='jason';

mysql 數據庫權限(Mysql數據庫操作指引)6

4、禁用賬戶

mysql> alter user jasontang account lock;

mysql 數據庫權限(Mysql數據庫操作指引)7

注意:

禁用賬戶過程提示密碼策略問題,可以修改密碼策略。如下圖

mysql 數據庫權限(Mysql數據庫操作指引)8

查看 mysql 初始的密碼策略

mysql 數據庫權限(Mysql數據庫操作指引)9

修改密碼策略,設置 validate_password_policy 的全局參數為LOW。

mysql 數據庫權限(Mysql數據庫操作指引)10

5、啟用賬戶

mysql> alter user jasontang account unlock;

mysql 數據庫權限(Mysql數據庫操作指引)11

6、删除賬戶

mysql> drop user jasontang;

mysql 數據庫權限(Mysql數據庫操作指引)12

三、Mysql賬戶密碼管理

1、修改賬戶密碼

mysql> alter user test identified by '1qaz!QAZ';

mysql 數據庫權限(Mysql數據庫操作指引)13

2、設置密碼有效期

mysql> alter user test password expire interval 200 day;

mysql 數據庫權限(Mysql數據庫操作指引)14

mysql 數據庫權限(Mysql數據庫操作指引)15

3、禁用密碼過期功能

mysql> alter user test password expire never;

mysql 數據庫權限(Mysql數據庫操作指引)16

4、恢複默認用戶密碼策略

mysql> alter user test password expire default;

mysql 數據庫權限(Mysql數據庫操作指引)17

四、Mysql賬戶權限管理

在MySQL中提供了一個GRANT語句為用戶授權。GRANT語句語法格式如下:

GRANT privileges [(columns)] [,privileges[(columns)]] ON database.table TO 'username'@'hostname' [IDENTIFIED BY [PASSWORD] ''password] [,'username'@'hostname' [IDENTIFIED BY [PASSWORD] 'password']]... [WITH with_option [with_option]...]

說明:上述語法格式中,privileges表示權限類型,columns參數表示權限作用于某一列,該參數可以省略不寫,此時權限作用于整個表,username表示用戶名,hostname表示主機名,identified by參數為用戶設置密碼,PASSWORD參數為關鍵字,password為用戶的密碼。WITH關鍵字後面可以帶有多個參數with_option,這個參數有5個取值,具體如下:GRANT OPTION将自己的權限授予其他用戶;MAX_QUERIES_PER_HOUR count設置每小時最多可以執行多少次(count)查詢;MAX_UPDATES_PER_HOUT count設置每小時最多可以執行多少次更新;MAX_CONNECTIONS_PER_HOUR count設置每小時最大的連接數量;MAX_USER_CONNECTIONS設置每個用戶最多可以同時建立連接的數量。

GRANT命令的常見格式:

命令解析

作用

GRANT 權限 ON 數據庫.表單名稱 TO 賬戶名@主機名

對某個特定數據庫中的特定表單賦權

GRANT 權限 ON 數據庫.* TO 賬戶名@主機名

對某特定數據庫中的所有表單賦權

GRANT 權限 ON *.* TO 賬戶名@主機名

對所有數據庫及其所有表單賦權

GRANT 權限1,權限2 ON 數據庫.* TO 賬戶名@主機名

對某數據庫的所有表單賦多個權

GRANT ALL PRIVILEGES ON *.* TO 賬戶名@主機名

對全部數據及表單賦予所有權限

1、查看當前用戶的權限

mysql> show grants;

mysql 數據庫權限(Mysql數據庫操作指引)18

2、查看特定用戶的權限

mysql> show grants for test;

mysql 數據庫權限(Mysql數據庫操作指引)19

3、給用戶添加某權限

mysql> grant index on *.* to test;

mysql 數據庫權限(Mysql數據庫操作指引)20

備注:賦予多項權限用逗号隔開。

4、删除用戶某項權限

mysql> revoke delete on *.* from test;

mysql 數據庫權限(Mysql數據庫操作指引)21

備注:同時删除所有的權限用all。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved