必须先确认银河麒麟v10系统且架构为x86_64或aarch64,再彻底卸载mariadb残留、清理配置与用户、检查3306端口,最后按架构选用apt、rpm或二进制方式安装并初始化。

在麒麟OS上安装MySQL数据库,必须先确认系统版本为银河麒麟V10且CPU架构为x86_64或aarch64,否则直接运行不兼容的安装包会导致mysqld启动失败、报“not found”或立即退出;不同架构对应完全不同的安装路径与依赖处理方式,不能混用。
确认系统环境与清理冲突组件
执行cat /etc/kylin-release确认是银河麒麟V10系列;再运行uname -m,输出必须为x86_64或aarch64——若为armv7l等非标准ARM,则需源码编译,本文不覆盖。
检查3306端口是否被占用:ss -tulnp | grep :3306,若返回结果非空,记下PID并用kill -9 PID终止进程。
强制卸载所有MariaDB及旧MySQL残留:rpm -qa | grep -E 'mariadb|mysql' | xargs -r rpm -e --nodeps;这一步不做干净,后续初始化会因/var/lib/mysql目录权限或共享库冲突而失败。
删除残留配置与数据:rm -rf /var/lib/mysql /etc/my.cnf /usr/my.cnf /usr/bin/mysql*;【不删干净会导致mysqld拒绝初始化,报错“Found existing installation in /var/lib/mysql”】
清除用户与组:userdel -r mysql 2>/dev/null && groupdel mysql 2>/dev/null,避免后续创建同名用户时报错。
方法一:APT安装(适用于银河麒麟V10桌面版)
该方式利用系统预置软件源自动解析依赖并完成初始化,适合开发测试环境快速搭建。
打开终端,更新软件包索引:sudo apt update。
安装MySQL服务器核心组件:sudo apt install mysql-server -y。
安装完成后服务将自动启动;验证运行状态:sudo systemctl status mysql。
若服务未激活,执行启动并设为开机自启:sudo systemctl start mysql && sudo systemctl enable mysql。
运行安全初始化向导:sudo mysql_secure_installation,按提示设置root密码强度、移除匿名用户、禁用远程root登录等。
方法二:RPM包手动安装(适用于银河麒麟V10服务器版)
该方式使用MySQL官方RPM包,确保与systemd、SELinux及glibc深度集成,适用于对审计合规性有要求的开发与准生产环境。
方法一:安装必需运行时依赖
执行sudo dnf install -y libaio numactl openssl-devel perl-Data-Dumper;ARM64平台还需额外执行sudo ln -s /usr/lib64/libtinfo.so.6 /usr/lib64/libtinfo.so.5(若ldconfig -p | grep libtinfo未显示libtinfo.so.5)。
方法二:下载并按序安装RPM包
从MySQL官网下载对应架构RPM Bundle(如mysql-8.0.45-1.el8.x86_64.rpm-bundle.tar或mysql-8.0.45-1.el8.aarch64.rpm-bundle.tar)→解压进入目录→依次执行:
① sudo rpm -ivh mysql-community-common-*.rpm
② sudo rpm -ivh mysql-community-libs-*.rpm
③ sudo rpm -ivh mysql-community-client-*.rpm
④ sudo rpm -ivh mysql-community-server-*.rpm。
初始化数据目录:sudo mysqld --initialize --user=mysql --datadir=/var/lib/mysql。
启动服务并查看临时root密码:sudo systemctl start mysqld && sudo grep 'temporary password' /var/log/mysqld.log。
方法三:通用二进制包部署(推荐用于x86_64定制化环境)
该方法绕过RPM包管理器,直接部署预编译的MySQL二进制文件,兼容性强,适用于银河麒麟高级服务器V10(x86_64)且无需联网构建。
下载适配glibc版本的MySQL 8.0+二进制包:wget https://cdn.mysql.com/Downloads/MySQL-8.0/mysql-8.0.45-linux-glibc2.28-x86_64.tar.xz(注意链接中含glibc2.28和x86_64)。
解压并规范部署:tar -xf mysql-8.0.45-linux-glibc2.28-x86_64.tar.xz -C /usr/local/ && mv /usr/local/mysql-8.0.45-linux-glibc2.28-x86_64 /usr/local/mysql。
创建专用运行用户:groupadd mysql && useradd -r -g mysql -s /bin/false mysql;这比用root跑更安全,也符合systemd服务单元要求。
设置归属与权限:chown -R mysql:mysql /usr/local/mysql;【必须执行,否则初始化时提示“Permission denied”】
初始化数据目录:/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --character-set-server=utf8mb4;临时root密码会打印在末行,立即用tail -1 /usr/local/mysql/data/*.err查看并记录。











