這篇文章將為大家詳細講解有關MySQL中如何添加刪除用戶和授權,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
下面給大家了解一下MySQL中的用戶管理,介紹一下添加用戶、授權和刪除用戶的方法,不要直接使用 root 用戶管理應用數據。
以root用戶登錄數據庫,運行以下命令:
create user zhangsan identified by 'zhangsan';
上面的命令創建了用戶 zhangsan, 密碼是 zhangsan. 在 mysql.user 表里可以查看到新增用戶的信息:
select User, Host, Password from mysql.user where User = 'zhangsan';
命令格式: grant privilegesCode on dbName.tableName to username@host identified by "password";
grant all privileges on zhangsanDb.* to zhangsan@'%' identified by 'zhangsan'; flush privileges;
上面的語句將 zhangsanDb 數據庫的所有操作權限都授權給了用戶 zhangsan.
在 mysql.db 表里可以查看到新增數據庫權限的信息:
select User, Db, Host, Select_priv, Insert_priv, Update_priv, Delete_priv from mysql.db where User = 'zhangsan';
也可以通過 show grants 命令查看權限授予執行的命令:
show grants for 'zhangsan';
privilegesCode 表示授予的權限類型, 常用的有以下幾種類型[1]all privileges: 所有權限
select: 讀取權限
delete: 刪除權限
update: 更新權限
create: 創建權限
drop: 刪除數據庫、數據表權限
dbName.tableName 表示授予權限的具體庫或表, 常用的有以下幾種選項.: 授予該數據庫服務器所有數據庫的權限
dbName.*: 授予dbName數據庫所有表的權限
dbName.dbTable: 授予數據庫dbName中dbTable表的權限
username@host 表示授予的用戶以及允許該用戶登錄的IP地址. 其中Host有以下幾種類型localhost: 只允許該用戶在本地登錄, 不能遠程登錄
%: 允許在除本機之外的任何一臺機器遠程登錄
192.168.52.32: 具體的 IP 表示只允許該用戶從特定IP登錄.
password 指定該用戶登錄時的密碼flush privileges 表示刷新權限變更運行以下命令可以修改用戶密碼:
update mysql.user set password = password('zhangsannew') where user = 'zhangsan' and host = '%';
flush privileges;運行以下命令可以刪除用戶:
drop user zhangsan@'%';
drop user 命令會刪除用戶以及對應的權限, 執行命令后你會發現 mysql.user 表和 mysql.db 表的相應記錄都消失了.
適用于Web應用創建MySQL用戶
create user zhangsan identified by 'zhangsan'; grant all privileges on zhangsanDb.* to zhangsan@'%' identified by 'zhangsan'; flush privileges;
創建了用戶 zhangsan , 并將數據庫 zhangsanDB 的所有權限授予 zhangsan。如果要使 zhangsan 可以從本機登錄,那么可以多賦予 localhost 權限:
grant all privileges on zhangsanDb.* to zhangsan@'localhost' identified by 'zhangsan';
關于MySQL中如何添加刪除用戶和授權就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。