Ubuntu20.04安装mysql相关配置
- 更新ubuntu 依赖库索引
sudo apt update
题外话:如果想下其他版本的可以输入以下命令查看 mysql-server 的可用版本,不想这么麻烦的直接下一步安装
apt-cache policy mysql-server
- 命令行安装
sudo apt install mysql-server
- 重启 MySQL 服务以保证 MySQL 已经启动
sudo service mysql restart
- 配置(运行脚本后,会有几个问题,可根据自己的需要设置)
sudo mysql_secure_installation
- 连接 MySQL 数据库
sudo mysql
- 查看用户的鉴权设置
SELECT user,authentication_string,plugin,host FROM mysql.user;
- 修改root用户的plugin(uth_socket(不允许用密码登录))
ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'your password';
注:鉴权改为 caching_sha2_password 方式是MySQL官方推荐的,如果需要用 PHP 或者 phpMyAdmin 的话,把 caching_sha2_password 换成 mysql_native_password
题外话:
如果报错”ERROR 1819 (HY000): Your password does not satisfy the current policy requirements“
解决方法:
先查看 mysql 初始的密码策略:
SHOW VARIABLES LIKE ‘validate_password%’;
设置密码强度等级:
set global validate_password_policy=Low;
我自己是不涉及别的项目使用的,所以用了最简单的密码强度,若有别的需求,比如安全性什么的,还是保持原来的。
关于 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 整个密码中至少要包含特殊字符的个数;
- 鉴权生效
FLUSH PRIVILEGES;
- 查看一下更改是不是成功
SELECT user,authentication_string,plugin,host FROM mysql.user;
- 退出MySQL
exit
- 查看mysql 是不是正常在运行
sudo service mysql status
- 如果 MySQL 没有在运行的话,可以重启
sudo service mysql restart
- 可以通过验证下客户端连接 MySQL 是不是通畅来判断MySQL运行
sudo mysqladmin -p -u root version
如果显示ubuntu版本信息诸如的,如此基本连接上了。
本人木兰,以上随手记的,有误的地方请多多指点