1、安装mysql
#brew install mysql
报错
Error: The following directories are not writable by your user:
/usr/local/lib
You should change the ownership of these directories to your user.
sudo chown -R $(whoami) /usr/local/lib
意思是 您应该将这些目录的所有权更改为您的用户
执行以下命令设置权限
#sudo chown -R wuj /usr/local/lib
然后重新安装即可 brew install mysql
2、启动mysql服务
#mysql.server start
3、设置密码
通过brew安装后默认密码为空
执行以下命令设置密码
#mysql_secure_installation
Securing the MySQL server deployment.
Connecting to MySQL using a blank password.
VALIDATE PASSWORD COMPONENT can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD component?
Press y|Y for Yes, any other key for No: y
There are three levels of password validation policy:
LOW Length >= 8
MEDIUM Length >= 8, numeric, mixed case, and special characters
STRONG Length >= 8, numeric, mixed case, special characters and dictionary file
Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG:
之后输入密码强度 0、1、2选择一个
因为手误我选择了1,但在后面设置密码时无法设置简单密码
Estimated strength of the password: 25
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : y
... Failed! Error: Your password does not satisfy the current policy requirements
解决
更改密码强度为 LOW
先登录mysql
#mysql -uroot
设置validate_password_policy为0(表示等级low)
set global validate_password_policy=0;
执行会报错
ERROR 1193 (HY000): Unknown system variable ‘validate_password_policy‘
原因是 MySQL 5.7和MySQL 8.0版本变量名不同
validate_password_policy是在版本 MySQL 5.7中 存在 ,而 MySQL 8.0不存在
解决,执行以下命令查看密码验证插件
SHOW VARIABLES LIKE ‘validate_password%‘;
Variable_name | Value |
+--------------------------------------+--------+
| validate_password.check_user_name | ON |
| 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
可以看到在mysql8.0中 变量名 为 validate_password.policy
好了,修改变量名后执行设置成功
set global validate_password.policy=0;
除此之外 ,还需设置密码长度(默认是长度8位以上)
set global validate_password.length=4;
解决以上问题后再次执行以下命令,设置密码即可
#mysql_secure_installation
4、mysql登录验证
#mysql -uroot -p
显示数据库
#show databases;
另:
在php连接数据库时报错,无法连接到数据库
The server requested authentication method unknown to the client
发现是因为mysql8.0版本的问题
打开mysql数据库 -》用户-》编辑root用户修改
修改插件 caching_sha2_password为 mysql_native_password即可
参考