欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MySQL8.0創(chuàng)建用戶和權(quán)限控制示例詳解

 更新時間:2023年07月28日 10:04:38   作者:Kason  
這篇文章主要為大家介紹了MySQL8.0創(chuàng)建用戶和權(quán)限控制實現(xiàn)過程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

一. 創(chuàng)建用戶

CREATE USER 'username'@'host' IDENTIFIED BY 'password';

username:你將創(chuàng)建的用戶名

host:指定該用戶在哪個主機上可以登陸,從本地登錄填localhost,任意主機登陸填通配符%

password:登陸密碼,密碼可以為空,如果為空則該用戶可以不需要密碼也可登陸

例如:

CREATE USER 'one'@'localhost' IDENTIFIED BY '123456';
CREATE USER 'one'@'192.168.1.101' IDENDIFIED BY '123456';
CREATE USER 'one'@'%' IDENTIFIED BY '123456';
CREATE USER 'one'@'%' IDENTIFIED BY '';
CREATE USER 'one'@'%';

二. 授權(quán)

GRANT privileges ON databasename.tablename TO 'username'@'host'

說明:

privileges:用戶的操作權(quán)限,如SELECT,INSERT,UPDATE等,如果要授予所的權(quán)限則使用ALL

databasename:數(shù)據(jù)庫名,如果授予整個數(shù)據(jù)庫權(quán)限填databasename.*

tablename:表名,如果要授予該用戶對所有數(shù)據(jù)庫和表的相應(yīng)操作權(quán)限則可用*表示,如*.*

例子:

GRANT SELECT, INSERT ON test.user TO 'one'@'%';
GRANT SELECT, INSERT ON test.*TO 'one'@'%';
GRANT ALL ON *.* TO 'one'@'%';

用以上命令授權(quán)的用戶不能給其它用戶授權(quán),如果想讓該用戶可以授權(quán),用以下命令:

GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;

三.設(shè)置與更改用戶密碼

SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');

如果是當(dāng)前登陸用戶用:

SET PASSWORD = PASSWORD("newpassword");

例子:

SET PASSWORD FOR 'one'@'%' = PASSWORD("123456");

四. 撤銷用戶權(quán)限

REVOKE privilege ON databasename.tablename FROM 'username'@'host';

相關(guān)說明:

privilege, databasename, tablename:同授權(quán)部分

例子:

REVOKE SELECT ON *.* FROM 'one'@'%';

注意:

假如你在給用戶'one'@'%'授權(quán)的時候是這樣的(或類似的):

GRANT SELECT ON test.user TO 'one'@'%',

則在使用

REVOKE SELECT ON *.* FROM 'one'@'%';

命令并不能撤銷該用戶對test數(shù)據(jù)庫中user表的SELECT 操作。

相反,如果授權(quán)使用的是

GRANT SELECT ON *.* TO 'one'@'%';
則
REVOKE SELECT ON test.user FROM 'one'@'%';

命令也不能撤銷該用戶對test數(shù)據(jù)庫中user表的Select權(quán)限。

具體信息可以用如下查看。

SHOW GRANTS FOR 'one'@'%';

五.刪除用戶

DROP USER 'username'@'host';

六.遇到的問題

創(chuàng)建完成后用Navicat創(chuàng)建表遇到了報錯:

Access denied; you need (at least one of) the PROCESS privilege(s)

根據(jù)提示是缺少PROCESS權(quán)限,賦予后問題解決

mysql> grant process on MyDB.* to test;
ERROR 1221 (HY000): Incorrect usage of DB GRANT and GLOBAL PRIVILEGES

第一次授予這樣的權(quán)限,錯誤原因是process權(quán)限是一個全局權(quán)限,不可以指定在某一個庫上(個人測試庫為MyDB),所以,把授權(quán)語句更改為如下即可:

mysql> grant process on *.* to test;
Query OK, 0 rows affected (0.01 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)

如果不給擁有授予PROESS權(quán)限 ,show processlist命令只能看到當(dāng)前用戶的線程,而授予了PROCESS權(quán)限后,使用show processlist就能看到所有用戶的線程。官方文檔的介紹如下:

SHOW PROCESSLIST shows you which threads are running. 
You can also get this information from the INFORMATION_SCHEMA PROCESSLIST table 
or the mysqladmin processlist command. 
If you have the PROCESS privilege, you can see all threads. Otherwise, 
you can see only your own threads (that is, threads associated with the 
MySQL account that you are using). If you do not use the FULL keyword,
 only the first 100 characters of each statement are shown in the Info field.

七.撤銷用戶的權(quán)限

REVOKE ALL ON test.* FROM 'username'@'host';

以上就是MySQL8.0創(chuàng)建用戶和權(quán)限控制示例詳解的詳細內(nèi)容,更多關(guān)于MySQL創(chuàng)建用戶權(quán)限控制的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • MySQL的Redo Log數(shù)據(jù)恢復(fù)核心機制面試精講

    MySQL的Redo Log數(shù)據(jù)恢復(fù)核心機制面試精講

    這篇文章主要為大家介紹了MySQL的Redo Log數(shù)據(jù)恢復(fù)核心機制面試精講,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-10-10
  • MYSQL中的json數(shù)據(jù)操作代碼

    MYSQL中的json數(shù)據(jù)操作代碼

    這篇文章主要介紹了MYSQL中的json數(shù)據(jù)操作,主要包括基礎(chǔ)查詢操作,JSON函數(shù)操作,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-09-09
  • MySQL為什么臨時表可以重名

    MySQL為什么臨時表可以重名

    本文主要介紹了MySQL為什么臨時表可以重名,有的人可能會認為,臨時表就是內(nèi)存表,其實是完全不同的,感興趣的可以一起來了解一下
    2022-03-03
  • MySQL備份原理詳解

    MySQL備份原理詳解

    備份是數(shù)據(jù)安全的最后一道防線,對于任何數(shù)據(jù)丟失的場景,備份雖然不一定能恢復(fù)百分之百的數(shù)據(jù)(取決于備份周期),但至少能將損失降到最低
    2016-05-05
  • 重新restore了mysql到另一臺機器上后mysql 編碼問題報錯

    重新restore了mysql到另一臺機器上后mysql 編碼問題報錯

    重新restore了mysql到另一臺機器上,今天新寫了一個app,發(fā)現(xiàn)在admin界面下一添加漢字就會報錯
    2011-12-12
  • MySQL select、insert、update批量操作語句代碼實例

    MySQL select、insert、update批量操作語句代碼實例

    這篇文章主要介紹了MySQL select、insert、update批量操作語句代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-03-03
  • MySQL中Distinct和Group By語句的基本使用教程

    MySQL中Distinct和Group By語句的基本使用教程

    這篇文章主要介紹了MySQL中Distinct和Group By語句的基本使用教程,這里主要是針對查詢結(jié)果去重的用法,需要的朋友可以參考下
    2015-12-12
  • 詳解MySQL 5.7 MGR單主確定主節(jié)點方法

    詳解MySQL 5.7 MGR單主確定主節(jié)點方法

    這篇文章主要介紹了詳解MySQL 5.7 MGR單主確定主節(jié)點方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • Win10系統(tǒng)下MySQL8.0.16 壓縮版下載與安裝教程圖解

    Win10系統(tǒng)下MySQL8.0.16 壓縮版下載與安裝教程圖解

    這篇文章主要介紹了Win10系統(tǒng)下MySQL8.0.16 壓縮版下載與安裝教程圖解,本文圖文并茂給大家介紹的非常詳細,具有一定的參考解決價值,需要的朋友可以參考下
    2019-06-06
  • MySQL約束和表的復(fù)雜查詢操作大全

    MySQL約束和表的復(fù)雜查詢操作大全

    約束是關(guān)系型數(shù)據(jù)庫的一個重要功能,?添加到庫中的數(shù)據(jù)需要保證其的正確性;?約束,?就是讓數(shù)據(jù)庫幫助程序員更好的檢查數(shù)據(jù)是否正確.,這篇文章主要介紹了MySQL約束和表的復(fù)雜查詢操作,需要的朋友可以參考下
    2022-11-11

最新評論