MySQL用户及权限管理
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                MySQL用户及权限管理
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.                        
                                MySQL用戶及權限管理
- 查看用戶及權限
- 查看用戶及作用域(使用范圍)
- 查看用戶權限
 
- 創建用戶及授權
- 字段參數
- 用戶管理
 
使用命令提示符登錄MySQL
mysql -h localhost -u root -p查看用戶及權限
mysql中的用戶信息和權限等都存儲在一個名為mysql的數據庫中。其中主要用到的是user、db、tables_priv、columns_priv、procs_priv這五張表,最重要的是user表。
| user | 表存儲全局權限,適用于一個給定服務器中的所有數據庫,在命令中展現形式為*.*; | 
| db | 表存儲數據庫權限,適用于一個給定數據庫中的所有表,在命令中展現形式為[數據庫名].*; | 
| tables_priv | 表存儲表權限,適用于一個給定表中的所有列,在命令中展現形式為[數據庫名].[表名]; | 
| columns_priv | 表存儲列權限,適用于一個給定表中的單一列,在命令中展現形式為; | 
查看用戶及作用域(使用范圍)
select user,host from mysql.user;user表中user+host是復合主鍵,user表示用戶名,host表示作用域(即可以登陸的IP)
查看用戶權限
命令格式show grants for '[用戶名]'@'[使用范圍]'
show grants for 'root'@'localhost';會顯示可以使用的表名及權限,其中USAGE表示無權限,建議最大化窗口查看,表格會比較清晰
創建用戶及授權
可以單獨使用create user '[新用戶名]'@'[作用域]' identified by '[密碼]';來創建用戶然后再授權,
 也可以直接使用grant [權限] on [數據庫名].[表名] to '[用戶名]'@'[作用域]' identified by '[密碼]';創建并授權,
 最后需要使用命令flush privileges刷新權限變更。
字段參數
[權限]
- all privileges:所有權限。
- select:讀取權限。
- delete:刪除權限。
- update:更新權限。
- create:創建權限。
- drop:刪除數據庫、數據表權限。
[數據庫名].[表名]
- *.*:授予該數據庫服務器所有數據庫的權限。
- dbName.*:授予dbName數據庫所有表的權限。
- dbName.dbTable:授予數據庫dbName中dbTable表的權限。
[作用域]
- localhost:只允許該用戶在本地登錄,不能遠程登錄。
- %:允許在除本機之外的任何一臺機器遠程登錄。
- 192.168.0.100:具體的IP表示只允許該用戶從特定IP登錄。
用戶管理
創建用戶
create user '[新用戶名]'@'[作用域]' identified by '[密碼]';為現有用戶授權
grant [權限] on [數據庫名].[表名] to '[用戶名]'@'[作用域]';創建用戶并授權 or 修改已有用戶密碼并授權
grant [權限] on [數據庫名].[表名] to '[用戶名]'@'[作用域]' identified by '[密碼]';修改用戶名
rename user'[舊用戶名]'@'[作用域]' to '[新用戶名]'@'[作用域]'修改密碼
alter user '[用戶名]'@'[作用域]' identified by '[新密碼]'; set password for [用戶名]@[作用域]=password('[新密碼]');刪除授權
revoke [權限] on [數據庫名].[表名] from '[用戶名]'@'[作用域]';刪除用戶
drop user '[用戶名]'@'[作用域]';總結
以上是生活随笔為你收集整理的MySQL用户及权限管理的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: vue-cli 3.0 跨域请求代理
- 下一篇: VSCode同步设置
