mysql建库建用户操作指引(基于mysql5.7.20版本)

201 阅读1分钟

进入linux控制台-> 登陆mysql命令行

创建表

create database XXX default charset utf8 collate utf8_general_ci;

执行结果 Query OK, 1 row affected (0.01 sec)

创建用户

CREATE USER 'vito'@'%' IDENTIFIED BY '1234';

这时有可能出现 ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

这时我们可以修改密码的设置级别

  • 查询密码的级别
SHOW VARIABLES LIKE 'validate_password%';     

结果示例

+--------------------------------------+--------+                                                                                                               
| Variable_name                        | Value  |                                                                                                               
+--------------------------------------+--------+                                                                                                               
| validate_password_check_user_name    | OFF    |                                                                                                               
| validate_password_dictionary_file    |        |                                                                                                               
| validate_password_length             | 8      |                                                                                                               
| validate_password_mixed_case_count   | 1      |                                                                                                               
| validate_password_number_count       | 1      |                                                                                                               
| validate_password_policy             | MEDIUM |                                                                                                               
| validate_password_special_char_count | 1      |                                                                                                               
+--------------------------------------+--------+  
  • 修改密码设置级别 validate_password_policy 密码强度检查等级,0/LOW、1/MEDIUM、2/STRONG。有以下取值: Policy|Tests Performed --|:-- 0 or LOW |Length
    1 or MEDIUM |Length; numeric, lowercase/uppercase, and special characters
    2 or STRONG |Length; numeric, lowercase/uppercase, and special characters; dictionary file

这里修改成最低级别,只校验长度

set global validate_password_policy = LOW;  

这里密码长度限制调整为4

set global validate_password_length = 4;  
  • 再次查询密码级别
+--------------------------------------+-------+                                                                                                                
| Variable_name                        | Value |                                                                                                                
+--------------------------------------+-------+                                                                                                                
| validate_password_check_user_name    | OFF   |                                                                                                                
| validate_password_dictionary_file    |       |                                                                                                                
| validate_password_length             | 4     |                                                                                                                
| validate_password_mixed_case_count   | 1     |                                                                                                                
| validate_password_number_count       | 1     |                                                                                                                
| validate_password_policy             | LOW   |                                                                                                                
| validate_password_special_char_count | 1     |                                                                                                                
+--------------------------------------+-------+   
  • 再次创建用户 Query OK, 0 rows affected (0.07 sec)

给用户授权

GRANT all privileges ON XXX.* TO 'vito'@'%' identified by '1234';

@'%'表示对所有IP都赋权限,即支持任意的IP远程访问,如果想限制本机访问,可以设置成@'localhost'

  • 完成后查询用户权限
show grants for vito;

结果

+-----------------------------------------------+                                                                                                               
| Grants for vito@%                             |                                                                                                               
+-----------------------------------------------+                                                                                                               
| GRANT USAGE ON *.* TO 'vito'@'%'              |                                                                                                               
| GRANT ALL PRIVILEGES ON `XXX`.* TO 'vito'@'%' |                                                                                                               
+-----------------------------------------------+