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;
相关推荐
xcs194053 分钟前
集运维 麒麟桌面版v10 sp1 2403 aarch64 离线java开发环境自动化安装
运维·自动化
BAOYUCompany6 分钟前
暴雨服务器成功中标华中科技大学集成电路学院服务器采购项目
运维·服务器
超龄超能程序猿43 分钟前
Bitvisse SSH Client 安装配置文档
运维·ssh·github
奈斯ing1 小时前
【Redis篇】数据库架构演进中Redis缓存的技术必然性—高并发场景下穿透、击穿、雪崩的体系化解决方案
运维·redis·缓存·数据库架构
鳄鱼皮坡1 小时前
仿muduo库One Thread One Loop式主从Reactor模型实现高并发服务器
运维·服务器
即将头秃的程序媛2 小时前
centos 7.9安装tomcat,并实现开机自启
linux·运维·centos
fangeqin2 小时前
ubuntu源码安装python3.13遇到Could not build the ssl module!解决方法
linux·python·ubuntu·openssl
小Mie不吃饭2 小时前
FastAPI 小白教程:从入门级到实战(源码教程)
运维·服务器
fo安方3 小时前
运维的利器–监控–zabbix–第三步:配置zabbix–中间件–Tomcat–步骤+验证
运维·中间件·zabbix
爱奥尼欧3 小时前
【Linux 系统】基础IO——Linux中对文件的理解
linux·服务器·microsoft