Linux非生产环境下TiDB本地测试集群搭建简易指南
TiDB数据库快速入门(Linux非生产环境)-搭建本地测试集群
-
- 引言
- 环境预备
- 一、安装TiUP
- 二、配置环境变量
- 三、启动TiDB测试集群
- 1. 快捷启动默认集群
- 2. 自定义集群配置
- 四、访问TiDB集群
- 1. 连接TiDB数据库
- 2. 访问监控界面
- 五、基础操作示例
- 六、集群管理
- 1. 查看集群状态
- 2. 停止集群
- 3. 后台运行
- 方法一:用nohup运行
- 方法二:使用systemd服务(更专业的后台运行方式)
- 4. 清理集群数据
- 七、数据持久化(可选)
- 常见问题
- 1. 端口冲突问题
- 2. 内存不足问题
- 总结
_🌺The Begin🌺记得关注,收藏不迷路哦🌺 ___
引言
TiDB是由PingCAP公司研发的一款分布式NewSQL数据库,具备水平扩展、强一致性以及高可用性等特性。本文将讲解怎样在Linux环境里迅速搭建TiDB测试集群,助力开发者迅速体验TiDB的核心功能。
环境预备
- Linux操作系统(推荐Ubuntu 18.04+或CentOS 7+)
- 内存:建议8GB及以上
- 磁盘空间:建议20GB及以上
- 网络:可连接互联网以下载安装包
一、安装TiUP
TiUP是TiDB的组件管理工具,能够便捷地部署与管理TiDB集群。
# 下载并安装TiUP
curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh
安装完成后会出现类似如下提示:
[root@zyl-server zyl]# curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 5781k 100 5781k 0 0 3726k 0 0:00:01 0:00:01 --:--:-- 3727k
Successfully set mirror to https://tiup-mirrors.pingcap.com
Detected shell: bash
Shell profile: /root/.bash_profile
/root/.bash_profile has been modified to add tiup to PATH
open a new terminal or source /root/.bash_profile to use it
Installed path: /root/.tiup/bin/tiup
===============================================
Have a try: tiup playground
===============================================
[root@zyl-server zyl]#

二、配置环境变量
按照安装完成后的提示,执行以下命令让TiUP生效:
source /root/.bash_profile

三、启动TiDB测试集群
1. 快捷启动默认集群
tiup playground
此命令会启动一个运行最新版本的最小化TiDB测试集群,包含:
- 1个TiDB实例
- 1个TiKV实例
- 1个PD实例
-
1个TiFlash实例
TiUP Playground默认监听127.0.0.1,服务仅本地可访问;若要让服务能被外部访问,可使用--host参数指定监听网卡绑定外部可访问的IP。tiup playground --host 192.168.234.10

2. 自定义集群配置
若需更多控制,可指定版本和组件数量:
tiup playground v8.5.1 --db 2 --pd 3 --kv 3
参数说明:
v8.5.1
:指定TiDB版本--db 2
:启动2个TiDB实例--pd 3
:启动3个PD实例--kv 3
:启动3个TiKV实例
四、访问TiDB集群
1. 连接TiDB数据库
利用TiUP client连接TiDB,新开启一个session来访问TiDB数据库和集群端点。
tiup client

2、使用MySQL客户端连接
mysql --host 192.168.234.10 --port 4000 -u root
2. 访问监控界面
- TiDB Dashboard :http://192.168.234.10:2379/dashboard
- 用户名:root
- 密码:空
- Grafana :http://192.1到PDF格式可能会丢失部分格式,这里继续按文本处理
- 用户名:admin
- 密码:admin

- Prometheus :http://192.168.234.10:9090

五、基础操作示例
连接数据库后,可执行以下SQL体验TiDB功能:
-- 创建数据库
CREATE DATABASE TIDB;
-- 使用数据库
USE TIDB;
-- 创建表
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
email VARCHAR(100) UNIQUE NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
-- 插入数据
INSERT INTO users (name, email) VALUES ('Alice', 'alice@example.com');
INSERT INTO users (name, email) VALUES ('Bob', 'bob@example.com');
-- 查询数据
SELECT * FROM users;
-- 创建索引
CREATE INDEX idx_name ON users(name);
-- 查看执行计划
EXPLAIN SELECT * FROM users WHERE name = 'Alice';

六、集群管理
1. 查看集群状态
tiup playground display

2. 停止集群
按下Ctrl+C
停止当前运行的集群。
3. 后台运行
要在后台运行TiUP Playground,可采用以下方法:
方法一:用nohup运行
nohup tiup playground --host 192.168.234.10 > playground.log 2>&1 &
说明:
nohup
- 确保进程在终端关闭后继续运行> playground.log
- 将标准输出重定向到playground.log文件2>&1
- 将标准错误也重定向到同一个文件&
- 在后台运行
查看日志:
tail -f playground.log
方法二:使用systemd服务(更专业的后台运行方式)
-
创建服务文件:
sudo tee /etc/systemd/system/tiup-playground.service > /dev/null <<EOF
[Unit]
Description=TiUP Playground Service
After=network.target[Service]
Type=simple
User=root使用绝对路径,替换为您的实际tiup路径
ExecStart=/root/.tiup/bin/tiup playground --host 192.168.234.10
WorkingDirectory=/root
Restart=always标准输出和错误输出配置
StandardOutput=append:/var/log/tiup-playground.log
StandardError=append:/var/log/tiup-playground.err.log[Install]
WantedBy=multi-user.target
EOF -
创建日志文件并设置权限:
sudo touch /var/log/tiup-playground.log /var/log/tiup-playground.err.log
sudo chown root:root /var/log/tiup-playground.log /var/log/tiup-playground.err.log -
启用并启动服务:
sudo systemctl daemon-reload sudo systemctl enable tiup-playground sudo systemctl start tiup-playground
-
查看日志:
journalctl -u tiup-playground -f # 或 tail -f /var/log/tiup-playground.log
-
检查服务状态:
sudo systemctl status tiup-playground

4. 清理集群数据
tiup clean --all
七、数据持久化(可选)
默认情况下,TiUP Playground停止时会清理所有数据。若要保留数据,可使用--tag
参数:
tiup playground --tag mycluster
后续可用相同的tag恢复集群:
tiup playground --tag mycluster
常见问题
1. 端口冲突问题
若默认端口被占用,可指定其他端口:
tiup playground --db.port 14000 --kv.port 20180 --pd.port 32379
2. 内存不足问题
若内存不足,可调整组件配置:
tiup playground --db.mem 2048 --kv.mem 4096 --pd.mem 1024
总结
借助TiUP Playground,我们能在几分钟内快速搭建一个TiDB测试集群,体验分布式数据库的核心功能。这种部署方式十分适合开发测试与学习,但不建议用于生产环境。
对于生产环境部署,建议参考官方文档进行更详尽的规划与配置。
