centos7安装MySQL8.4手册

发布于:2025-07-20 ⋅ 阅读:(16) ⋅ 点赞:(0)

前言

公司官网系统做等保测评,被扫描出来好多潜在的漏洞,其中就有mysql5.7的,给的建议是升级mysql8。所以就有了这篇文章。

一、首先更新插件,并查看当前系统版本

[root@localhost mysql8.4.5]# yum update
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
正在解决依赖关系
--> 正在检查事务
---> 软件包 containerd.io.x86_64.0.1.6.28-3.2.el7 将被 升级

在这里插入图片描述

查看centos7 系统版本

[root@localhost mysql8.4.5]# cat /etc/centos-release
CentOS Linux release 7.9.2009 (Core)
[root@localhost mysql8.4.5]# 

在这里插入图片描述

二、安装步骤

1、创建mysql目录
[root@localhost ~]# cd /usr/local/soft/
[root@localhost soft]# ll
总用量 0
drwxr-xr-x. 9 root root 186 315 11:52 nginx-1.21
[root@localhost soft]# mkdir mysql8.4
[root@localhost soft]# cd mysql8.4/

在这里插入图片描述

2、安装rpm包
[root@localhost mysql8.4]# yum install https://repo.mysql.com//mysql84-community-release-el7-1.noarch.rpm
3、安装 mysql-community-server
[root@localhost mysql8.4]# yum install -y mysql-community-server
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
mysql-8.4-lts-community                                                                                                              | 3.0 kB  00:00:00     
mysql-connectors-community                                                                                                           | 2.6 kB  00:00:00     
mysql-tools-8.4-lts-community                                                                                                        | 2.6 kB  00:00:00     
(1/3): mysql-tools-8.4-lts-community/x86_64/primary_db                                                                               |  15 kB  00:00:01     
(2/3): mysql-connectors-community/x86_64/primary_db                                                                                  | 126 kB  00:00:01     
(3/3): mysql-8.4-lts-community/x86_64/primary_db                                                                                     |  50 kB  00:00:02     
正在解决依赖关系

在这里插入图片描述

在这里插入图片描述

4、启动MySQL服务

启动 mysql,的时候没有出现任何提示说明启动成功了

[root@localhost mysql8.4]# systemctl start mysqld
[root@localhost mysql8.4]# systemctl status mysql
Unit mysql.service could not be found.
[root@localhost mysql8.4]# systemctl status mysqld
● mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: active (running) since 五 2025-07-18 20:36:17 CST; 12s ago
     Docs: man:mysqld(8)
           http://dev.mysql.com/doc/refman/en/using-systemd.html
  Process: 27593 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
 Main PID: 28434 (mysqld)
   Status: "Server is operational"
    Tasks: 36
   Memory: 435.4M
   CGroup: /system.slice/mysqld.service
           └─28434 /usr/sbin/mysqld

7月 18 20:36:11 localhost.localdomain systemd[1]: Starting MySQL Server...
7月 18 20:36:17 localhost.localdomain systemd[1]: Started MySQL Server.
[root@localhost mysql8.4]# systemctl enable mysqld

在这里插入图片描述

5、查看MySQL状态
[root@localhost mysql8.4]# systemctl status mysql
6、设置开机自启动
[root@localhost mysql8.4]# systemctl enable mysqld

三、查看默认密码

[root@localhost mysql8.4]# cat /var/log/mysqld.log
2025-07-18T12:36:12.101245Z 0 [System] [MY-015017] [Server] MySQL Server Initialization - start.
2025-07-18T12:36:12.104145Z 0 [System] [MY-013169] [Server] /usr/sbin/mysqld (mysqld 8.4.5) initializing of server in progress as process 28041
2025-07-18T12:36:12.119853Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2025-07-18T12:36:12.551607Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2025-07-18T12:36:13.996497Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: oLoblw2j=<!0

在这里插入图片描述

四、登录mysql

[root@localhost mysql8.4]# mysql -uroot -p

#### 提示输入密码的时候,输入上图的密码即可。

在这里插入图片描述

五、修改密码

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'ltx.xxxx.xxm';

在这里插入图片描述
修改密码报错 参考

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'ltx.xxxx.xxM';

参考步骤,之后记得改回来

-- 设置最小密码长度为4
SET GLOBAL validate_password.length = 4;

-- 设置密码策略为LOW
SET GLOBAL validate_password.policy = 0;

-- 修改密码为简单密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

-- 为了确保所有会话都能使用新密码,刷新权限
FLUSH PRIVILEGES;

六、开启远程访问

要在 MySQL 8.4 中开启远程访问,可以按照以下步骤进行配置:

1. 修改 MySQL 配置文件

首先,找到并编辑 MySQL 的配置文件 my.cnf 。配置文件的位置取决于你的操作系统和 MySQL 的安装方式:

  • 在 Linux 上,通常位于 /etc/mysql/my.cnf 或 /etc/my.cnf。
  • 在 Windows 上,通常位于 MySQL 安装目录下的 my.ini 文件。
[root@localhost mysql8.4]# vim /etc/my.cnf
[root@localhost mysql8.4]# 

打开配置文件,找到 [mysqld] 部分,确保有以下配置:

[mysqld]
bind-address = 0.0.0.0

在这里插入图片描述

bind-address 设置为 0.0.0.0 意味着 MySQL 将监听所有网络接口的连接请求。

2. 重启 MySQL 服务

修改配置文件后,重启 MySQL 服务以使更改生效:

[root@localhost mysql8.4]# vim /etc/my.cnf
[root@localhost mysql8.4]# systemctl restart mysqld 
3. 远程访问用户

3.1 允许root 远程访问

use mysql;

update user set host = '%' where user = 'root';

flush privileges;

在这里插入图片描述


mysql> select host, user from user;

在这里插入图片描述

3.2 创建远程访问用户

mysql> CREATE USER 'ltxxst'@'%' IDENTIFIED BY 'lt.xxxx.xxt';
Query OK, 0 rows affected (0.00 sec)
FLUSH PRIVILEGES;

创建用户、赋予权限,参考

在这里插入图片描述

5. 验证远程连接

在这里插入图片描述


网站公告

今日签到

点亮在社区的每一天
去签到