1. 准备centos虚拟机
安装VMware虚拟机软件,下载centos7简版镜像文件,按照VMware的使用方法一步一步的安装即可。
2. 更新yum包
yum update
3. 安装MySQL软件
- 下载
repo
文件,并将repo
文件放到/etc/yum.repos.d/
路径下。
- 可以通过编辑
mysql-community.repo
文件选择要安装的MySQL
版本。[mysql80-community] name=MySQL 8.0 Community Server baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/6/$basearch/ enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
找到文件中的目标版本处,将
enabled
属性设置为1
,并将其他条目下的设置为0
即可。
- 执行
yum repolist enabled | grep mysql
来检查版本设置的效果。
- 通过
yum install mysql-community-server
命令安装MySQL
。安装需要一定时间,需要等待片刻。
- 可以通过
systemctl start mysqld
启动服务器,并执行systemctl status mysqld
验证服务的运行状态。
4. MySQL服务器初始化
- 在服务器初始启动时,如果服务器的数据目录为空,则会发生以下情况:
- 服务器已初始化。
- 在数据目录中生成SSL证书和密钥文件。
- validate_password插件已安装并启用。
- 创建一个超级用户帐户
'root'@'localhost'
。
- 执行命令
grep 'temporary password' /var/log/mysqld.log
初始化超级用户的密码并将其存储到错误日志mysqld.log
中。此时会生成一个临时密码,并打印到屏幕上,需要记录下此密码。PS:密码比较混乱,可能会包括乱七八糟的字符,譬如我生成的密码就是
Cv,v?AVfN6q,
,一定要全部记录下来,不要忽略任意一个字符。
- 使用临时密码,以超级用户账户登录
MySQL服务
:mysql -uroot -p
- 成功登录之后,是无法执行任何数据库操作命令的,否则会提示
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
,即要先改密码才行。执行ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';
修改密码。PS:由于默认是开启
validate_password
插件的,此插件会检查密码是否合规(规则是:密码中至少包含1个数字,1个小写字母,1个大写字母和1个特殊(非字母、数字)字符),所以一般的简单的密码是无法通过的。但是,可以通过关闭此插件或修改插件规则来规避,操作如下:
- 执行
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 | +--------------------------------------+--------+ 2. 执行`uninstall plugin validate_password;`卸载密码检查规则。 3. 也可执行`validate_password.policy LOW`将密码检查规则调低。 4. 重启服务使配置生效。
5. 设置MySQL
自动启动:
执行
systemctl enable mysqld
将MySQL
设置为自动启动。
6. 配置mysql可以远程访问:
- 选择
mysql
数据库,运行以下命令:select User, Host from user; update user set Host = '%' where User = 'root'; flush privileges; grant all on *.* to 'root'@'%'; flush privileges;
然后重启服务器。
- 执行
firewall-cmd --list-ports
查看当前已开放的端口信息,如果3306
端口(MySQL
默认服务端口)已在列表中,则不需要后面的步骤了;
- 设置centos端口开放:
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
--zone #作用域
--add-port=80/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效
- 然后再执行
firewall-cmd --list-ports
查看,出现3306/tcp
即表示成功。
7. 注意:此套方案,适用于CentOS 7
和 MySQL 8
版本,其他版本的情况,可能会有差异。我的环境为:
Linux bogon 3.10.0-862.9.1.el7.x86_64 GNU/Linux
以上文中提到的安装连接,也是基于此环境提供的,各位需要根据自己的具体情况到官网下载相关文件,这里就不一一列出了。
网友评论