一、Ubuntu 16.04
sudo apt-get install mysql-server
一旦安装完成,MySQL 服务器应该自动启动。您可以在终端提示符后运行以下命令来检查 MySQL 服务器是否正在运行:
sudo netstat -tap | grep mysql
如果要卸载:
sudo apt-get autoremove mysql-server
二、Centos
如果 Centos 系统版本大于7,默认源使用 mariadb
替换掉了 MySQL, 如果仍要安装 MySQL,只能采取源码安装。
2.1 配置 YUM 源
(1) 下载 mysql 源安装包
wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
(2) 安装 mysql 源
yum localinstall mysql57-community-release-el7-8.noarch.rpm
(3) 检查 mysql 源是否安装成功
yum repolist enabled | grep “mysql.-community.”
2.2 安装 MySQL
yum install mysql-community-server
启动 MySQL:
systemctl start mysqld
查看 MySQL 的启动状态:
systemctl status mysqld
1 | ● mysqld.service - MySQL Server |
2.3 开机启动
systemctl enable mysqld
systemctl daemon-reload
2.4 修改 root 本地登录密码
mysql 安装完成之后,在 /var/log/mysqld.log
文件中给 root 生成了一个默认密码。通过下面的方式找到 root 默认密码,然后登录 mysql 进行修改:
grep ‘temporary password’ /var/log/mysqld.log
获取初始密码后登陆并修改密码:
mysql -u root -p
ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘newPassword’;
三、MySQL 密码检查策略
mysql5.7 默认安装了密码安全检查插件(validate_password)
,默认密码检查策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于8位。否则会提示ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
错误。
通过 msyql 环境变量可以查看密码策略的相关信息:
show variables like ‘%password%’;
变量名 | 数值 |
---|---|
validate_password_policy | 密码策略,默认为 MEDIUM 策略 |
validate_password_dictionary_file | 密码策略文件,策略为 STRONG 才需要 |
validate_password_length | 密码最少长度 |
validate_password_mixed_case_count | 大小写字符长度,至少1个 |
validate_password_number_count | 数字至少1个 |
validate_password_special_char_count | 特殊字符至少1个 |
共有以下几种密码策略:
策略 | 检查规则 |
---|---|
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 |
在 /etc/my.cnf
文件添加 validate_password_policy
配置,指定密码策略
1 | 选择0(LOW),1(MEDIUM),2(STRONG)其中一种,选择 2 需要提供密码字典文件 |
如果不需要密码策略,添加 my.cnf
文件中添加如下配置禁用即可:
1 | validate_password = off |
重新启动 mysql 服务使配置生效:
systemctl restart mysqld