注意:當(dāng)我們指定MySQL數(shù)據(jù)庫用戶的時候,如果我們不顯示的指定用戶的host網(wǎng)段,則默認(rèn)使用%來代替 。所以,我們看到我們輸入的是'zhangsanfeng'但是提示的卻是'zhangsanfeng'@'%' 。
user的指定
當(dāng)我們修改一個用戶的信息的時候,我們需要指定用戶的名稱 。這個名稱,不僅僅使我們平時登錄數(shù)據(jù)庫的時候,輸入的用戶的名字,還有一個隱含的部分就是用戶登錄的host網(wǎng)段,這個網(wǎng)段表示只允許該用戶通過這個網(wǎng)段登錄,如果用戶不在這個定義的網(wǎng)段內(nèi),即便是用戶名和密碼正確,也不能爭取的登錄 。
下面的創(chuàng)建用戶是兩個不同的用戶 。
create user 'zhangsanfeng'@'10.10.10.11' identified by '123456';
create user 'zhangsanfeng'@'192.168.1.100' identified by 'zhangsanfeng';
上面的兩個用戶中,分別表示如下:
zhangsanfeng只允許在IP地址為10.10.10.11的主機(jī)上用密碼123456登錄 。如果它在IP地址為192.168.1.100的主機(jī)上用密碼123456是不能登錄成功的 。zhangsanfeng只允許在IP地址為192.168.1.100的主機(jī)上用密碼zhangsanfeng登錄 。如果它在IP地址為10.10.10.11的主機(jī)上用密碼zhangsanfeng是不能登錄成功的 。
當(dāng)然,我們可以使用模糊匹配的方式來限定用戶登錄的網(wǎng)段,比如我們創(chuàng)建下面第一個用戶表示只要這個用戶登錄的時候,使用的主機(jī)的IP地址是在10.10.0.0~10.10.255.255這個網(wǎng)段質(zhì)檢的任何一個IP地址都可以登錄 。
create user 'zhangsanfeng'@'10.10.%' identified by '123456';
特殊的網(wǎng)段localhost 。如果我們創(chuàng)建如下的用戶,則表示該用戶只能在MySQL數(shù)據(jù)庫所在的服務(wù)器本機(jī)上登錄 。
create user 'zhangsanfeng'@'localhost' identified by '123456';
還有另外一個特殊的網(wǎng)段% 。它表示用戶可以通過任何一個IP地址來登錄,不對用戶登錄的主機(jī)所在的網(wǎng)段做任何限制 。如下用戶就是不對它登錄的主機(jī)IP地址做任何限制 。
create user 'zhangsanfeng'@'%' identified by '123456';
auth_option選項(xiàng)
auth_option選項(xiàng)的含義表示指定用戶登錄數(shù)據(jù)庫的時候使用的驗(yàn)證插件和密碼 。它的選項(xiàng)有如下幾種,下面我們分別展開分析一下各個選項(xiàng)的使用場景和示例 。
auth_option: {
IDENTIFIED BY 'auth_string'/*使用默認(rèn)的密碼認(rèn)證方式*/
| IDENTIFIED WITH auth_plugin
| IDENTIFIED WITH auth_plugin BY 'auth_string'
| IDENTIFIED WITH auth_plugin AS 'auth_string'
}
IDENTIFIED BY 'auth_string'
如果在IDENTIFIED關(guān)鍵字后面沒有使用WITH關(guān)鍵字指定使用的密碼插件名稱,則會使用MySQL默認(rèn)的密碼插件 。對于MySQL默認(rèn)的密碼插件是什么,可以使用下面的命令進(jìn)行查看:
mysql> show variables like 'default_authentication_plugin';
+——————————-+———————–+
| Variable_name| Value|
+——————————-+———————–+
| default_authentication_plugin | mysql_native_password |
+——————————-+———————–+
1 row in set (0.01 sec)
mysql>
通過上面的輸出,我們可以看出默認(rèn)的密碼插件采用的是mysql_native_password插件,參數(shù)default_authentication_plugin的值是可以在MySQL的配置文件my.cnf中指定的,它可以有以下兩種取值:
mysql_native_password:使用MySQL本地密碼策略,這個是默認(rèn)值 。更多信息請參考:Native Pluggable Authenticationsha256_password:使用SHA-256密碼策略 。更多信息請參考:SHA-256 Pluggable Authentication
推薦閱讀
- 爐石傳說怎么改密碼 爐石傳說修改密碼
- 天姬變怎么修改元寶 天姬變元寶修改器
- ppt背景顏色怎么統(tǒng)一修改 ppt背景顏色
- 圖片怎么修改尺寸 圖片怎么修改尺寸
- qq安全中心怎么修改實(shí)名認(rèn)證
- 怎么修改蘋果id密碼
- 如何修改主頁
- 手機(jī)信號屏蔽怎么辦
- 怎樣修改手機(jī)號服務(wù)密碼
- 修改唇形 其實(shí)就是這么簡單
