写在前面:
- 我热爱技术,热爱分享,热爱生活, 我始终相信:技术是开源的,知识是共享的!
- 博客里面的内容大部分均为原创,是自己日常的学习记录和总结,便于自己在后面的时间里回顾,当然也是希望可以分享自己的知识。目前的内容几乎是基础知识和技术入门,如果你觉得还可以的话不妨关注一下,我们共同进步!
- 个人除了分享博客之外,也喜欢看书,写一点日常杂文和心情分享,如果你感兴趣,也可以关注关注!
- 微信公众号:傲骄鹿先生
因为搭建个人博客所以在阿里云上购了一台centos8的服务器,这些天也在安装先关的软件,在安装的时候也写一下安装步骤吧。
Linux CentOS8通过RPM方式安装mysql-8.0.24
一、准备工作(下载RPM安装包)
下载地址:MySQL :: Download MySQL Community Server (Archived Versions)
-
Select Operating System 中选择 “Red Hat Enterprise Linux / Oracle Linux”
-
Select OS Version 中选择 “Red Hat Enterprise Linux8 / Oracle Linux 8(x86, 64-bit)”
-
点击Download(mysql-8.0.24-1.el8.x86_64.rpm-bundle.tar)
二、CentOS8环境下的具体安装步骤
1、检测是否已经有mysql的包
查询命令:rpm -qa | grep mysql
rpm -qa | grep mysql
如果存在,则使用yum命令卸载:
rpm -e --nodeps mysql...
2、检测本地是否有mariadb已存在的包,如果有的话还是按照上面的方式删除;
rpm -qa | grep mariadb
3、创建一个文件夹,上传jar包到/opt/software/mysql:
mkdir /opt/software/mysql
4、通过xftp上传压缩rpm包文件
5、解压mysql的jar包
6、利用rpm包安装mysql
依次安装MySQL的组件
rpm -ivh mysql-community-common-8.0.24-1.el8.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.24-1.el8.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.0.24-1.el8.x86_64.rpm
rpm -ivh mysql-community-client-8.0.24-1.el8.x86_64.rpm
rpm -ivh mysql-community-server-8.0.24-1.el8.x86_64.rpm
注意:
在安装的过程中需要注意一下安装的顺序,例如:我在安装server端之前未安装client端就会有报错的信息:
在安装服务端时报错:
使用命令进行安装:
yum install libaio
然后重新安装服务端即可;
安装完成后 可以查看已经安装的组件:
rpm -qa | grep mysql
三、MySQL服务的启停
1、启动mysql(初次启动mysqld,会自动进行初始化工作)
systemctl start mysqld
2、初始化后,会产生临时密码,查询指令如下
cat /var/log/mysqld.log | grep password
3、登录MySQL服务
mysql -uroot -p
输入产生的临时密码即可登陆。
4、更改密码
由于MySQL8.0 有密码验证组件,若希望设置简单的密码,需要修改服务验证条件,可设置的验证条件如官网所示:
# 密码检查等级,0/LOW、1/MEDIUM、2/STRONG
set global validate_password.policy=0;
# 密码的最短长度
set global validate_password.length=6;
# 密码至少要包含的小写字母个数和大写字母个数
set global validate_password.mixed_case_count=0;
# 设置密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'your password';
5、初始化初始化MySQL
mysqld --initialize --user=mysql
6、修改远程登录权限
USE mysql;
UPDATE mysql.user SET host = '%' WHERE user = 'root';
flush privileges;
SELECT host, user FROM user;
7、设置开机自启动
mysql的开机自启动还是存在一些问题的。
当我们重启系统后,发现mysqld服务启动正常,但是依赖mysql数据库的应用程序A启动失败。
查看日志显示,程序A启动的时候链接数据库失败。
原因分析:
mysqld服务是正常启动的。
此时手动重启程序A,A也正常运行。
结论:说明程序A启动的时候,mysqld可能没有启动。
所以这里呢我个人建议是不设置开机自动。或者你也可以重新编写脚本进行启动。
1、将服务文件拷贝到init.d下,并重命名为mysql
[root@localhost /]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
2、赋予可执行权限
[root@localhost /]# chmod +x /etc/init.d/mysqld
3、添加服务
[root@localhost /]# chkconfig --add mysqld
4、显示服务列表
[root@localhost /]# chkconfig --list
三、相关配置文件的修改
mysql8.0.24的配置文件是/etc/my.cnf,其默认的字符集都是utf8,所以就不需要进行修改了。
SHOW VARIABLES LIKE 'character%';
如果需要进行其他相关配置的修改,建议先复制一份配置文件再进行修改配置,一旦配置出现错误还原不了就会引起mysql的启动。