鲲鹏服务器上部署TiDB数据库的完整实战指南

发布时间:2026/11/4 20:26:04
鲲鹏服务器上部署TiDB数据库的完整实战指南 1. 环境准备与前置检查在国产鲲鹏服务器上部署TiDB数据库前需要做好充分的环境准备。我最近在Kylin Linux Advanced Server V10ARM64架构上完成了TiDB v8.5.5的部署这里分享完整的实战经验。1.1 硬件配置要求TiDB作为分布式数据库对硬件资源有一定要求。我的测试环境配置如下组件推荐配置我的实际配置CPU16核以上12核鲲鹏920内存64GB以上48GB DDR4存储NVMe SSD, 500GB以上1TB SATA SSD网络10Gbps网卡千兆以太网提示虽然我的配置略低于推荐值但对于测试和学习环境完全够用。生产环境建议严格遵循官方推荐配置。1.2 操作系统准备Kylin Linux作为国产操作系统在ARM架构上运行良好。部署前需要确认# 检查系统版本 cat /etc/kylin-release # 检查CPU架构 uname -m输出应为Kylin Linux Advanced Server release V10 (Tercel) aarch641.3 系统参数优化为确保TiDB性能需要对系统参数进行调整# 修改文件描述符限制 echo * soft nofile 1000000 /etc/security/limits.conf echo * hard nofile 1000000 /etc/security/limits.conf # 调整内核参数 echo vm.swappiness 0 /etc/sysctl.conf echo net.core.somaxconn 32768 /etc/sysctl.conf sysctl -p2. TiUP工具安装与配置TiUP是TiDB官方推荐的部署工具极大简化了部署流程。2.1 安装TiUP在Kylin系统上安装TiUP需要注意ARM架构适配# 安装TiUP curl --proto https --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh # 使环境变量生效 source ~/.bashrc # 验证安装 tiup --version典型输出1.16.4 v1.16.2-nightly-90 Go Version: go1.24.1 Git Ref: master GitHash: 908be86076919952e4c3f1e52c214c2f45be14e92.2 安装cluster组件TiDB集群管理需要单独安装cluster组件tiup install cluster安装过程中会自动下载ARM架构的二进制包如download https://tiup-mirrors.pingcap.com/cluster-v1.16.4-linux-arm64.tar.gz3. 集群拓扑配置单机部署需要精心设计拓扑结构合理分配资源。3.1 创建部署目录mkdir -p /opt/tidb/{tidb-deploy,tidb-data}目录结构说明/opt/tidb/tidb-deploy存放二进制文件和配置文件/opt/tidb/tidb-data存放数据文件3.2 编写topology.yaml创建集群拓扑配置文件global: user: tidb ssh_port: 22 deploy_dir: /opt/tidb/tidb-deploy data_dir: /opt/tidb/tidb-data server_configs: tidb: {} tikv: storage.block-cache.capacity: 10GB pd: {} pd_servers: - host: 192.168.0.119 tidb_servers: - host: 192.168.0.119 port: 4000 status_port: 10080 tikv_servers: - host: 192.168.0.119 port: 20160 status_port: 20180关键参数说明storage.block-cache.capacityTiKV缓存大小建议不超过物理内存的45%port各组件服务端口确保不冲突status_port监控指标端口4. 集群部署与初始化4.1 执行部署命令tiup cluster deploy tidb-single v8.5.5 topology.yaml --user root -p参数解释tidb-single集群名称v8.5.5TiDB版本--user root使用root权限初始化-pSSH密码登录4.2 解决sudo权限问题部署时可能遇到错误executor.ssh.execute_failed sudo: no tty present and no askpass program specified解决方法visudo # 添加以下内容 tidb ALL(ALL) NOPASSWD: ALL然后重新执行部署命令。4.3 目录权限设置chown -R tidb.tidb /opt/tidb5. 集群启动与验证5.1 初始化并启动集群tiup cluster start tidb-single --init成功启动后会显示root密码The root password of TiDB database has been changed. The new password is: e25*17b-t68DALgv重要该密码只显示一次务必妥善保存5.2 安装MySQL客户端yum -y install mariadb5.3 连接TiDB数据库mysql -h127.0.0.1 -P4000 -uroot -p登录后建议修改密码ALTER USER root% IDENTIFIED BY YourNewPassword; FLUSH PRIVILEGES;5.4 验证集群状态SELECT tidb_version();预期输出Release Version: v8.5.5 Edition: Community Store: tikv6. 运维与监控6.1 常用管理命令# 查看集群状态 tiup cluster display tidb-single # 停止集群 tiup cluster stop tidb-single # 重启集群 tiup cluster restart tidb-single6.2 访问监控面板TiDB集成了Prometheus和Grafana监控面板地址Grafana: http://服务器IP:3000Dashboard: http://服务器IP:2379/dashboard默认用户名/密码admin/admin7. 性能调优建议7.1 TiKV参数优化修改topology.yaml中的tikv配置tikv: storage.block-cache.capacity: 12GB rocksdb.defaultcf.block-cache-size: 8GB rocksdb.writecf.block-cache-size: 2GB7.2 系统层面优化# 调整预读值 echo vm.zone_reclaim_mode 0 /etc/sysctl.conf echo vm.dirty_ratio 20 /etc/sysctl.conf sysctl -p8. 常见问题排查8.1 端口冲突问题错误现象Address already in use解决方法检查端口占用netstat -tunlp | grep 端口号修改topology.yaml中的端口配置重新部署8.2 内存不足问题错误现象OOM killer terminated TiKV解决方法降低storage.block-cache.capacity值增加服务器内存减少并发连接数8.3 ARM架构兼容性问题错误现象illegal instruction解决方法确认下载的是ARM版本组件检查CPU指令集支持cat /proc/cpuinfo | grep features联系PingCAP技术支持在实际部署过程中我发现Kylin Linux对ARM架构的支持非常完善TiDB在鲲鹏服务器上的性能表现也相当出色。对于国产化替代场景这套组合方案值得推荐。

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询