天天看点

Mysql 8 - CentOS yum & Docker安装Mysql 8

CentOS yum

先检查系统是否安装过​

​Mysql​

​:

yum list installed | grep mysql      

博主之前是有安装过的,需要先把这些​

​remove​

​掉,才能开始安装。

Mysql 8 - CentOS yum & Docker安装Mysql 8

根据自己安装的​

​Mysql​

​版本包名来执行下面这条命令。

yum remove -y mysql-community-client.x86_64 mysql-community-client-plugins.x86_64 mysql-community-common.x86_64 mysql-community-libs.x86_64 mysql-community-server.x86_64 mysql80-community-release.noarch      
Mysql 8 - CentOS yum & Docker安装Mysql 8

已经​

​remove​

​掉了。

删除​

​Mysql​

​​的配置文件,卸载不会自动删除配置文件,使用如下命令查找出文件名包含​

​mysql​

​的所有文件:

find / -name mysql      
Mysql 8 - CentOS yum & Docker安装Mysql 8

删除​

​Mysql​

​的配置文件:

rm -rf /var/lib/mysql      

现在可以开始安装了。

  • ​​Mysql​​

选择适合自己操作系统的版本(不需要下载文件,只复制​

​rpm​

​​文件名即可,如​

​mysql80-community-release-el7-3.noarch.rpm​

​)。

Mysql 8 - CentOS yum & Docker安装Mysql 8

要安装​

​MySQL​

​​,首先需要添加​

​Mysql​

​​的​

​repo​

​​,通过下面这条命令(​

​http://dev.mysql.com/get/​

​​拼接​

​rpm​

​文件名):

rpm -Uvh http://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm      
Mysql 8 - CentOS yum & Docker安装Mysql 8

会有两个新的​

​repo​

​生成。

接下来,执行下面这两条命令:

yum clean all
yum makecache      

安装​

​Mysql​

​:

yum install -y mysql-community-server      
Mysql 8 - CentOS yum & Docker安装Mysql 8

等待安装完。

开启​

​Mysql​

​服务:

systemctl start mysqld.service      

设置开机自启动:

systemctl enable mysqld.service      

查看​

​Mysql​

​服务的状态:

systemctl status mysqld.service      
Mysql 8 - CentOS yum & Docker安装Mysql 8

很明显启动成功了。

#启动
systemctl start mysqld.service
 
#停止
systemctl stop mysqld.service
 
#重启
systemctl restart mysqld.service
 
#开机自启
systemctl enable mysqld.service

#查看状态
systemctl status mysqld.service      

获取初始密码,用来登录​

​Mysql​

​。

​Mysql​

​​在安装后会创建一个​

​root@localhost​

​​账户(​

​localhost​

​​表示这个账号只能本地使用),并且把初始密码放到了​

​/var/log/mysqld.log​

​文件中。

cat /var/log/mysqld.log | grep password      
Mysql 8 - CentOS yum & Docker安装Mysql 8

最后一条就是密码​

​KMDTsC(5VIx0​

​。

登录​

​Mysql​

​:

mysql -uroot -p      

复制、粘贴密码。

Mysql 8 - CentOS yum & Docker安装Mysql 8

还需要修改密码,​

​Mysql 8​

​​的密码必须满足长度要求(最短长度默认是​

​8​

​位),且必须含有数字、小写或大写字母、特殊字符。可以通过修改密码最短长度和密码的策略来改变默认配置。

set global validate_password.policy=0;
set global validate_password.length=4;      

​validate_password.policy​

​​中​

​0​

​​代表​

​low​

​​、​

​1​

​​代表​

​medium​

​​、​

​2​

​​代表​

​strong​

​,是密码的强弱等级,想要成功运行这两条命令,需要先修改密码(不然会报错,如下图所示),因此只能先修改一个符合默认规则的密码,再执行这两条命令,之后再修改成满足新规则的密码即可。

Mysql 8 - CentOS yum & Docker安装Mysql 8

修改密码(博主还是比较喜欢设置复杂一点的密码):

ALTER USER 'root'@'localhost' IDENTIFIED BY '[email protected]';      
Mysql 8 - CentOS yum & Docker安装Mysql 8

下次登录就可以使用这个密码了。

Docker

云原生可以更好发挥云的部署方便、弹性伸缩、共享、按需使用、高可用等等优势,而容器技术在云原生中使用非常广泛,当然还包括容器编排等等技术。

推荐:

  • ​​Docker汇总​​

阅读这些博客可以基本了解一下​

​Docker​

​​。先得安装好了​

​Docker​

​。

  • ​​CentOS7.3安装Docker​​

安装好了​

​Docker​

​​后,安装​

​Mysql 8​

​​会很方便。先拉取​

​Mysql 8​

​的镜像。

docker pull mysql:8      

我之前有拉取过,这里显示的比较简单。

Mysql 8 - CentOS yum & Docker安装Mysql 8

查看拉取的镜像。

docker images      
Mysql 8 - CentOS yum & Docker安装Mysql 8

基于拉取的镜像(​

​mysql:8​

​​)创建并运行容器​

​--name mysql-kaven​

​​,端口映射(​

​-p 8849:3306​

​​),配置信息(​

​-e [email protected]

​,其实就是设置密码)。

docker run --name mysql-kaven -p 8849:3306 -e [email protected] -d mysql:8      
  • ​--name​

    ​:给新创建的容器命名。
  • ​-e​

    ​​:配置信息,此处配置​

    ​mysql​

    ​​的​

    ​root​

    ​用户登陆密码。
  • ​-p​

    ​​:端口映射,此处映射主机​

    ​8849​

    ​​端口到容器的​

    ​3306​

    ​端口。
  • ​-d​

    ​​:成功启动容器后输出容器的完整​

    ​ID​

    ​。
  • 最后一个​

    ​mysql:8​

    ​​指的是​

    ​Mysql​

    ​​的​

    ​Docker​

    ​镜像名字。
Mysql 8 - CentOS yum & Docker安装Mysql 8

查看容器是否运行成功。

docker ps      
Mysql 8 - CentOS yum & Docker安装Mysql 8

状态为​

​UP​

​,说明正在运行。

连接容器中的​

​Mysql​

​:

mysql -u root -h 127.0.0.1 -P 8849 -p      
Mysql 8 - CentOS yum & Docker安装Mysql 8

继续阅读