centos 7.6安装mysql8

在 CentOS 7.6 上安装 MySQL 8.0.42 的步骤如下,基于搜索结果中的最新信息:

  1. 下载 MySQL 8.0.42 安装包
    https://dev.mysql.com/downloads/mysql/

从 MySQL 官方网站下载 mysql-8.0.42-1.el7.x86_64.rpm-bundle.tar 文件:

官方下载地址:MySQL 8.0.42 下载页面

也可以通过网盘下载(需自行验证链接和提取码):

链接:https://pan.baidu.com/s/1wRRWxQxU55X8vFOU_0Y5pQ

提取码:1234

  1. 上传并解压安装包

将下载好的 mysql-8.0.42-1.el7.x86_64.rpm-bundle.tar 文件上传到服务器的 /usr/local 目录下,然后解压:

cd /usr/local

tar -xvf mysql-8.0.42-1.el7.x86_64.rpm-bundle.tar

  1. 安装 MySQL RPM 包

进入解压后的目录,依次安装以下 RPM 包:

cd /usr/local

rpm -ivh mysql-community-common-8.0.42-1.el7.x86_64.rpm --nodeps --force

rpm -ivh mysql-community-libs-8.0.42-1.el7.x86_64.rpm --nodeps --force

rpm -ivh mysql-community-client-8.0.42-1.el7.x86_64.rpm --nodeps --force

rpm -ivh mysql-community-server-8.0.42-1.el7.x86_64.rpm --nodeps --force

如果遇到依赖问题,可以尝试使用 yum 安装:

yum localinstall -y mysql-community-*.rpm

  1. 启动 MySQL 服务

启动 MySQL 服务并设置开机自启:

systemctl start mysqld

systemctl enable mysqld

  1. 获取初始密码

MySQL 安装后会生成一个临时密码,用于首次登录。查找临时密码:

grep 'temporary password' /var/log/mysqld.log

  1. 登录 MySQL 并修改密码

使用初始密码登录 MySQL,然后修改密码:

mysql -u root -p

ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';

如果密码复杂度要求过高,可以先降低密码策略:

SET GLOBAL validate_password.policy = LOW;

SET GLOBAL validate_password.length = 4;

  1. 配置远程访问

默认情况下,MySQL 的 root 用户只能从本地访问。如果需要远程访问,可以创建一个新用户或修改现有用户:

CREATE USER 'root'@'%' IDENTIFIED BY '新密码';

GRANT ALL PRIVILEGES ON . TO 'root'@'%';

FLUSH PRIVILEGES;

  1. 配置防火墙

如果启用了防火墙,需要允许 MySQL 的默认端口(3306):

firewall-cmd --permanent --zone=public --add-port=3306/tcp

firewall-cmd --reload

  1. 验证安装

使用数据库连接工具(如 Navicat)或命令行工具验证 MySQL 是否可以正常连接。

常见问题

如果安装过程中提示依赖问题,可以尝试安装 libaio 和 openssl-devel:

yum install libaio openssl-devel -y

如果系统中已安装 MariaDB,可能需要先卸载:

rpm -e --nodeps mariadb-libs

通过以上步骤,你可以在 CentOS 7.6 上成功安装并配置 MySQL 8.0.42。如果遇到问题,请根据错误信息进行排查。

相关推荐
非专业程序员Ping6 小时前
HarfBuzz概览
android·ios·swift·font
Jeled7 小时前
「高级 Android 架构师成长路线」的第 1 阶段 —— 强化体系与架构思维(Clean Architecture 实战)
android·kotlin·android studio·1024程序员节
明道源码9 小时前
Kotlin 控制流、函数、Lambda、高阶函数
android·开发语言·kotlin
消失的旧时光-194311 小时前
Kotlin × Gson:为什么遍历 JsonObject 要用 entrySet()
android·kotlin·数据处理·1024程序员节
G果12 小时前
安卓APP页面之间传参(Android studio 开发)
android·java·android studio
曾凡宇先生13 小时前
无法远程连接 MySQL
android·开发语言·数据库·sql·tcp/ip·mysql·adb
zhangphil15 小时前
Android GPU的RenderThread Texture upload上传Bitmap优化prepareToDraw
android
柿蒂16 小时前
聊聊SliverPersistentHeader优先消费滑动的设计
android·flutter
假装多好12318 小时前
android三方调试几个常用命令
android·1024程序员节·三方,gms
侧耳42918 小时前
android11禁止安装apk
android·java·1024程序员节