数据库教程:TDSQL 安装部署附图的实现(图文)

分布式数据库(tencent distributed sql,tdsql)是腾讯打造的一款分布式数据库产品,具备强一致高可用、全球部署架构、分布式水平扩展、高性能、企业级安全等特性,同时提供智能 db

分布式数据库(tencent distributed sql,tdsql)是腾讯打造的一款分布式数据库产品,具备强一致高可用、全球部署架构、分布式水平扩展、高性能、企业级安全等特性,同时提供智能 dba、自动化运营、监控告警等配套设施,为客户提供完整的分布式数据库解决方案。

tdsql按照官方要求配置相对较高,现通过4台虚拟机演示tdsql的全套部署。 如有不对的地方请指证 wx:moonstar00

** 机器数量规划:**

tdsql 规划机器如下:4台(cpu:2core/mem:8g/hdd:50g) ,内存至少5g以上 ,cpu 至少2c以上, 否则检查通不过

TDSQL 安装部署附图的实现(图文)

  #######################  tdsql安装部署  #######################  1.设主机名  hostnamectl set-hostname huyidb01  hostnamectl set-hostname huyidb02  hostnamectl set-hostname huyidb03  hostnamectl set-hostname huyidb04    2.配置主机名  vim /etc/hosts  10.85.10.51 huyidb01  10.85.10.52 huyidb02  10.85.10.53 huyidb03  10.85.10.54 huyidb04    3.设置时间同步  以huyidb01为主时钟  mount /dev/cdrom /mnt  yum -y install ntp*    [root@huyidb01 ~]# vim /etc/ntp.conf  #同步地址  server 127.127.1.0 iburst  systemctl restart ntpd.service  [root@huyidb02 ~]# vim /etc/ntp.conf  server 10.85.10.51  restrict 10.85.10.51 mask 255.255.240.0 nomodify notrap  systemctl restart ntpd.service  ntpdate -u 10.85.10.51  [root@huyidb03 ~]# vim /etc/ntp.conf  server 10.85.10.51  restrict 10.85.10.51 mask 255.255.240.0 nomodify notrap  systemctl restart ntpd.service  ntpdate -u 10.85.10.51  [root@huyidb04 ~]# vim /etc/ntp.conf  server 10.85.10.51  restrict 10.85.10.51 mask 255.255.240.0 nomodify notrap  systemctl restart ntpd.service  ntpdate -u 10.85.10.51    4.配置免密登录(管理机 110.85.10.54 上操作)  ssh-keygen -t rsa --这里不用输入密码,免密码登录  ssh-copy-id 10.85.10.51 --下面要输入远程主机的密码  ssh-copy-id 10.85.10.52  ssh-copy-id 10.85.10.53  ssh-copy-id 10.85.10.54  #这里是通过ip copy的 ,测试的时候也只要用ip 例: ssh 10.85.10.51    5.准备数据目录路径(所有机器)  mkdir -p /mysql/data  mkdir -p /mysql/log

  #安装ansible  unzip tdsql_full_install_ansible.zip  cd tdsql_full_install_ansible  python settings/install_ansible.py

  #配置tdsql_hosts  vi /soft/tdsql_full_install_ansible/tdsql_hosts  [envcheck]  tdsql_huyidb01 ansible_ssh_host=10.85.10.51  tdsql_huyidb02 ansible_ssh_host=10.85.10.52  tdsql_huyidb03 ansible_ssh_host=10.85.10.53  tdsql_huyidb04 ansible_ssh_host=10.85.10.54  [zk]  tdsql_zk1 ansible_ssh_host=10.85.10.51  tdsql_zk2 ansible_ssh_host=10.85.10.52  tdsql_zk3 ansible_ssh_host=10.85.10.53  [scheduler]  tdsql_scheduler1 ansible_ssh_host=10.85.10.52  tdsql_scheduler2 ansible_ssh_host=10.85.10.53  [oss]  tdsql_oss1 ansible_ssh_host=10.85.10.52  tdsql_oss2 ansible_ssh_host=10.85.10.53  [chitu]  tdsql_chitu1 ansible_ssh_host=10.85.10.52  tdsql_chitu2 ansible_ssh_host=10.85.10.53  [monitor]  tdsql_monitor1 ansible_ssh_host=10.85.10.52  tdsql_monitor1 ansible_ssh_host=10.85.10.53  [db]  tdsql_db1 ansible_ssh_host=10.85.10.51  tdsql_db2 ansible_ssh_host=10.85.10.52  tdsql_db3 ansible_ssh_host=10.85.10.53  [proxy]  tdsql_proxy1 ansible_ssh_host=10.85.10.51  tdsql_proxy2 ansible_ssh_host=10.85.10.52  tdsql_proxy3 ansible_ssh_host=10.85.10.53  [hdfs]  tdsql_hdfs1 ansible_ssh_host=10.85.10.54  [lvs]  tdsql_lvs1 ansible_ssh_host=10.85.10.52  tdsql_lvs2 ansible_ssh_host=10.85.10.53  [kafka]  tdsql_kafka1 ansible_ssh_host=10.85.10.51  tdsql_kafka2 ansible_ssh_host=10.85.10.52  tdsql_kafka3 ansible_ssh_host=10.85.10.53  [consumer]  tdsql_consumer1 ansible_ssh_host=10.85.10.54  [es]  tdsql_es1 ansible_ssh_host=10.85.10.54  [newdb]  tdsql_newdb1 ansible_ssh_host=1.1.1.1  tdsql_newdb2 ansible_ssh_host=2.2.2.2  tdsql_newdb3 ansible_ssh_host=3.3.3.3    修改 ansible 变量  vi /soft/tdsql_full_install_ansible/group_vars/all  zk_num: 3  netif_name: ens38 #<—填入 scheduler(ifconfig 看到的)网卡的名称  tdsql_pass: a+complex+password  zk_rootdir: /tdsqlzk    #下面参数后面安装相关模块时在调整  metadb_ip: 10.120.109.204  metadb_port: 15001  metadb_ip_bak: 10.120.109.205  metadb_port_bak: 15001  metadb_user: hanlon  metadb_password: hanlon  ssh_port: 36000  hdfs_datadir: /data2/hdfs,/data3/hdfs,/data4/hdfs  kafka_logdir: /data2/kafka,/data3/kafka,/data4/kafka  es_mem: 8  es_log_days: 7  es_base_path: /data/application/es-install/es  tdsql_secret_pass: k2jatuv5llbbmrske/k2ybqc  oc_secret_pass: lghvs0v5nvxcolqie/k9bb2i  clouddba_metadb_pass: h5wyg2xy  

  #执行安装 part1_site.yml  sh encrypt.sh <---------必须执行,更新密文密码  ansible-playbook -i tdsql_hosts part1_site.yml    执行了近20多分钟 ,执行完成要无failed=0  play recap ********************************************************************************************************************************************************  chitu1 : ok=20 changed=19 unreachable=0 failed=0  chitu2 : ok=20 changed=19 unreachable=0 failed=0  db1 : ok=13 changed=12 unreachable=0 failed=0  db2 : ok=13 changed=12 unreachable=0 failed=0  db3 : ok=13 changed=12 unreachable=0 failed=0  huyidb01 : ok=30 changed=19 unreachable=0 failed=0  huyidb02 : ok=27 changed=16 unreachable=0 failed=0  huyidb03 : ok=27 changed=16 unreachable=0 failed=0  huyidb04 : ok=27 changed=17 unreachable=0 failed=0  oss1 : ok=14 changed=11 unreachable=0 failed=0  oss2 : ok=14 changed=11 unreachable=0 failed=0  proxy1 : ok=13 changed=10 unreachable=0 failed=0  proxy2 : ok=13 changed=10 unreachable=0 failed=0  proxy3 : ok=13 changed=10 unreachable=0 failed=0  scheduler1 : ok=25 changed=23 unreachable=0 failed=0  scheduler2 : ok=22 changed=20 unreachable=0 failed=0  zk1 : ok=19 changed=17 unreachable=0 failed=0  zk2 : ok=19 changed=17 unreachable=0 failed=0  zk3 : ok=19 changed=17 unreachable=0 failed=0

#错误:
task [zk_cluster : upload the template file zk_configure.py to the dst host] ************************************************************************************************************************************************************
fatal: [tdsql_zk1]: failed! => {“changed”: false, “msg”: “ansibleundefinedvariable: “hostvars[‘zk1′]” is undefined”}
fatal: [tdsql_zk2]: failed! => {“changed”: false, “msg”: “ansibleundefinedvariable: “hostvars[‘zk1′]” is undefined”}
fatal: [tdsql_zk3]: failed! => {“changed”: false, “msg”: “ansibleundefinedvariable: “hostvars[‘zk1′]” is undefined”}
to retry, use: –limit @/soft/tdsql_full_install_ansible/part1_site.retry
原因: tdsql_hosts 配置标签不规范 , 版本不同,标签有所不同. 具体的参考模板,只改ip)
解决办法: tdsql_zk1 改为 zk1

  #初始化chitu  https://10.85.10.52/tdsqlpcloud  注意这里的oss ip ,可能不是实际ip  可以查看cat /data/application/oss/conf/scheduler.xml  或 netstat 查看  [root@huyidb02 ~]# netstat -an | grep 8080  tcp 0 0 192.168.58.131:8080 0.0.0.0:* listen

TDSQL 安装部署附图的实现(图文)

  注意这里的oss ip ,可能不是实际ip  可以查看cat /data/application/oss/conf/scheduler.xml  或 netstat 查看  [root@huyidb02 ~]# netstat -an | grep 8080  tcp 0 0 192.168.58.131:8080 0.0.0.0:* listen  

TDSQL 安装部署附图的实现(图文)

TDSQL 安装部署附图的实现(图文)

  机型查看:  [root@huyidb02 data]# dmidecode | grep “product name”  product name: vmware virtual platform  product name: 440bx desktop reference platform    #db机型 这里填 440bx  

TDSQL 安装部署附图的实现(图文)

TDSQL 安装部署附图的实现(图文)

TDSQL 安装部署附图的实现(图文)

TDSQL 安装部署附图的实现(图文)

TDSQL 安装部署附图的实现(图文)

注意:不同db要在不同的idc
同一个网关组的要在同一个idc中

TDSQL 安装部署附图的实现(图文)

TDSQL 安装部署附图的实现(图文)

TDSQL 安装部署附图的实现(图文)

TDSQL 安装部署附图的实现(图文)

TDSQL 安装部署附图的实现(图文)

TDSQL 安装部署附图的实现(图文)

TDSQL 安装部署附图的实现(图文)

TDSQL 安装部署附图的实现(图文)

登录运营管理平台:帐号密码admin/123456

TDSQL 安装部署附图的实现(图文)

TDSQL 安装部署附图的实现(图文)

TDSQL 安装部署附图的实现(图文)

  测试登录  [root@huyidb02 data]# mysql -utdsqlpcloud -h10.85.10.52 -p15001 -p'tdsqlpcloud'  welcome to the mariadb monitor. commands end with ; or g.  your mysql connection id is 3171  server version: 5.7.17-11-v2.0r540d002-20191226-1152-log source distribution  copyright © 2000, 2018, oracle, mariadb corporation ab and others.  type ‘help;' or ‘h' for help. type ‘c' to clear the current input statement.  mysql [(none)]>

  在管理库修改  vi /soft/tdsql_full_install_ansible/group_vars/all  metadb_ip: 10.85.10.52  metadb_port: 15001  metadb_ip_bak: 10.85.10.53  metadb_port_bak: 15001  metadb_user: tdsqlpcloud  metadb_password: tdsqlpcloud    执行安装 part2_site.yml  sh encrypt.sh <---------必须执行,更新密文密码  ansible-playbook -i tdsql_hosts part2_site.yml  注意:failed=0  play recap ********************************************************************************************************************************************************  chitu1 : ok=19 changed=16 unreachable=0 failed=0  chitu2 : ok=5 changed=4 unreachable=0 failed=0  huyidb01 : ok=18 changed=11 unreachable=0 failed=0  huyidb02 : ok=18 changed=11 unreachable=0 failed=0  huyidb03 : ok=18 changed=11 unreachable=0 failed=0  huyidb04 : ok=18 changed=11 unreachable=0 failed=0  monitor1 : ok=12 changed=12 unreachable=0 failed=0  oss1 : ok=14 changed=9 unreachable=0 failed=0  oss2 : ok=14 changed=9 unreachable=0 failed=0  scheduler1 : ok=31 changed=26 unreachable=0 failed=0  scheduler2 : ok=22 changed=18 unreachable=0 failed=0  #在任意一台 scheduler 机器上执行下面的命令:  cd /data/application/scheduler/bin  ./agent_config --mode modify --option=“ocagent_port” --value=“8966”  ./agent_config --mode modify --option=“hadoop_dir” --value="/data/home/tdsql/hadoop-3.2.1/bin"

  #安装备用赤兔(如果有另一个未初始化的 chitu)  将已初始化的 chitu 机器上拷贝 2 个文件到未初始化的 chitu 机器上,并删除未初始化 chitu 机器上的 crontab,如下:  10.85.10.52 已初始化 chitu  10.85.10.53 未初始化 chitu  (1)在 52 机器上,拷贝文件到 53 机器上  scp -p /data/website/tdsqlpcloud/www/config/database.php 10.85.10.53:/data/website/tdsqlpcloud/www/config/  scp -p /data/website/tdsqlpcloud/www/config/install.lock 10.85.10.53:/data/website/tdsqlpcloud/www/config/    (2)删除 53 机器上 nginx 用户的 crontab  cp -a /var/spool/cron/nginx /data/tools/nginx_cron_bak  rm -f /var/spool/cron/nginx  (3)测试,登录 53 的 chitu  https://10.85.10.53/tdsqlpcloud  至此tdsql的基本模块已安装完成。

安装其它模块(可选)
安装以下模块之前要确保tdsql核心模块安装无误后再进行。
如果需要使用hdfs异地冷备存储binlog和镜像文件,用于数据回档恢复,安装hdfs。
如果需要使用tdsql默认提供的接入层lvs,安装lvs。
如果需要使用多源同步功能,安装kafka和consumer。
如果需要使用网关日志分析及sql审计功能,安装es。

  #安装 hdfs  (1)准备 hdfs 的数据目录的路径  首先用 lsblk 查看磁盘信息  格式化为 xfs 文件系统  mkfs.xfs -f /dev/sdg  创建目录  mkdir -p /mysql/backup  修改/etc/fstab 文件,设置自动挂载到指定路径  /dev/sdg /mysql/backup xfs defaults,noatime 0 0  挂载磁盘  mount -a  (2)设置主机名  在 hdfs 机器上设置主机名,hdfs 集群中主机名不能重复,不能有下划线、中划线等特殊字符,  hostnamectl set-hostname huyidb04  (3)检查 tdsql_hosts 文件  vim tdsql_hosts  [hdfs] <—填入 hdfs 机器地址,hdfs 的数量只能是 1 或 3  hdfs1 ansible_ssh_host=10.85.10.54  (4)修改 hdfs 变量  修改 group_vars/all 中下面的相关变量  vim group_vars/all  —  ssh_port: 36000 <----实际的 ssh 通信端口  hdfs_datadir: /mysql/backup <----多个迪特 一个磁盘一个路径,逗号分隔  注意这些数据文件路径的权限要是 tdsql,如下:  chown -r tdsql:users /mysql/backup  (5)#安装 hdfs 单点 (我的是单点hdfs)  执行安装  ansible-playbook -i tdsql_hosts hdfs_single.yml  su - tdsql  hdfs namenode -format <—格式化 namenode  启动 namenode 和 datanode :  hdfs --daemon start namenode  hdfs --daemon start datanode  附:用 tdsql 用户关闭 hdfs 进程 :  hdfs --daemon stop datanode  hdfs --daemon stop namenode    (6)#安装 hdfs 高可用架构 (如果是高可用 用下面的方式安装)  3 个节点,并且 zk 集群不能是单点。  执行安装 hdfs  ansible-playbook -i tdsql_hosts hdfs.yml  su - tdsql  用 tdsql 用户初始化 hdfs 集群,初始化顺序如下,初始化的工作只用做一次,不要重复初始化  用 tdsql 用户在 hdfs1 机器,格式化 zk  hdfs zkfc -formatzk  用 tdsql 用户在所有机器,启动 journalnode  hdfs --daemon start journalnode  用 tdsql 用户在 hdfs1 机器,格式化并启动 namenode  hdfs namenode -format  hdfs --daemon start namenode  用 tdsql 用户在 hdfs2 机器,格式化 namenode  hdfs namenode -bootstrapstandby  用 tdsql 用户启动 hdfs 集群,启动顺序如下,已经启动的进程就不用重复再启动了,查看启动的进程”jps”  在所有 hdfs 机器上启动 journalnode  hdfs --daemon start journalnode  在 hdfs1 和 hdfs2 上启动 namenode  hdfs --daemon start namenode  在 hdfs1 和 hdfs2 上启动 zkfc  hdfs --daemon start zkfc  在所有 hdfs 机器上启动 datanode  hdfs --daemon start datanode  附:用 tdsql 用户关闭 hdfs 集群,关闭顺序如下  在所有 hdfs 机器上关闭 datanode  hdfs --daemon stop datanode  在 hdfs1 和 hdfs2 上关闭 zkfc  hdfs --daemon stop zkfc  在 hdfs1 和 hdfs2 上关闭 namenode  hdfs --daemon stop namenode  在所有 hdfs 机器上关闭 journalnode  hdfs --daemon stop journalnode  (7)在 hdfs 集群下查看/tdsqlbackup 路径  用 tdsql 用户执行以下命令  #查看/tdsqlbackup 目录是否已经被自动创建,权限是否如下  hadoop fs -ls /  drwxr-xr-x - tdsql supergroup 0 2019-01-02 17:52 /tdsqlbackup  如果目录不在或者权限不对,用下面命令修改:  hadoop fs -mkdir /tdsqlbackup  hadoop fs -chown tdsql.supergroup /tdsqlbackup  (8)管理 hdfs 集群  用 tdsql 用户执行以下命令  查看所有 namenode 节点状态,及主备情况(只适用于高可用 3 节点架构)  hdfs haadmin -getallservicestate  查看所有 datanode 节点的状态,及上报的容量情况  hdfs dfsadmin -report  (9)注意  用 tdsql 用户执行 jps 命令,可以看到 hdfs 的进程名称(只适用于高可用 3 节点架构)  hdfs1 和 hdfs2 机器上应该看到 namenode、journalnode、datanode、dfszkfailovercontroller  hdfs3 机器上应该看到 datanode、journalnode  (10)配置 hdfs 监控  如果有 hdfs,但是没有配置 hdfs 监控,到"“集群管理->集群配置”中设置“hdfs 服务列表”",  注意:如上图所示填写 namenode 节点(一般 2 个)的 50070 端口  生产环境不能用单节点 hdfs,单节点架构的 hdfs 的端口号是 9870

TDSQL 安装部署附图的实现(图文)

  #安装 lvs  lvs 机器建议单独部署,不建议和别人复用(最多只能和 zk 复用)。  (1)检查 tdsql_hosts 文件  vim tdsql_hosts  [lvs] <—填入 lvs 地址,lvs 的数量固定为 2  lvs1 ansible_ssh_host=10.85.10.52  lvs2 ansible_ssh_host=10.85.10.53  (2)安装 lvs  ansible-playbook -i tdsql_hosts lvs.yml  (3)赤兔前台操作 lvs 接入层管理 -> lvs 设备资源管理 -> 上报 lvs 设备资源  上报 lvs 机器信息(2 台 lvs 机器信息都要上报)  设备 ip:填入 lvs 机器的通信 ip 地址。  网卡免费精选名字大全:通信网卡设备名。  子网掩码:填入实际的子网掩码。  idc:lvs 机器需要划分到同一个 idc 中,比如这里的“idc_sz_ydgl_0401_000001”。

TDSQL 安装部署附图的实现(图文)

创建 vip(不能选取部署的机器 ip 作为 vip,需要另选之外一个)
vip:规划一个 vip 的地址,vip 的地址要和 lvs 机器的通信 ip 地址在同一个网段内。
设备 ip 列表:填入 lvs 机器的通信 ip 地址,一行一个。

TDSQL 安装部署附图的实现(图文)

创建 vipgroup
vipgroup 名:新建一个 vipgroup,取一个有意义的免费精选名字大全。

TDSQL 安装部署附图的实现(图文)

TDSQL 安装部署附图的实现(图文)

  #安装 kafka  (1)检查 tdsql_hosts 文件  vim tdsql_hosts  [kafka] <----填入 kafka 集群的地址,kafka 的数量固定为 3  kafka1 ansible_ssh_host=10.85.10.51 <----kafka 机器的 java 虚拟机占用 3 个 g 以上内存  kafka2 ansible_ssh_host=10.85.10.52  kafka3 ansible_ssh_host=10.85.10.53  (2)修改多源同步变量  修改 group_vars/all 中下面的相关变量  vim group_vars/all  kafka_logdir: /mysql/log/kafka #日志要创建kafka目录  (3)执行安装多源同步  ansible-playbook -i tdsql_hosts kafka.yml  (4)验证是否安装成功  cd /data/application/kafka_2.12-2.3.1/logs  vim server.log <----查看 kafka 启动信息    #安装 consumer  (1) 查看 tdsql_hosts 文件  [consumer] <—填入消费者的地址,数量固定为 1  consumer1 ansible_ssh_host=10.240.139.35  (2)执行安装 consumer  ansible-playbook -i tdsql_hosts consumer.yml  (3)启动消费者服务  在 consumer 的机器上,使用下面命令启动消费者服务  cd /data/application/consumer/bin/  ./binlogconsumermgn --zklist 10.240.139.35:2181 --zkrootpath /noshard1 --kafkazklist 10.240.139.35:2181 --kafkazkrootpath /kafka --dev eth1  参数说明:  –zklist zk 的 ip:port,可以写多个 zk ip:port,多个之间用英文逗号分隔  –zkrootpath 注意整理 zk 根节点与部署的时候 group_vars/all 下的” zk_rootdir”一致  –kafkazklist kafka 所在 zk,通常与–zklist 一样  –kafkazkrootpath kafka 在 zk 上的根节点,固定是/kafka  –dev consumer 的网卡名称  例如:  ./binlogconsumermgn --zklist 10.85.10.51:2181,10.85.10.52:2181,10.85.10.53:2181 --zkrootpath /tdsqlzk --kafkazklist 10.85.10.51:2181,10.85.10.52:2181,10.85.10.53:2181 --kafkazkrootpath /kafka --dev ens38

  #安装 es  (1) 查看 tdsql_hosts 文件(不能与 chitu 同一台机器)  [es] <—填入 es 的地址,数量固定为 1  es1 ansible_ssh_host=10.85.10.54  修改变量文件 vim group_vars/all  es_mem: 8 <-----内存占用,如果这里写 8 则至少占用 8*2=16g 内存  es_log_days: 7 <-----日志保留天数  es_base_path: /data/application/es-install/es <-----es 数据存放路径  改为  es_mem: 2  es_log_days: 7  es_base_path: /mysql/data/es-install/es  (2)执行安装 es  ansible-playbook -i tdsql_hosts es_single.yml  (3)启停命令(在 es 机器上操作):  # stop  ps -ef |grep elasticsearch | grep -v ‘grep'| awk ‘{print $2}' | xargs kill -9  ps -ef |grep logstash | grep -v ‘grep'| awk ‘{print $2}' | xargs kill -9  ps -ef |grep es-cleaner | grep -v ‘grep'| awk ‘{print $2}' | xargs kill -9  ps -ef |grep ‘node/bin/node' | grep -v ‘grep'| awk ‘{print $2}' | xargs kill -9  # start  tdsql 用户启动:  cd /data/application/es-install/es/master/tools  ./start-elasticsearch.sh  cd /data/application/es-install/es/data/tools  ./start-elasticsearch.sh  root 用户启动:  cd /data/application/es-install/logstash/tools  ./start-logstash.sh  cd /data/application/es-install/es-cleaner  ./start-es-cleaner.sh  cd /data/application/es-install/kibana-5.6.4-linux-x86_64/bin/  nohup ./kibana &  # 检测是否正常启动  ps -ef |grep elasticsearch | grep -v ‘grep' |wc -l  输出为:4 <--------我的单个es 个数为0  ps -ef |grep logstash | grep -v ‘grep' |wc -l  输出为:2  ps -ef |grep es-cleaner | grep -v ‘grep' |wc -l  输出为:1  ps -ef |grep ‘node/bin/node' | grep -v ‘grep' |wc -l  输出为:1  (3)es 的验证及相关配置  输入 es ip 地址,打开 es 前台页面。  启动 es 后,需要把实例详情中的“网关审计数据是否入库”打开,选择“是”。  只有在打开这个开关后的日志才会入 es,为了可以定位问题,需要的话一定要尽早打开。

TDSQL 安装部署附图的实现(图文)

至此,tdsql所有模块已部署完成,后期可以直接使用和测试了。

到此这篇关于tdsql 安装部署附图的实现(图文)的文章就介绍到这了,更多相关tdsql 安装部署内容请搜索<计算机技术网(www.ctvol.com)!!>以前的文章或继续浏览下面的相关文章希望大家以后多多支持<计算机技术网(www.ctvol.com)!!>!

需要了解更多数据库技术:TDSQL 安装部署附图的实现(图文),都可以关注数据库技术分享栏目—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/dtteaching/630729.html

(0)
上一篇 2021年5月30日
下一篇 2021年5月30日

精彩推荐