WSL Ubuntu 中安装 MySQL 5.7
sudo apt install mysql-server-5.7
sudo mysqld
启动失败
2018-08-15T01:08:41.167354Z 0 [ERROR] Could not create unix socket lock file /var/run/mysqld/mysqld.sock.lock.
2018-08-15T01:08:41.167378Z 0 [ERROR] Unable to setup unix socket lock file.
修改启动方式
sudo service mysql start
之后问题解决,但是没有默认密码。设置 root 账号密码
sudo mysql_secure_installation
设置默认密码之后,依然无法访问。
$ mysql -uroot -p
Enter password:
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
需要 sudo
sudo mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 5
Server version: 5.7.23-0ubuntu0.18.04.1 (Ubuntu)
新建一个不需要 sudo 登陆的账号
mysql> create user 'xylw'@'localhost' identified by 'password';
Query OK, 0 rows affected (0.00 sec)
mysql> grant all on *.* to 'xylw'@'localhost';
Query OK, 0 rows affected (0.00 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
使用这个账号就能直接登录了
mysql -uxylw -p
设置密码的时候报错ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
mysql> 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 |
+--------------------------------------+-------+
7 rows in set (0.01 sec)
把validate_password_policy
设置成LOW
,并修改密码长度限制
set global validate_password_policy=LOW;
set global validate_password_length=4;