一、环境准备
确认系统架构
uname -m # 应输出 aarch64(即ARM64)
更新系统
sudo dnf update -y
安装基础依赖
sudo dnf install -y libaio numactl openssl-devel tar wget
二、安装MySQL
方案1:通过openEuler官方仓库安装(推荐)
搜索可用MySQL版本
sudo dnf search mysql-server
安装MySQL(以MySQL 8.0为例)
sudo dnf install -y mysql-server mysql-client
启动服务
sudo systemctl start mysqld sudo systemctl enable mysqld
方案2:手动下载ARM64二进制包安装
下载MySQL ARM64二进制包
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.33-linux-glibc2.28-aarch64.tar.xz tar -xvf mysql-8.0.33-linux-glibc2.28-aarch64.tar.xz sudo mv mysql-8.0.33-linux-glibc2.28-aarch64 /usr/local/mysql
创建MySQL用户和目录
sudo groupadd mysql sudo useradd -r -g mysql -s /bin/false mysql sudo mkdir /usr/local/mysql/data sudo chown -R mysql:mysql /usr/local/mysql
初始化数据库
cd /usr/local/mysql sudo bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
配置服务文件
sudo cp support-files/mysql.server /etc/init.d/mysqld sudo chmod +x /etc/init.d/mysqld
启动MySQL
sudo systemctl start mysqld
三、配置MySQL
获取临时密码
sudo grep 'temporary password' /var/log/mysqld.log
安全初始化
sudo mysql_secure_installation
- 输入临时密码后重置root密码
- 移除匿名用户、禁止远程root登录等
配置文件优化(
/etc/my.cnf
)[mysqld] # 针对飞腾D2000优化 innodb_buffer_pool_size = 2G # 根据内存调整 max_connections = 500 default_authentication_plugin=mysql_native_password
四、验证安装
登录MySQL
mysql -u root -p
检查版本和架构
SHOW VARIABLES LIKE '%version%'; SHOW VARIABLES LIKE '%version_compile_machine%';
- 输出应包含
aarch64
标识ARM架构
- 输出应包含
五、常见问题解决
1. 依赖库缺失
若启动时报错缺少库(如libssl.so.1.1
):
sudo dnf install openssl11-libs
sudo ln -s /usr/lib64/libssl.so.1.1 /usr/lib64/libssl.so
sudo ln -s /usr/lib64/libcrypto.so.1.1 /usr/lib64/libcrypto.so
2. 性能调优
- 启用NUMA绑定(飞腾D2000支持NUMA):
[mysqld] innodb_numa_interleave = ON
3. 防火墙配置
sudo firewall-cmd --add-port=3306/tcp --permanent
sudo firewall-cmd --reload
六、替代方案(ARM优化分支)
若官方MySQL性能不足,可尝试以下ARM优化版本:
MariaDB
sudo dnf install mariadb-server mariadb-client
GreatSQL(国产开源分支)
wget https://gitee.com/GreatSQL/GreatSQL/releases/download/GreatSQL-8.0.32-24/greatsql-8.0.32-24-linux-glibc2.28-aarch64.tar.xz
总结
通过上述步骤,可在飞腾D2000+欧拉系统上完成MySQL部署。建议优先使用openEuler官方仓库的预编译包以简化流程,若需更高性能可尝试ARM优化的分支版本。