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

Mysql用戶創(chuàng)建以及權(quán)限賦予操作的實現(xiàn)

 更新時間:2023年10月10日 15:33:41   作者:有風(fēng)入弦  
在MySQL中,創(chuàng)建新用戶并為其授予權(quán)限是一項常見的操作,本文主要介紹了Mysql用戶創(chuàng)建以及權(quán)限賦予操作的實現(xiàn),具有一定的參考價值,感興趣的可以了解一下

mysql創(chuàng)建用戶, 并配置一個庫的所有權(quán)限

在MySQL中,創(chuàng)建用戶并為其授予某個庫的所有權(quán)限,可以按照以下步驟操作: 

1.登錄MySQL服務(wù)器。

mysql -u root -p

2.創(chuàng)建新用戶。

CREATE USER 'new_user'@'localhost' IDENTIFIED BY 'user_password';

其中,new_user是新用戶的名稱,localhost是該用戶的登錄主機(jī),user_password是該用戶的密碼。

其中: MySQL中的"localhost"和"%"都是用來指定MySQL允許訪問服務(wù)器的主機(jī)名。但是,它們之間存在一些重要的區(qū)別:

  • “localhost"只允許本地連接,而”%"允許所有IP地址都可以連接到服務(wù)器。
  • 在安全性方面,“localhost"比”%“更安全,因為它只允許本地用戶連接到MySQL服務(wù)器,而”%"可能會允許外部用戶連接,從而增加了安全風(fēng)險。
  • “localhost"是默認(rèn)的主機(jī)名,所以通常不需要指定,而”%"需要明確指定才能允許所有主機(jī)的連接。

綜上所述,“localhost"和”%“都有各自的優(yōu)點和缺點,具體使用應(yīng)根據(jù)具體情況和需要進(jìn)行選擇。如果只允許本地訪問,建議使用"localhost”,如果需要允許來自所有主機(jī)的訪問,則應(yīng)該使用"%"。

3.授予該用戶在數(shù)據(jù)庫中的所有權(quán)限。

GRANT ALL PRIVILEGES ON database_name.* TO 'new_user'@'localhost';
FLUSH PRIVILEGES;

在這個語句中,ALL PRIVILEGES授權(quán)了該用戶在指定數(shù)據(jù)庫中進(jìn)行所有操作的權(quán)限。database_name.*授權(quán)該用戶對指定數(shù)據(jù)庫的所有表和視圖都具有完全的權(quán)限。FLUSH PRIVILEGES命令用于刷新權(quán)限,以確保MySQL的權(quán)限系統(tǒng)已更新。

現(xiàn)在,新用戶已被創(chuàng)建并被授權(quán)對指定數(shù)據(jù)庫的所有表進(jìn)行所有操作。當(dāng)然,如果需要的話,可以調(diào)整授予的具體權(quán)限范圍。

3.1 權(quán)限的分類以及怎么給用戶賦予不同權(quán)限

MySQL有許多種權(quán)限,包括全局權(quán)限、數(shù)據(jù)庫級別權(quán)限、表級別權(quán)限、列級別權(quán)限等。在MySQL中,可以通過授權(quán)命令(grant)來給用戶不同的權(quán)限。

授權(quán)命令的語法如下:

GRANT privileges ON object TO 'user'@'localhost' [IDENTIFIED BY [PASSWORD] 'password']

其中,privileges表示授權(quán)給用戶的權(quán)限,object表示將權(quán)限授予的對象(比如database_name.*),user表示被授權(quán)的用戶,IDENTIFIED BY 'password’表示設(shè)置用戶密碼(這一步可以省略)。

MySQL中常見的權(quán)限包括:

  • ALL PRIVILEGES:擁有所有權(quán)限
  • ALTER:修改已經(jīng)存在的表結(jié)構(gòu),但不能修改表名稱和刪除表
  • CREATE:創(chuàng)建新的數(shù)據(jù)庫和表
  • DELETE:刪除表中的數(shù)據(jù)
  • DROP:刪除已經(jīng)存在的數(shù)據(jù)庫和表
  • INSERT:插入新數(shù)據(jù)到表中
  • SELECT:從表中選取數(shù)據(jù)
  • UPDATE:更新表中的數(shù)據(jù)

例如,通過以下命令給用戶’username’授予訪問’database_name’庫中所有表的SELECT和INSERT權(quán)限:

GRANT SELECT, INSERT ON database_name.* TO 'username'@'localhost';

4.顯示mysql所有用戶以及權(quán)限

在MySQL中,可以使用以下查詢語句來查看所有用戶及其權(quán)限:

SELECT user, host, authentication_string FROM mysql.user;

結(jié)果如下

該查詢語句返回三個列:user表示用戶名,host表示用戶所在的主機(jī),authentication_string表示該用戶的加密密碼或者密碼哈希值。

為了查看每個用戶的具體權(quán)限,可以使用以下語句:

SHOW GRANTS FOR 'user_name'@'host_name';

該語句將顯示指定用戶在特定主機(jī)上授予的權(quán)限。注意,密碼哈希值在授權(quán)語句中是不可見的。

執(zhí)行之后會出現(xiàn):

+-----------------------------------------------------------------------------------------------+
| Grants for user_name@host_name                                                                |
+-----------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'user_name'@'host_name' IDENTIFIED BY PASSWORD 'password_hash'             |
| GRANT SELECT, INSERT, UPDATE ON `testdb`.* TO 'user_name'@'host_name'                           |
| GRANT CREATE ON `sampledb`.* TO 'user_name'@'host_name'                                         |
+-----------------------------------------------------------------------------------------------+

例如,上述結(jié)果表明user_namehost_name上擁有以下權(quán)限:

  • 對所有的數(shù)據(jù)庫和所有的表都擁有 USAGE 權(quán)限
  • 對 testdb 庫下的所有表具有 SELECT、INSERT 和 UPDATE 權(quán)限
  • 對 sampledb 庫下的所有表具有 CREATE 權(quán)限

如果想查看所有用戶的權(quán)限,可以使用以下語句:

SELECT DISTINCT CONCAT('SHOW GRANTS FOR \'', user, '\'@\'', host, '\';') AS query FROM mysql.user;

該語句將為每個用戶構(gòu)建SHOW GRANTS語句,并將其作為查詢結(jié)果返回??梢詫⒉樵兘Y(jié)果拷貝到命令行中執(zhí)行,以查看每個用戶的具體權(quán)限。

到此這篇關(guān)于Mysql用戶創(chuàng)建以及權(quán)限賦予操作的實現(xiàn)的文章就介紹到這了,更多相關(guān)Mysql用戶創(chuàng)建及權(quán)限賦予內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • MySQL 8中新增的這三大索引 隱藏、降序、函數(shù)

    MySQL 8中新增的這三大索引 隱藏、降序、函數(shù)

    這篇文章主要介紹了MySQL 8.x版本中新增的三大索引 隱藏索引、降索引序、函數(shù)索引,如果文章對你有點幫助,小伙伴們點贊、收藏、評論、分享走起呀
    2021-09-09
  • MySql數(shù)據(jù)庫基礎(chǔ)之分組查詢詳解

    MySql數(shù)據(jù)庫基礎(chǔ)之分組查詢詳解

    這篇文章主要介紹了mysql按照時間分組查詢的語句,非常實用,sql語句簡單易懂,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-09-09
  • Mysql using使用詳解

    Mysql using使用詳解

    本文主要介紹了Mysql using使用詳解,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • MySQL正則表達(dá)式REGEXP使用詳解

    MySQL正則表達(dá)式REGEXP使用詳解

    MySQL中正則表達(dá)式通常被用來檢索或替換符合某個模式的文本內(nèi)容,根據(jù)指定的匹配模式匹配文中符合要求的特殊字符串,下面這篇文章主要給大家介紹了關(guān)于MySQL正則表達(dá)式REGEXP使用的相關(guān)資料,需要的朋友可以參考下
    2022-09-09
  • centOS安裝mysql5.7詳細(xì)教程

    centOS安裝mysql5.7詳細(xì)教程

    這篇文章主要為大家介紹了centOS安裝mysql5.7詳細(xì)教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • mysql如何將查詢結(jié)果插入到另一張表中

    mysql如何將查詢結(jié)果插入到另一張表中

    這篇文章主要介紹了mysql如何將查詢結(jié)果插入到另一張表中問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • CentOS 7中源碼安裝MySQL 5.7.6+詳細(xì)教程

    CentOS 7中源碼安裝MySQL 5.7.6+詳細(xì)教程

    最近在CentOS 7中源碼安裝MySQL 5.7.6+,發(fā)現(xiàn)MySQL5.7.6+以后的安裝方式真的與以前版本的MySQL安裝方式大大的不同呀。不自己安裝一把,你都不知道不同之處在哪,下面這篇文章是通過自己的安裝過程總結(jié)的一篇安裝教程,有需要的朋友們可以參考借鑒,下面來一起看看吧。
    2016-12-12
  • Windows10下mysql 8.0.19 winx64安裝教程及修改初始密碼

    Windows10下mysql 8.0.19 winx64安裝教程及修改初始密碼

    這篇文章主要為大家詳細(xì)介紹了Windows10下mysql 8.0.19 winx64安裝教程及修改初始密碼,文中安裝步驟介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • MySQL中create table as 與like的區(qū)別分析

    MySQL中create table as 與like的區(qū)別分析

    這篇文章主要介紹了MySQL中create table as 與like的區(qū)別,結(jié)合實例分析了二者在使用中的具體區(qū)別與主要用途,需要的朋友可以參考下
    2016-01-01
  • Last_Errno:?1062,Last_Error:?Error?Duplicate?entry

    Last_Errno:?1062,Last_Error:?Error?Duplicate?entry

    Last_Errno:?1062,Last_Error:?Error?Duplicate?entry?...?for?key?PRIMARY
    2014-02-02

最新評論