- 工信部備案號 滇ICP備05000110號-1
- 滇公安備案 滇53010302000111
- 增值電信業務經營許可證 B1.B2-20181647、滇B1.B2-20190004
- 云南互聯網協會理事單位
- 安全聯盟認證網站身份V標記
- 域名注冊服務機構許可:滇D3-20230001
- 代理域名注冊服務機構:新網數碼
MySQL用戶管理
創建/授權用戶:
有兩種方式創建MySQL授權用戶
方法一、通過insert語句直接操作MySQL系統權限表(此處不再贅述)
方法二、執行create user/grant命令(推薦)
注意:
在試用grant命令創建用戶時要注意了,在MySQL5.7.7版本前,如果被授權的用戶不存在,那么grant語句會自動創建新的賬戶,除非設置參數sql_mode 包含 “NO_AUTO_CREATE_USER” 。
但從5.7.7版本開始,默認的sql_mode就包含“NO_AUTO_CREATE_USER” (grant語句不再創建新的賬戶)
因此,如果你是用的MySQL版本較新,要注意語法了,需要先用create user創建用戶,再用grant命令賦權限;
一、創建用戶格式
創建用戶命令一般格式:
create user [用戶名]@[訪問地址] identified by [密碼]
舉例1:創建zhangsan用戶,只是創建用戶并沒有權限,'localhost'表示只能在本地登錄,無法通過遠程連接;密碼是 password
CREATE USER 'zhangsan'@'localhost' IDENTIFIED BY 'password';
舉例2:創建lisi用戶,只是創建用戶并沒有權限,密碼為 password,%通配符表示任何主機都可以連接(可以遠程連接),
CREATE USER 'lisi'@'%' IDENTIFIED BY 'password';
舉例3:(5.7.7版本前)的創建用戶并賦予RELOAD,PROCESS權限 ,在所有的庫和表上;.:代表所有的庫表
GRANT RELOAD,PROCESS ON *.* TO 'admin'@'localhost' identified by '123456';
二、授權格式
grant [權限1,權限2,權限3] on *.* to user@'host' identified by 'password'
常用權限:all privileges、create、drop、select、insert、delete、update
例如,給"zhangsan" 用戶管理員權限,并且允許該用戶繼續給別的用戶賦權限
grant all privileges on *.* to 'zhangsan'@'192.168.1.%' with grant option;mysql
all privileges:表示將所有權限授予給用戶。也可指定具體的權限,如:SELECT、CREATE、DROP等。
on:表示這些權限對哪些數據庫和表生效,格式:數據庫名.表名,這里寫“*”表示所有數據庫,所有表。如果我要指定將權限應用到test庫的user表中,可以這么寫:test.user
to:將權限授予哪個用戶。格式:”用戶名”@”登錄IP或域名”。%表示沒有限制,在任何主機都可以登錄。比如:'zhangsan'@'192.168.1.%',表示zhangsan這個用戶只能在192.168.0.* IP段登錄
with grant option:通過在grant語句的最后使用該子句,就允許被授權的用戶把得到的權限繼續授給其它用戶
注:使用GRANT添加權限,權限會自動疊加,不會覆蓋之前授予的權限,比如你先給用戶添加一個SELECT權限,后來又給用戶添加了一個UPDATE權限,那么該用戶就同時擁有了SELECT和UPDATE權限。
三. 刪除 mysql 用戶
drop user admin@'localhost';
四. 修改 mysql 用戶密碼
修改用戶密碼的方式包括以下三種:
-- 第一種
ALTER USER 'chenhh'@'localhost' IDENTIFIED BY 'mypassword';
-- 第二種
SET PASSWORD FOR 'chenhh'@'localhost' = PASSWORD('mypassword');
-- 第三種
GRANT USAGE ON *.* TO 'chenhh'@'localhost' IDENTIFIED BY 'mypassword';
如在數據庫外命令行中,通過:mysqladmin -u用戶名 -p舊的密碼 password 新密碼
shell> mysqladmin -u user_name -h host_name password "new_password"
提交成功!非常感謝您的反饋,我們會繼續努力做到更好!
這條文檔是否有幫助解決問題?
售前咨詢
售后咨詢
備案咨詢
二維碼
TOP