前言
有个需求是要在Redhat9.2上安装mysql8,且服务器不能访问互联网,特此记录。
uname -a
然后下载如下六个安装包
mysql-community-client-8.0.43-1.el9.x86_64.rpm mysql-community-client-plugins-8.0.43-1.el9.x86_64.rpm mysql-community-common-8.0.43-1.el9.x86_64.rpm mysql-community-icu-data-files-8.0.43-1.el9.x86_64.rpm mysql-community-libs-8.0.43-1.el9.x86_64.rpm mysql-community-server-8.0.43-1.el9.x86_64.rpm
下载完成后通过U盘或者文件传输工具上传到Redhat服务器。
安装mysql
进入安装包所在目录,按顺序执行如下命令
rpm -ivh mysql-community-common-8.0.43-1.el9.x86_64.rpm rpm -ivh mysql-community-client-plugins-8.0.43-1.el9.x86_64.rpm rpm -ivh mysql-community-libs-8.0.43-1.el9.x86_64.rpm rpm -ivh mysql-community-client-8.0.43-1.el9.x86_64.rpm rpm -ivh mysql-community-icu-data-files-8.0.43-1.el9.x86_64.rpm rpm -ivh mysql-community-server-8.0.43-1.el9.x86_64.rpm
解决依赖问题
我在执行最后一个命令是出现了问题,错误信息指出缺少两个依赖:/usr/bin/perl和net-tools。
但是现在服务器处于离线环境,因此只能在另一台联网的Red Hat/CentOS 9上下载perl和net-tools依赖。然后再通过U盘或内部网络上传到服务器。
a.另一个能联网的Red Hat/CentOS 9服务器:
mkdir offline-pkgs && cd offline-pkgs dnf download perl perl-IO-Socket-SSL perl-DBI perl-DBD-MySQL perl-Data-Dumper --resolve dnf download net-tools --resolve
b.将offline-pkgs目录拷贝到离线的Red Hat9.2服务器。
c.进入离线的Red Hat9.2服务器,通过RPM安装依赖
# 安装所有依赖(自动处理顺序) # 忽略依赖冲突强制安装:cite[2]:cite[9] sudo rpm -Uvh *.rpm --nodeps --force
d.尝试再次安装
rpm -ivh mysql-community-server-8.0.43-1.el9.x86_64.rpm
遇到了另一个问题:mariadb-connector-c-config 被 mysql-community-server-8.0.43-1.el9.x86_64 取代
这是因为系统中已存在MariaDB的组件,Mysql尝试替换它,而RPM默认不允许导致的。
解决方法就是移除冲突的MariaDB组件。
# 1. 检查已安装的 MariaDB 相关包 sudo rpm -qa | grep mariadb # 2. 移除冲突的 MariaDB 组件(特别是 mariadb-connector-c-config) sudo rpm -e mariadb-connector-c-config --nodeps # 3. 移除其他可能冲突的 MariaDB 包 sudo rpm -e mariadb-common mariadb-connector-c --nodeps 2>/dev/null || true # 4. 再次尝试安装 MySQL sudo rpm -ivh mysql-community-server-8.0.43-1.el9.x86_64.rpm
e.初始化mysql
#初始化 mysqld --initialize #进入mysql目录 cd /var/lib/mysql ll
f.启动mysql
sudo systemctl restart mysqld systemctl status mysqld.service
安全配置
获取临时密码
grep 'temporary password' /var/log/mysqld.log
安全配置
sudo mysql_secure_installation
需要输入刚才获取的临时密码,然后按照提示进行一下步骤
重新设置密码
是否删除匿名账号
是否取消root用户远程登录
是否删除test数据库和访问权限
是否刷新权限表
测试
mysql -uroot -p select version();
至此,mysql离线安装成功。
共同學(xué)習(xí),寫(xiě)下你的評(píng)論
評(píng)論加載中...
作者其他優(yōu)質(zhì)文章
100積分直接送
付費(fèi)專(zhuān)欄免費(fèi)學(xué)
大額優(yōu)惠券免費(fèi)領(lǐng)