CentOS yum
先检查系统是否安装过Mysql
:
yum list installed | grep mysql
博主之前是有安装过的,需要先把这些remove
掉,才能开始安装。
根据自己安装的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
已经remove
掉了。
删除Mysql
的配置文件,卸载不会自动删除配置文件,使用如下命令查找出文件名包含mysql
的所有文件:
find / -name mysql
删除Mysql
的配置文件:
rm -rf /var/lib/mysql
现在可以开始安装了。
选择适合自己操作系统的版本(不需要下载文件,只复制rpm
文件名即可,如mysql80-community-release-el7-3.noarch.rpm
)。
要安装MySQL
,首先需要添加Mysql
的repo
,通过下面这条命令(http://dev.mysql.com/get/
拼接rpm
文件名):
rpm -Uvh http://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
会有两个新的repo
生成。
接下来,执行下面这两条命令:
yum clean all
yum makecache
安装Mysql
:
yum install -y mysql-community-server
等待安装完。
开启Mysql
服务:
systemctl start mysqld.service
设置开机自启动:
systemctl enable mysqld.service
查看Mysql
服务的状态:
systemctl status mysqld.service
很明显启动成功了。
#启动
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
最后一条就是密码KMDTsC(5VIx0
。
登录Mysql
:
mysql -uroot -p
复制、粘贴密码。
还需要修改密码,Mysql 8
的密码必须满足长度要求(最短长度默认是8
位),且必须含有数字、小写或大写字母、特殊字符。可以通过修改密码最短长度和密码的策略来改变默认配置。
set global validate_password.policy=0;
set global validate_password.length=4;
validate_password.policy
中0
代表low
、1
代表medium
、2
代表strong
,是密码的强弱等级,想要成功运行这两条命令,需要先修改密码(不然会报错,如下图所示),因此只能先修改一个符合默认规则的密码,再执行这两条命令,之后再修改成满足新规则的密码即可。
修改密码(博主还是比较喜欢设置复杂一点的密码):
ALTER USER 'root'@'localhost' IDENTIFIED BY 'ITkaven@666.com';
下次登录就可以使用这个密码了。
Docker
云原生可以更好发挥云的部署方便、弹性伸缩、共享、按需使用、高可用等等优势,而容器技术在云原生中使用非常广泛,当然还包括容器编排等等技术。
推荐:
阅读这些博客可以基本了解一下Docker
。先得安装好了Docker
。
安装好了Docker
后,安装Mysql 8
会很方便。先拉取Mysql 8
的镜像。
docker pull mysql:8
我之前有拉取过,这里显示的比较简单。
查看拉取的镜像。
docker images
基于拉取的镜像(mysql:8
)创建并运行容器--name mysql-kaven
,端口映射(-p 8849:3306
),配置信息(-e MYSQL_ROOT_PASSWORD=ITkaven@666.com
,其实就是设置密码)。
docker run --name mysql-kaven -p 8849:3306 -e MYSQL_ROOT_PASSWORD=ITkaven@666.com -d mysql:8
--name
:给新创建的容器命名。-e
:配置信息,此处配置mysql
的root
用户登陆密码。-p
:端口映射,此处映射主机8849
端口到容器的3306
端口。-d
:成功启动容器后输出容器的完整ID
。- 最后一个
mysql:8
指的是Mysql
的Docker
镜像名字。
查看容器是否运行成功。
docker ps
状态为UP
,说明正在运行。
连接容器中的Mysql
:
mysql -u root -h 127.0.0.1 -P 8849 -p
到这里就结束啦,使用Docker
还是比较方便的,更容易进行扩展,比如在单机上搭建一个Mysql
集群,只需要多创建几个容器再稍微配置一下即可,推荐大家去了解一下容器编排技术,比如Kubernetes
。