在统信uos上部署tidb需先开启开发者模式、设置root密码并启用ssh(含permitrootlogin yes及重启sshd);再通过curl安装tiup,source /root/.bash_profile加载环境;用tiup playground部署单机集群;最后配置远程访问:改root密码、授权'root'@'%'、绑定本机ip启动并开放ufw 4000端口。

在统信UOS系统上部署TiDB数据库,需兼顾国产化适配性与分布式数据库的运行特性,不能直接套用Ubuntu或CentOS的通用流程——UOS桌面版默认无root直登、SSH服务未启用、systemd单元路径与权限模型均有差异,必须按UOS特有机制调整。
获取root权限并启用SSH服务
统信UOS桌面版默认禁用root账户和SSH远程登录,而TiDB部署依赖root权限执行磁盘挂载、服务注册及端口绑定等操作。
第一步:进入【设置→通用→开发者模式】,开启开发者模式并重启系统。
第二步:打开终端,执行sudo passwd root设置root密码;随后输入su -切换至root用户。
第三步:启用并配置SSH服务,否则TiUP后续无法通过SSH连接本地节点(即使单机部署也需SSH回环):
执行sudo systemctl enable ssh && sudo systemctl start ssh;
编辑/etc/ssh/sshd_config,确保包含PermitRootLogin yes且未被注释;
【关键前提】必须重启sshd服务:systemctl restart sshd,否则TiUP检测SSH失败会中止部署。
安装TiUP并验证环境
TiUP是TiDB官方指定的部署工具,UOS兼容其Shell安装脚本,但需注意bash环境变量加载路径与UOS默认shell(zsh)的差异。
运行安装命令:curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh。
安装完成后,执行source /root/.bash_profile立即加载环境变量——【易错点】UOS中/root/.zshrc不自动加载TiUP路径,必须显式source bash_profile,否则tiup命令报“command not found”。
验证安装:tiup --version应输出类似v1.13.0的版本号。
部署单机TiDB测试集群
适用于开发调试与功能验证,使用tiup playground快速拉起PD+TiKV+TiDB三组件,无需编写topology.yaml。
方法一:直接启动v6.5.6版本(当前UOS兼容性最佳):tiup playground v6.5.6 --host 127.0.0.1。
方法二:若需指定端口避免冲突(如已运行MySQL),追加参数:--pd.port 2379 --tikv.port 20160 --tidb.port 4000。
启动成功后,终端将显示连接信息,例如:
Start cluster `test` successfully<br>CLUSTER START SUCCESSFULLY, Enjoy it ^-^<br>To connect TiDB: mysql --host 127.0.0.1 --port 4000 -u root。
此时TiDB进程已在后台运行,可通过tiup status查看集群状态,Ctrl+C退出不影响服务持续运行。
配置远程访问与基础安全
默认TiDB仅监听127.0.0.1,UOS桌面环境需开放局域网访问才能供其他设备连接,同时必须设置密码防止未授权访问。
第一步:进入TiDB客户端,执行mysql -h 127.0.0.1 -P 4000 -u root(首次无密码)。
第二步:在MySQL提示符下执行:ALTER USER 'root'@'%' IDENTIFIED BY 'YourSecurePass123';;
再执行:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'; FLUSH PRIVILEGES;。
第三步:关闭TiDB服务:tiup stop test;
重新启动并绑定物理网卡IP(替换192.168.1.100为UOS本机实际IP):tiup playground v6.5.6 --host 192.168.1.100 --db.binpath /root/.tiup/components/tidb/v6.5.6/bin/tidb-server。
第四步:在UOS防火墙中放行端口:sudo ufw allow 4000(UOS桌面版默认启用ufw)。











