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


飞致云 发布于 2024-11-05 / 18 阅读 / 0 评论 /
1.背景介绍 目前知识库中缺少关于国产数据库 TiDB 的使用说明,为此做一些补充。 2.TiDB 快速安装部署 注:若 TiDB 与 DataEase 安装同台服务器上会有端口冲突,需要修改 TiDB 的配置文件。 [root@localhost ~]# curl --proto '=https'

1.背景介绍

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

2.TiDB 快速安装部署

注:若 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

3. 配置 DataEase 数据源

创建数据源时,选择 TiDB。

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

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

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

4. 常见失败问题汇总

(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 为集群名称



是否对你有帮助?