MySQL 資料庫使用者角色相關操作
阿新 • • 發佈:2018-12-26
一、mysql database user table
MySQL中有一個mysql 資料庫,其中的user資料表存放著資料庫對使用者角色的相關處理,但是單純的使用該表增刪插入,會造成一些問題,原因在於資料庫角色管理並不只在一張表裡,各表之間相互關聯。
二、使用使用者相關命令進行管理
相關概念:使用者名稱、主機號、使用者帳號
使用者帳號包括兩個部分一個是使用者名稱,一個是主機號,主機號是登陸mysql時的地址,本地登陸採用localhost;
1.新增使用者帳號並設定密碼
create user 'hanzhen'@'localhost'
identified by '123456';
grant usage on *.* to 'hanzhen'@'hanzhen_home'
identified by '12345';
- 上邊建立了一個兩個帳號,一個帳號是本地登陸,一個是hanzhen_home代表的主機號。密碼是各自登陸的密碼,要說明的是密碼是加密後儲存的。
- grant 也可以建立,當未查詢到使用者名稱時會自動建立。不過還是建議先用create 建立
- 查詢使用者帳號
2.刪除帳號
drop user '使用者名稱'@'主機號';
3.修改密碼
set password for 'hanzhen' @'localhost'=password("123456789");
4.進行許可權控制
上邊建立資料庫時預設是給了使用者 usage on . 即對所有的資料庫和表無許可權(除了mysql 自帶檢視只讀資料庫information_schema)
登陸建立帳號,檢視相關許可權
為[email protected] 賦予某個資料庫某個表的查詢,新增許可權,並進行測試
(1)在root 賬戶下查詢myTest資料庫情況如下
(2)為[email protected] 賦予myTest 資料庫student 表的檢視,更改許可權
grant select,update on myTest.student to 'hanzhen'@'localhost';
-
(3)[email protected]再次檢視資料庫
檢視資料表
測試查詢,更改,刪除資料
查詢修改均成功
刪除提示無許可權。