Linux下rpm方式部署mysql(国产化生产环境无联网服务器部署实操)

请放心观看,已在正式环境部署验证,流程无问题!

所用系统为国产化麒麟银河 aarch64系统,部署时间2024年9月份!

复制代码
#查看服务器信息
#涉及生产服务器,所以输出信息隐藏了一部分

[root@ecs-xxxxx hdata]# uname -a
Linux  ky10.aarch64   aarch64 aarch64 aarch64 GNU/Linux

因为服务器无网络环境,系统又是aarch64系统,我尝试了很多直接解压tar.zip包的版本,都报错无法启动mysql,最后选择rpm离线包安装方式,成功安装!

一、卸载旧版本

1.检查是否有旧版本

复制代码
rpm -qa | grep mysql
rpm -qa | grep mariadb

上述查询有结果的话,就执行下面命令进行卸载

复制代码
rpm -e 上述查询出的结果

#或者使用yum命令卸载
yum -y remove 上述查询出的结果

2.查看etc/目录下是否存在my.cnf文件

复制代码
ls etc/my.cnf
# 有的话就删除
rm /etc/my.cnf

3.卸载MySQL后残留数据保存路径

复制代码
find / -name mysql
# 删除
rm -rf 查找的路径名

二、mysql下载

1.国内镜像站下载,速度快

下载地址:mysql-MySQL-8.0安装包下载_开源镜像站-阿里云

2.官网下载

下载地址:MySQL :: Download MySQL Community Server

三、部署mysql

1.上传到linux服务器/usr/local/mysql目录下(也可自定义上传目录),并解压

复制代码
tar -xvf mysql-8.0.37-1.el7.aarch64.rpm-bundle.tar

按照顺序依次安装

复制代码
rpm -ivh mysql-community-common-8.0.37-1.el7.aarch64.rpm
rpm -ivh mysql-community-client-plugins-8.0.37-1.el7.aarch64.rpm
rpm -ivh mysql-community-libs-8.0.37-1.el7.aarch64.rpm
rpm -ivh mysql-community-client-8.0.37-1.el7.aarch64.rpm
rpm -ivh mysql-community-icu-data-files-8.0.37-1.el7.aarch64.rpm
rpm -ivh mysql-community-server-8.0.37-1.el7.aarch64.rpm

安装的时候如果报缺少依赖,可以根据下面rpm包下载地址去找对应的包;或者强制安装试一下,我安装server的时候报了个缺少依赖,强制安装成功,数据库也正常启动没问题。

复制代码
rpm -ivh --force --nodeps mysql-community-server-8.0.37-1.el7.aarch64.rpm

rpm方式下载包:rpm包下载&网址&wget 方式下载-CSDN博客

复制代码
#无网络环境可以去RPM下载站去找rpm包
rpm -ivh 包名

#有网络环境使用以下命令
yum install xxx

四、修改配置文件

主要是配置下数据存储目录、端口号、日志存储目录等。

复制代码
vim /etc/my.cnf
bash 复制代码
[mysqld]

#设置mysql数据库的数据存放目录
datadir = /usr/local/data

#设置端口
port = 3306
socket = /tmp/mysql.sock

#设置字符集
character-set-server=utf8

#日志存放目录
log-error = /usr/local/mysqld.log
pid-file = /usr/local/mysqld.pid


#允许时间类型的数据为零(去掉NO_ZERO_IN_DATE,NO_ZERO_DATE)
#sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

五、启动服务

注:有时候如果不是mysqld服务的话可能是mysql服务。

bash 复制代码
systemctl start mysqld    # 启动
systemctl status mysqld    # 查看启动状态
systemctl restart mysqld    # 重启
systemctl stop mysqld    # 停止

六、连接数据库,修改登录信息

1.查看数据库密码

bash 复制代码
#通过日志查看初始root密码
cat /var/log/mysqld.log | grep password

2.临时登录

bash 复制代码
mysql -u root -p 
#输入临时密码登录

3.修改密码

bash 复制代码
ALTER USER 'root'@'localhost' IDENTIFIED BY '这里设置你的密码';

#修改完成后,刷新权限
flush privileges;

4.设置远程登录

bash 复制代码
#切换到mysql数据库
use mysql;
update user set host = '%' where user = 'root';

#修改完成后,刷新权限
flush privileges;
相关推荐
爱喝水的鱼丶3 分钟前
SAP-ABAP:SAP基础数据校验工具开发系列博客(共5篇)第三篇:SAP接口对接开发:实现数据的实时/批量校验交互
运维·数据库·学习·性能优化·sap·abap·经验交流
糖果店的幽灵26 分钟前
Claude Code 完全实战指南 - 第四章:Skill 怎么写
java·服务器·前端
難釋懷34 分钟前
Nginx扩容
运维·nginx
土星云SaturnCloud36 分钟前
基于边缘计算的商场智慧运营架构设计与AI落地实践
服务器·人工智能·ai·边缘计算
落羽的落羽38 分钟前
【算法札记】练习 | Week5
linux·服务器·c++·人工智能·计算机网络·算法·哈希算法
绿虫光伏运维1 小时前
光伏监控运维系统哪家靠谱?
运维·光伏管理·光伏运维
小手指动起来1 小时前
重装系统教程(微PE+无捆绑+驱动完美修复)
服务器·开源软件
木雷坞1 小时前
Docker Hub、GHCR、Quay 混在一起后,镜像源要分开测
运维·docker
Evan_ZGYF丶1 小时前
【开发工具】【perf】Linux下性能分析工具(perf)的使用
linux·嵌入式·开发工具·perf
LT10157974442 小时前
2026年物流RPA选型指南:物流供应链自动化场景适配
运维·自动化·rpa