CentOS安装MySQL(YUM源安装)

安装mysql主要分为两种方式,本次简单介绍使用YUM源进行安装mysql,若是不是使用docker,能够跳过步骤一、2。html

1. docker环境准备mysql

在安装mysql以前,请先确认使用的centos版本,执行命令:cat /etc/redhat-release查看系统版本号,以下图所示,使用的版本为centos 7.5.1804sql

从centos 7.x开始,centos开始使用systemd服务来代替daemon,原来管理系统启动和管理系统服务的相关命令所有由systemctl命令来代替。docker

dameon命令 数据库

systemctl命令 说明
service start systemctl start 启动服务
service stop systemctl stop 中止服务
service restart system restart            重启服务

由于是使用docker,因此先建立一个容器,注意若是须要使用systemctl(centos 7版本)启动服务的话,须要在docker run的时候运行/usr/sbin/initcentos


2. 进入dockerbash

使用docker exec -it mysql /bin/bash进入到容器中,并输入systemctl --version查看systemd的版本号。ui

3. 配置YUM源编码

下载mysql,执行命令:wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpmspa

安装mysql源,执行命令:yum localinstall mysql57-community-release-el7-8.noarch.rpm

检查mysql源是否安装成功,执行命令:yum repolist enabled | grep "mysql.*-community.*"


修改MySQL安装版本,执行命令:vi /etc/yum.repos.d/mysql-community.repo源。例如要安装5.6版本,将5.7的源的enabled = 1修改成enabled = 0。而后再将5.6源的enabled=0改为enabled=1便可。    


4. 安装mysql

安装mysql,执行命令:yum install -y mysql-community-server

5. 启动mysql

启动mysql服务,执行命令:systemctl start mysqld

查看服务状态,执行命令:systemctl status mysqld


6. 设置开机启动

设置开机启动,执行命令:systemctl enable mysqld和systemctl daemon-reload

7. 修改登陆密码

mysql安装完成以后,在/var/log/mysqld.log文件中给root生成了一个默认密码。经过下面的方式找到root默认密码,而后登陆mysql进行修改。

查看登陆密码,执行命令:grep 'temporary password' /var/log/mysqld.log


登陆mysql,执行命令:mysql -u root -p

更改密码,执行命令:ALTER USER 'root'@'localhost' IDENTIFIED BY 'myPassword123#';

mysql5.7新增了密码策略,默认策略为:必须包含大小写字母、数字和特殊符号,而且长度不能少于8位。不然会提示错误,以下图所示。

查看密码策略,执行命令:show variables like 'validate_password%';


validate_password_policy:密码策略,默认为MEDIUM策略 

validate_password_dictionary_file:密码策略文件,策略为STRONG才须要配置

validate_password_length:密码最短长度

validate_password_mixed_case_count:至少包含一个大小写字符

validate_password_number_count :至少包含1个数字

validate_password_special_char_count:至少包含一个特殊字符 

共有如下几种密码策略:

策略 检查规则
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

MySQL官网密码策略详细说明:http://dev.mysql.com/doc/refman/5.7/en/validate-password-options-variables.html#sysvar_validate_password_policy

/etc/my.cnf文件中添加以下配置禁用便可关闭密码策略:validate_password = off


从新启动mysql服务使配置生效:systemctl restart mysqld

登陆mysql,再次修改密码,能够看到此次密码更改为功了,以下图所示。


8. 修改数据库编码

mysql数据库的默认编码为latin1,不支持中文,咱们将编码设置UTF-8。


编辑/etc/my.cnf文件,添加以下编码配置:

[mysqld]
character_set_server=utf8
[client]
default_character_set=utf8

再次重启服务,查看编码,能够看到编码都已经修改UTF-8了。


至此MySQL的安装已经结束了。