银河麒麟v10部署mysql有四种方法:一、rpm包安装,需检查架构、卸载mariadb、按序安装rpm并初始化启动;二、二进制tar.xz手动部署,需建用户组、解压配置、初始化并启服务;三、arm64离线安装,须用aarch64包并处理libtinfo兼容性;四、系统预检查与冲突清理,确保架构匹配、端口空闲、glibc达标及无残留组件。

如果您在麒麟OS上尝试部署MySQL数据库时遇到安装失败、服务无法启动或初始化异常等问题,则可能是由于系统架构不匹配、依赖缺失、预装组件冲突或配置路径错误所致。以下是针对该系统的多种可行安装方法:
一、基于RPM包的标准化安装
该方法利用官方提供的RPM软件包进行安装,由系统包管理器自动处理依赖关系与服务注册,适合对系统集成度要求较高的场景。
1、检查当前系统架构:执行uname -m,确认输出为 x86_64 或 aarch64
2、卸载可能冲突的MariaDB组件:运行rpm -qa | grep -E 'mariadb|mysql',对查出的包逐个执行 rpm -e --nodeps
3、下载对应架构的MySQL 8.0 RPM Bundle包:例如x86_64 平台使用 mysql-8.0.43-1.el8.x86_64.rpm-bundle.tar;aarch64 平台使用 mysql-8.0.43-1.el8.aarch64.rpm-bundle.tar
4、解压并进入解压目录:tar -xf mysql-*.rpm-bundle.tar
5、按依赖顺序安装RPM包:依次执行 rpm -ivh mysql-community-common-*.rpm、mysql-community-libs-*.rpm、mysql-community-client-*.rpm、mysql-community-server-*.rpm
6、初始化数据目录并启动服务:systemctl start mysqld;若首次启动失败,先执行 mysqld --initialize --user=mysql --datadir=/var/lib/mysql
二、基于二进制tar.xz包的手动部署
该方式将MySQL以解压即用形式部署至指定路径,便于多版本共存与权限隔离,适用于生产环境或需精确控制安装路径的用户。
1、创建专用用户与组:groupadd mysql;useradd -r -g mysql -s /bin/false mysql
2、下载并解压MySQL二进制包至 /usr/local:wget https://cdn.mysql.com/Downloads/MySQL-8.0/mysql-8.0.43-linux-glibc2.28-x86_64.tar.xz(x86_64)或对应aarch64链接
3、重命名并设置归属:mv mysql-8.0.43-linux-glibc2.28-*-x86_64 /usr/local/mysql;chown -R mysql:mysql /usr/local/mysql
4、创建数据与日志目录:mkdir -p /usr/local/mysql/data /usr/local/mysql/log;chown mysql:mysql /usr/local/mysql/data /usr/local/mysql/log
5、生成初始配置文件 /etc/my.cnf:确保包含 basedir、datadir、socket、port、character-set-server=utf8mb4
三、ARM64架构离线安装
银河麒麟ARM64系统无法直接运行x86_64二进制包,必须选用ARM适配版本。若无网络,可采用预打包的deb或rpm格式离线安装包,或使用官方提供的aarch64通用包。
1、验证ARM架构:执行uname -m,确认输出为aarch64
2、获取ARM专用安装包:从MySQL官网下载mysql-8.0.42-linux-glibc2.28-aarch64.tar.xz;或使用麒麟技术人员提供的离线deb包(如mysql-server_8.0.36-1debian11_arm64.deb)
3、若为deb包,以普通用户解压并安装:dpkg -i mysql-server_8.0.36-1debian11_arm64.deb
4、若为tar.xz包,执行解压与路径部署:tar -xf mysql-8.0.42-linux-glibc2.28-aarch64.tar.xz -C /usr/local/;mv /usr/local/mysql-8.0.42-linux-glibc2.28-aarch64 /usr/local/mysql
5、初始化前确保libtinfo.so.5可用:ln -s /usr/lib64/libtinfo.so.6 /usr/lib64/libtinfo.so.5
6、执行初始化命令:/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
四、系统环境确认与预检查
该步骤用于验证操作系统版本、硬件架构及关键端口状态,避免因架构错配或端口占用导致后续安装失败。必须确保系统为银河麒麟V10系列且架构与MySQL安装包严格一致。
1、执行命令查看系统发行版信息:cat /etc/kylin-release
2、执行命令确认CPU架构:uname -m(输出必须为x86_64或aarch64)
3、检查3306端口是否被占用:ss -tulnp | grep :3306,若返回非空结果,需先终止对应进程
4、校验glibc版本是否满足要求:ldd --version(x86_64平台需≥glibc 2.17,ARM平台需≥glibc 2.28)
五、冲突组件彻底卸载
银河麒麟V10默认可能预装MariaDB或旧版MySQL相关包,其共享库、服务名及数据目录会与MySQL 8.0产生硬冲突,必须强制清除所有残留。
1、列出所有MariaDB和MySQL相关RPM包:rpm -qa | grep -E 'mariadb|mysql'
2、对每个查出的包执行强制卸载:rpm -e --nodeps(例如:rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64)
3、删除残留数据目录:rm -rf /var/lib/mysql /etc/my.cnf /usr/my.cnf
4、清空用户与组信息(如存在):userdel -r mysql && groupdel mysql











