TiDB 数据库快速上手指南(Linux非生产环境)-部署本地测试集群
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.168.234.10:3000
- 用户名: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 测试集群,体验分布式数据库的核心功能。这种部署方式非常适合开发测试和学习使用,但不建议用于生产环境。
对于生产环境部署,建议参考官方文档进行更详细的规划和配置。
🌺The End🌺点点关注,收藏不迷路🌺
|