如果您在统信UOS系统中需要部署关系型数据库服务,则MySQL是一个常用选择。以下是针对统信UOS桌面版和服务器版安装与基础配置MySQL的具体操作步骤:
一、通过APT源安装MySQL
统信UOS基于Debian/Ubuntu生态,官方软件源中已预置MySQL Server包,使用APT可直接安装稳定版本,避免手动编译带来的依赖冲突。
1、打开终端,执行更新命令同步软件包索引:
sudo apt update
2、安装MySQL服务器主程序及客户端工具:
sudo apt install mysql-server mysql-client 3、安装完成后,MySQL服务将自动启动并设为开机自启,可通过以下命令验证:sudo systemctl status mysql
4、若服务未运行,手动启动并启用开机自启:
sudo systemctl start mysql sudo systemctl enable mysql
二、初始化安全配置
MySQL安装后默认存在弱安全策略,需运行安全脚本禁用匿名用户、移除测试数据库、限制远程root登录等,以降低初始暴露面。
1、执行安全初始化向导:
sudo mysql_secure_installation 2、按提示依次设置root用户密码强度等级(建议选2)、确认并更新root密码、删除匿名用户账户、禁止root远程登录、移除test数据库及其访问权限、重载权限表使更改生效
三、配置MySQL监听地址与字符集
默认配置下MySQL仅监听本地回环地址(127.0.0.1),且字符集为latin1,需修改配置文件以支持中文存储及局域网内其他设备连接。
1、编辑MySQL主配置文件:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
2、在[mysqld]段落中添加或修改以下参数:
bind-address = 0.0.0.0 character-set-server = utf8mb4 collation-server = utf8mb4_unicode_ci
3、保存退出后重启MySQL服务:
sudo systemctl restart mysql
4、验证字符集设置是否生效:
sudo mysql -u root -p -e "SHOW VARIABLES LIKE 'character_set_server'; SHOW VARIABLES LIKE 'collation_server';"MySQL(Linux)
MySQL 9.6.0是面向Linux平台的2026年创新版本,核心架构迎来重大革新。其将外键约束与级联操作从InnoDB引擎层上移至SQL层,确保所有数据变更均被完整记录至Binlog,彻底解决了CDC(变更数据捕获)与主从复制中的数据不一致难题。此外,该版本引入container_aware启动选项以原生适配容器环境,并对审计日志进行了组件化重构,为追求极致数据一致性与云原生体验的开发者提供了全新选择。
下载
四、创建专用数据库与用户
生产环境中应避免直接使用root账户操作业务数据库,需创建具备最小必要权限的独立用户,并为其分配指定数据库的操作权限。
1、以root身份登录MySQL命令行:
sudo mysql -u root -p
2、创建新数据库(例如名为appdb):
CREATE DATABASE appdb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;3、创建新用户(例如用户名devuser,密码SecurePass123):CREATE USER 'devuser'@'localhost' IDENTIFIED BY 'SecurePass123';
4、授予该用户对appdb的全部操作权限:
GRANT ALL PRIVILEGES ON appdb.* TO 'devuser'@'localhost';
5、刷新权限缓存:
FLUSH PRIVILEGES;
6、退出MySQL命令行:
EXIT;
五、启用远程访问(可选)
如需从其他主机连接本机MySQL,除修改bind-address外,还需为用户授权远程IP访问权限,并确保UOS防火墙放行3306端口。
1、在MySQL中为用户添加远程访问权限(以devuser为例):sudo mysql -u root -p -e "CREATE USER 'devuser'@'%' IDENTIFIED BY 'SecurePass123'; GRANT ALL PRIVILEGES ON appdb.* TO 'devuser'@'%'; FLUSH PRIVILEGES;"
2、检查UOS防火墙状态:
sudo ufw status
3、若防火墙启用,放行MySQL默认端口:
sudo ufw allow 3306
4、再次确认MySQL监听状态是否包含0.0.0.0:3306:
sudo ss -tlnp | grep :3306
