MySQL使用者許可權管理

2021-07-14 09:41:25 字數 2736 閱讀 3154

使用者許可權管理主要有以下作用:

1. 可以限制使用者訪問哪些庫、哪些表

2. 可以限制使用者對哪些表執行select、create、delete、delete、alter等操作

3. 可以限制使用者登入的ip或網域名稱

4. 可以限制使用者自己的許可權是否可以授權給別的使用者

mysql> grant all privileges on*.

*to'yangxin'@'%' identified by

'yangxin123456'

with grant option;

可以使用grant給使用者新增許可權,許可權會自動疊加,不會覆蓋之前授予的許可權,比如你先給使用者新增乙個select許可權,後來又給使用者新增了乙個insert許可權,那麼該使用者就同時擁有了select和insert許可權。

使用者詳情的許可權列表請參考mysql官網說明:

刪除yangxin這個使用者的create許可權,該使用者將不能建立資料庫和表。

mysql> revoke create

on *.* from

'yangxin@localhost';

mysql> flush privileges;

mysql> select host,user from user;

+---------------+---------+

| host | user |

+---------------+---------+

| % | root |

| % | test3 |

| % | yx |

| 192.168.0.% | root |

| 192.168.0.% | test2 |

| 192.168.0.109 | test |

| ::1 | yangxin |

| localhost | yangxin |

+---------------+---------+

8 rows in set (0.00 sec)

mysql> drop user 'yangxin'@'localhost';

shell> rename user 'test3'

@'%' to 'test1'

@'%';

mysql> use mysql;

# mysql5.7之前

mysql> update user set password=password('123456') where user='root';

# mysql5.7之後

mysql> update user set authentication_string=password('123456') where user='root';

mysql> flush privileges;

mysql> set password for

'root'@'localhost'=password('123456');

語法:mysqladmin -u使用者名稱 -p舊的密碼 password 新密碼

mysql> mysqladmin -uroot

-p123456 password 1234abcd

注意:mysqladmin位於mysql安裝目錄的bin目錄下

修改my.cnf,在mysqld配置節點新增skip-grant-tables配置

[mysqld]

skip-grant-tables

shell> service mysqld restart
此時在終端用mysql命令登入時不需要使用者密碼,然後按照修改密碼的第一種方式將密碼修改即可。

注意:mysql庫的user表,5.7以下版本密碼欄位為password,5.7以上版本密碼欄位為authentication_string

將my.cnf中mysqld節點的skip-grant-tables配置刪除,然後重新啟動服務即可。

MySQL使用者許可權管理

網際網路文件整理 mysql的使用者管理,指的是哪個使用者可以連線伺服器,從 連線,連線後能做什麼.mysql中grant語句建立mysql使用者並指定其許可權,而revoke語句刪除許可權。兩條語句實現了mysql資料庫的使用者管理,並提供與直接操作這些表的內容不同的另一種方法。create和re...

mysql 使用者許可權管理

mysql 中顯示所有使用者 select distinct concat user user,host,as query from mysql.user 檢視乙個使用者的許可權 show grants for company 為使用者授權 grant select on b2b search.to...

mysql 使用者許可權管理

root使用者登入 mysql uroot p x 切換到mysql use mysql 建立資料庫 create database db 建立使用者 create user username host identified by password host預設值為 修改密碼 update user...