1. 程式人生 > 其它 >linux mysql5.7以上建立使用者

linux mysql5.7以上建立使用者

技術標籤:資料庫

一、增加使用者
user無password欄位了,變成authentication_string欄位,採用password函式

可以查看錶結構

desc user 

建立不要用insert,會報錯

Field 'ssl_cipher' doesn't have a default value

mysql使用者表的中某些欄位不能為空,沒有預設值,其實是操作錯誤,mysql新增使用者是不能這樣直接insert user表的。

正確得方式(@後面遠端就%本地就localhost):

CREATE USER 'csx'@'192.168.%'  IDENTIFIED BY '
[email protected]
';

修改

update user set authentication_string =password('Crm263!!') where user='csx'

如果報錯

Your password does not satisfy the current policy requirements

是因為密碼不符合要求
檢視密碼規則

SHOW VARIABLES LIKE 'validate_password%';

在這裡插入圖片描述
關於 mysql 密碼策略相關引數;
1)、validate_password_length 固定密碼的總長度;
2)、validate_password_dictionary_file 指定密碼驗證的檔案路徑;

3)、validate_password_mixed_case_count 整個密碼中至少要包含大/小寫字母的總個數;
4)、validate_password_number_count 整個密碼中至少要包含阿拉伯數字的個數;
5)、validate_password_policy 指定密碼的強度驗證等級,預設為 MEDIUM;
關於 validate_password_policy 的取值:
0/LOW:只驗證長度;
1/MEDIUM:驗證長度、數字、大小寫、特殊字元;
2/STRONG:驗證長度、數字、大小寫、特殊字元、字典檔案;
6)、validate_password_special_char_count 整個密碼中至少要包含特殊字元的個數

二、許可權

grant 許可權 on 資料庫.* to 使用者名稱@登入主機
flush privileges;    # 刷新系統許可權表

例如加所有許可權(加了許可權之後需重新整理)

GRANT ALL PRIVILEGES ON *.* TO 'csx'@'%';
GRANT SELECT,DELETE,UPDATE,CREATE,DROP ON *.* TO 'csx'@'%';

移除許可權

REVOKE ALL ON *.* FROM 'csx'@'%';

檢視許可權

show grants for 'csx'@'%';

找到一個詳細版
https://www.cnblogs.com/zonglonglong/p/14011454.html