服务器版本:
CentOS Linux release 7.9.2009 (Core)数据库版本:
mysql-8.0.25,community版本
1 下载安装包
官网下载页面地址:https://dev.mysql.com/downloads/mysql/
Operation System选择:Red Hat Enterprise Linux / Oracle Linux
OS Version选择:Red Hat Enterprise Linux 7 / Oracle Linux 7 (x86,64-bit)
下载第一个RPM Bundle。
如下图所示:

下载得到的安装包:
mysql-8.0.25-1.el7.x86_64.rpm-bundle.tar
2 上传解压
先上传到 /home 目录下:

解压到 /home/mysql 目录:
mkdir /home/mysql
tar -xf mysql-8.0.25-1.el7.x86_64.rpm-bundle.tar -C /home/mysql/
进入 /home/mysql 目录查看:

3 查询并卸载Mariadb、mysql
查询Mariadb:
[root@192 mysql]# rpm -qa | grep mariadb
mariadb-libs-5.5.68-1.el7.x86_64
[root@192 mysql]#
卸载Mariadb:
rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64
查询旧版mysql:
rpm -qa | grep -i mysql
如果有,执行删除:
rpm -e --nodeps mysql文件名
查询mysql文件,并将其删除:
find / -name mysql
whereis mysql
将find命令和whereis命令查询到的mysql文件全部删除:
rm -rf 查询到的mysql路径
删除mysql配置文件:
rm /etc/my.cnf
确认是否全部删除mysql:
rpm -qa | grep -i mysql
4 安装下载的mysql
首先查看一下解压之后都有什么:
[root@192 mysql]# ll
总用量 775392
-rw-r--r--. 1 7155 31415 47810444 4月 26 15:36 mysql-community-client-8.0.25-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 193616 4月 26 15:36 mysql-community-client-plugins-8.0.25-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 628904 4月 26 15:36 mysql-community-common-8.0.25-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 6800820 4月 26 15:36 mysql-community-devel-8.0.25-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 23586756 4月 26 15:37 mysql-community-embedded-compat-8.0.25-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 4240320 4月 26 15:37 mysql-community-libs-8.0.25-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 1262876 4月 26 15:37 mysql-community-libs-compat-8.0.25-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 448614076 4月 26 15:38 mysql-community-server-8.0.25-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 260841936 4月 26 15:40 mysql-community-test-8.0.25-1.el7.x86_64.rpm
依次执行如下安装命令:
rpm -ivh mysql-community-common-8.0.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.0.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-embedded-compat-8.0.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-8.0.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-devel-8.0.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.25-1.el7.x86_64.rpm
以上安装rpm时可能会出现centos的动态库缺失等情况,下面说明如何处理:
情况1:
[root@192 mysql]# rpm -ivh mysql-community-embedded-compat-8.0.25-1.el7.x86_64.rpm
warning: mysql-community-embedded-compat-8.0.25-1.el7.x86_64.rpm: Header V3 DSA/SHA256 Signature, key ID 5072e1f5: NOKEY
error: Failed dependencies:
libnuma.so.1()(64bit) is needed by mysql-community-embedded-compat-8.0.25-1.el7.x86_64
libnuma.so.1(libnuma_1.1)(64bit) is needed by mysql-community-embedded-compat-8.0.25-1.el7.x86_64
libnuma.so.1(libnuma_1.2)(64bit) is needed by mysql-community-embedded-compat-8.0.25-1.el7.x86_64
解决方式:
yum -y install numactl
情况2:
[root@192 mysql]# rpm -ivh mysql-community-devel-8.0.25-1.el7.x86_64.rpm
warning: mysql-community-devel-8.0.25-1.el7.x86_64.rpm: Header V3 DSA/SHA256 Signature, key ID 5072e1f5: NOKEY
error: Failed dependencies:
pkgconfig(openssl) is needed by mysql-community-devel-8.0.25-1.el7.x86_64
解决方式
yum install openssl-devel
5 初始化数据库
mysqld --initialize --console
6 目录授权,否则可能会启动失败
chown -R mysql:mysql /var/lib/mysql/
7 查看服务并启动
查看mysql服务:
systemctl status mysqld

启动mysql服务:
systemctl start mysqld
对应的重启、关闭mysql命令如下:
systemctl stop mysqld
systemctl restart mysqld
8 查看临时密码
cat /var/log/mysqld.log | grep password
查看临时密码:
[root@192 mysql]# cat /var/log/mysqld.log | grep password
2021-06-24T14:13:10.073551Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: (6Dwc<MJZwT+
(6Dwc<MJZwT+ 这个就是。
使用临时密码登录mysql:
[root@192 mysql]# mysql -u root -p
输入密码。
9 修改新密码
修改root账号的密码的命令:
alter user 'root'@'localhost' identified with mysql_native_password by '你的密码';
如下:
mysql> alter user 'root'@'localhost' identified with mysql_native_password by 'Abc123++';
Query OK, 0 rows affected (0.00 sec)
修改密码之后记得重启一下数据库。
10 开启远程连接数据库权限
连上mysql之后。
查看数据库,并切换为mysql数据库:
show databases;
use mysql;

查看可登录mysql的host:
select host,user from user;
host部分全部都是localhost,说明用户只能本地连接msyql服务:

修改root用户的host值,并刷新mysql数据库:
update user set user.host='%'where user.user='root';
flush privileges;

使用数据库客户端工具远程连接mysql:

注意检查CentOS7的防火墙是否开启了3306端口。