-- user: 使用者名稱
-- host: 允許登入ip(%為萬用字元, 表示所有ip)
-- password: 密碼
create
user
'[user]'
@'[host]' identified by
'[password]'
;-- 例子
create
user
'test'
@'%' identified by
'123456'
;
注意:mysql5.7及以上版本會自動安裝密碼校驗外掛程式
,若使用者密碼設定過於簡單會導致無法通過密碼校驗策略
,從而丟擲如下異常:
1819 - your password does not satisfy the current policy requirements
當丟擲該異常時可採取如下方法進行處理:
增加密碼複雜程度,如:增加長度,新增大小寫字母以及特殊字元
修改密碼校驗策略規則
-- 設定(全域性)密碼校驗策略
-- low: 只校驗密碼長度
-- medium: 需校驗密碼長度、密碼中數字字元個數、密碼中大小寫字母字元個數、密碼中特殊字元個數
-- strong: 需校驗密碼長度、密碼中數字字元個數、密碼中大小寫字母字元個數、密碼中特殊字元個數, 而且密碼中任意連續4個及以上的字元不得是字典中的單詞
setglobal validate_password_policy=low;
-- 設定(全域性)密碼最小長度限制
setglobal validate_password_length=6;
-- 設定(全域性)密碼數字字元最小個數限制
setglobal validate_password_number_count=1;
-- 設定(全域性)密碼大小寫字母字元最小個數限制
setglobal validate_password_mixed_case_count=1;
-- 設定(全域性)密碼特殊字元最小個數限制
setglobal validate_password_special_char_count=1;
-- 設定(全域性)密碼字典
setglobal validate_password_dictionary_file=password;
-- 查詢密碼校驗策略
show variables like
'validate_password%'
;
-- user: 使用者名稱
-- host: 允許登入ip(%為萬用字元, 表示所有ip)
drop
user
'[user]'
@'[host]'
;-- 例子
drop
user
'test'
@'%'
;
-- permission: 許可權(all表示所有, 常見的許可權如下表)
-- database: 資料庫(資料庫層級許可權,關於表層級和列層級這裡不做說明)
-- user: 使用者名稱
-- host: 允許登入ip(%為萬用字元, 表示所有ip)
grant
[permission]on[
database].
*to'[user]'
@'[host]'
;-- 重新整理
flush privileges
;-- 例子
grant
allon test.*to
'test'
@'%'
;grant
insert
,delete
,update
,select
on test.*to
'test'
@'%'
;flush privileges
;
許可權名稱
許可權層級
許可權說明
create
資料庫、表、索引
建立資料庫、表、索引的許可權
drop
資料庫、表、檢視、索引
刪除資料庫、表、檢視、索引的許可權
alter
表修改表結構許可權
index
表操作索引許可權
insert
表插入資料許可權
delete
表刪除資料許可權
update
表修改資料許可權
select
表查詢資料許可權
create view
檢視建立檢視許可權
show view
檢視檢視檢視許可權
create routine
儲存過程
建立儲存過程許可權
alter routine
儲存過程
修改儲存過程許可權
execute
儲存過程
執行儲存過程許可權
lock tables
伺服器管理
鎖表許可權
create user
伺服器管理
建立使用者許可權
grant option
-許可權賦予許可權
-- permission: 許可權(all表示所有, 常見的許可權如上表)
-- database: 資料庫(資料庫層級許可權,關於表層級和列層級這裡不做說明)
-- user: 使用者名稱
-- host: 允許登入ip(%為萬用字元, 表示所有ip)
revoke
[permission]on[
database].
*from
'[user]'
@'[host]'
;-- 重新整理
flush privileges
;-- 例子
revoke
allon test.
*from
'test'
@'%'
;revoke
insert
,delete
,update
,select
on test.
*from
'test'
@'%'
;flush privileges
;
-- user: 使用者名稱
-- host: 允許登入ip(%為萬用字元, 表示所有ip)
show grants for
'[user]'
@'[host]'
;-- 例子
show grants for
'test'
@'%'
;
-- user: 使用者名稱
-- host: 允許登入ip(%為萬用字元, 表示所有ip)
-- password: 新密碼
set password for
'[user]'
@'[host]'
= password(
'[password]');
-- 例子
set password for
'test'
@'%'
= password(
'111111'
);
MySQL建立使用者與授權
一 建立使用者 命令 create user username host identified by password 說明 username 你將建立的使用者名稱,host 指定該使用者在哪個主機上可以登陸,如果是本地使用者可用localhost,如果想讓該使用者可以從任意遠端主機登陸,可以使用萬...
MySQL建立使用者與授權
1 建立使用者,建立使用者的時候不分配任何許可權 create user 使用者名稱 訪問 identified by 密碼 2 刪除使用者 drop user 使用者名稱 3 分配許可權 grant 許可權 on 資料庫.表 to 使用者名稱 訪問 identified by 密碼 grant s...
MySQL建立使用者與授權
在linux 上的新裝的mysql 需要修改root 密碼 set password for root localhost password root 一,建立使用者 命令 create user username host identified by password 說明 username 你將...