51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

DataEase v2 国产数据库 TiDB 的搭建及其数据源连接使用

1.背景介绍 {#1.%E8%83%8C%E6%99%AF%E4%BB%8B%E7%BB%8D}

目前知识库中缺少关于国产数据库 TiDB 的使用说明,为此做一些补充。


2.TiDB 快速安装部署 {#2.tidb-%E5%BF%AB%E9%80%9F%E5%AE%89%E8%A3%85%E9%83%A8%E7%BD%B2}

注:若 TiDB 与 DataEase 安装同台服务器上会有端口冲突,需要修改 TiDB 的配置文件。

[root@localhost ~]# curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh

若服务器网络不通,可以去官网下载离线安装包;

官网地址:++https://cn.pingcap.com/product-community/++

安装好后会打印出你的 profile 文件路径,执行 source { profile 文件路径};

[root@localhost ~]# source .bash_profile

安装 TiUP 更新下载的版本;

[root@localhost ~]# tiup cluster
[root@localhost ~]# tiup update --self && tiup update cluster

由于部署组件连接数过多,需要修改 sshd 配置文件,将 MaxSessions 的值调整为 20 ,调整完重启 sshd 服务;

[root@localhost ~]# vi /etc/ssh/sshd_config
[root@localhost ~]# service sshd restart

创建启动文件 tidb.yaml ,其中的 192.168.239.132 需要改为自己的服务器 IP;

# # Global variables are applied to all deployments and used as the default value of
# # the deployments if a specific deployment value is missing.
global:
 user: "tidb"
 ssh_port: 22
 deploy_dir: "/tidb-deploy"
 data_dir: "/tidb-data"

Monitored variables are applied to all the machines.

======================================================

monitored: node_exporter_port: 9100 blackbox_exporter_port: 9115

server_configs: tidb: instance.tidb_slow_log_threshold: 300 tikv: readpool.storage.use-unified-pool: false readpool.coprocessor.use-unified-pool: true pd: replication.enable-placement-rules: true replication.location-labels: ["host"] tiflash: logger.level: "info"

pd_servers:

  • host: 192.168.239.132

tidb_servers:

  • host: 192.168.239.132

tikv_servers:

  • host: 192.168.239.132 port: 20160 status_port: 20180 config: server.labels: { host: "logic-host-1" }

  • host: 192.168.239.132 port: 20161 status_port: 20181 config: server.labels: { host: "logic-host-2" }

  • host: 192.168.239.132 port: 20162 status_port: 20182 config: server.labels: { host: "logic-host-3" }

tiflash_servers:

  • host: 192.168.239.132

monitoring_servers:

  • host: 192.168.239.132

grafana_servers:

  • host: 192.168.239.132

执行命令创建 TiDB 的实例和监控组件;

命令示例:tiup cluster deploy <cluster-name> <version> ./tidb.yaml --user root -p
`[root@localhost ~]# tiup cluster deploy tidb-dqy v8.1.0 ./tidb.yaml  --user root -p`

按照引导,输入 "y" 及 root 密码,来完成部署:

image-2024-10-31_17-9-14.png

创建完成后 start 命令启动 TiDB 数据库及组件,display 命令查看组件情况;

[root@localhost ~]# tiup cluster start tidb-dqy
[root@localhost ~]# tiup cluster display tidb-dqy

image-2024-10-31_17-13-6.png

  1. 配置 DataEase 数据源 {#3.-%E9%85%8D%E7%BD%AE-dataease-%E6%95%B0%E6%8D%AE%E6%BA%90}

创建数据源时,选择 TiDB。

image-2024-10-31_17-15-22.png

输入 TiDB 服务的 IP 地址及其他相关信息,校验成功后保存即可。

image-2024-10-31_17-16-23.png

  1. 常见失败问题汇总 {#4.-%E5%B8%B8%E8%A7%81%E5%A4%B1%E8%B4%A5%E9%97%AE%E9%A2%98%E6%B1%87%E6%80%BB}

(1)连接 Communications link failure The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server 报错;

image-2024-10-31_18-26-35.png

解决方案:

1.检查 TiDB 服务器防火墙是否已关闭;

执行命令关闭防火墙;

[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl disable firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.

(2)APISIX 端口冲突 导致 DataEase 连接数据源失败 Error: failed to start tiflash: failed to start: 192.168.239.132 tiflash-9000. service, please check the instance's log(/tidb-deploy/tiflash-Spoo/log) for more detail .: timed out waiting for tiflash 192.168.239.132:9000 to be ready after 120s: Get "http://192.168.239.132:20292/tiflash/store-status": dial top 192.168.239.132:20292: connect: connection refused;

检查 Dataease 配置文件是否与 TiDB 的端口冲突,若冲突需要重装 TiDB 修改 tidb.yaml 配置文件中的 tiflash 端口号;

image-2024-11-1_11-2-37.png

卸载命令:

tiup cluster stop tidb-dqy             ##其中的tidb-dqy 为集群名称
tiup cluster clean tidb-dqy --all    ##其中的tidb-dqy 为集群名称
tiup cluster destroy tidb-dqy        ##其中的tidb-dqy 为集群名称

赞(1)
未经允许不得转载:工具盒子 » DataEase v2 国产数据库 TiDB 的搭建及其数据源连接使用