目录

认识TDSQL

整体架构

组件介绍

安装部署

规划环境

简单部署

准备tdsql包

免密配置

准备数据目录

修改tdsql_hosts文件

修改group_vars配置(ansible变量)

安装ansible(主控机)

安装zk(part1_site)

初始化chitu

再次修改ansible(主要是增加proxy及端口)

执行安装part2_site

其他可选模块

总结


认识TDSQL

根据百度百科的搜索信息显示,2020年12月腾讯云数据库品牌升级,腾讯云原有的TDSQL、TBase、CynosDB三大产品线将统一升级为“腾讯云企业级分布式数据库TDSQL”。全新升级后的腾讯云TDSQL涵盖分布式、分析型、云原生等多引擎融合的完整数据库产品体系。

目前,截止到发文,笔者在官网上是看到了TDSQL MySQL版和TDSQL PostgreSQL版这两种相关产品。

当然,其衍生的系列产品还是蛮多的。大家可以根据需求去选择合适的产品。

笔者本次主要探究的是TDSQL MySQL版(私有云),官方文档见:

TDSQL MySQL版(私有云) 10.3.16.2.x-新版本新特性-文档中心-腾讯云-腾讯云

本文使用Tencent云数据库TDSQL交流群中提供的新版本tdsql_10.3.17.3.0进行体验,目的是为了初步走入TDSQL世界。

整体架构

整体看来,和传统的通用型商用关系型数据库产品不同,更像是一个数据库+大数据的分布式解决方案(一键部署方案)。

组件介绍

组件缩写

组件名称

备注

Zookeeper

zookeeper集群

高可用和一致性集群

Keeper(manager/scheduler)

TDSQL调度模块

主备切换/扩缩容/资源管理

OSS

TDSQL操作接口

提供http的操作接口

DB

数据库模块

包含mysql和agent

proxy

网关模块

帐号鉴权/sql解析和转发

monitor

监控采集模块

从zk定期采集实例动态数据

chitu

运营平台

实例管理/告警管理/权限控制

clouddba

扁鹊系统

sql优化和诊断

HDFS

冷备存储模块

备份binlog/slowlog/errlog

LVS

负载均衡模块

提供vip,对业务透明后端proxy

kafka

消息队列

是多源同步和es的基础组件

consumer

多源同步消费者

提供mysql、tdsql和oracle之间的同步方案

es

数据检索及分析工具

用于分析网关日志,帮助定位问题

onlineddl

在线表结构变更

用于在chitu页面变更tdsql实例的表结构

安装部署

规划环境

部署方式请参考官方的手册。

由于本地环境资源不足,这里构建出三个虚拟机,使用三台虚拟机来搭建一个最小的TDSQL集群(2台用于DB、1台用于调度和运营体系部署)。

备注:虚拟机环境均为:

2核+AMD Ryzen 5 PRO 4650U+CentOS7+2G内存,配置可以说是极低(所以可选的组件本文就不安装了)。

三台虚拟机规划如下:

组件

192.168.253.102

192.168.253.202

192.168.253.212

zookeeper

Y

Y

Y

scheduler

Y

Y

oss

Y

Y

chitu

Y

Y

monitor

Y

Y

db

Y

Y

proxy

Y

Y

hdfs

Y

...

...

...

...

Note: 值得注意的是,在本文的整个安装部署过程中,由于本地虚拟机资源实在低得让人抱歉,会出现一些意想不到的情况。笔者也只能无奈中进行解决和规避。如果在高质量环境(高配物理机)中,可以关注一下是否出现文中提及的类似问题,我想,应该会好很多。

简单部署

准备tdsql包

#下载tdsql_10.3.17.3.0.zip,解压

unzip tdsql_10.3.17.3.0.zip

免密配置

ssh-keygen -t rsa #在102机器上执行,这里不需要输入密码

ssh-copy-id 192.168.253.102

ssh-copy-id 192.168.253.202

ssh-copy-id 192.168.253.212

准备数据目录

#102机器

mkdir /data

#202和212机器

mkdir /data

mkdir /data1

修改tdsql_hosts文件

按照自己的规划去修改对应组件的配置即可。

修改group_vars配置(ansible变量)

vim group_vars/all

按官方说明配置即可。

安装ansible(主控机)

source scripts/environment_set

sh scripts/install_ansible.sh

ansible --version

安装zk(part1_site)

ansible-playbook -i tdsql_hosts playbooks/tdsql_part1_site.yml

等待一段时间后,报错了。

CPU数必须大于=2,调整cpu为2核后,又报错:

内存必须大于5G。

好吧,我的虚拟机根本不足以支撑这个环境检查。

那没办法了,为了体验下安装,只好修改检查的脚本了,看看后续能不能继续运行吧,毕竟我又不准备装kafka。

vim roles/tdsql_env_check/files/checkenv/docheck.sh

注释掉检查项。

后面检查其他机器时,也会报类似检查错误,如法炮制,修改脚本。

然后再执行zk安装。

资源不足的情况下,在注释掉CPU和MEM的检查后,是可以安装zk成功的。(在此,请提前准备好足够资源的部署环境吧,毕竟咱要处理的可是海量数据。笔者不在公司,手头的破笔记本也只能呜呼了。)

由于虚拟机配置实在差劲,等了N久之后,终于再次报错了。

我去看了一下./roles/tdsql_chitu/files/shell_scripts/install_php.sh脚本,发现安装PHP的步骤没有成功,也没有将对应的php源码包拷贝到/data/tools目录下,因此导致没有安装成功。 (哪块脚本没拷贝过去?还得上班,没时间去查了,就这样吧。)

决定手动编译一下。

将./group_files/tdsql_php/php.tar.gz拷贝到/data/tools下,按照tdsql脚本的configure进行编译安装。

cp  ./group_files/tdsql_php/php.tar.gz /data/tools/

cd /data/tools/

tar xvfp php.tar.gz

cd php

./configure --prefix=/usr/local/php --enable-fpm \

--with-fpm-user=nginx \

--with-fpm-group=nginx \

--with-libxml-dir \

--with-gd \

--with-jpeg-dir \

--with-png-dir \

--with-zlib-dir \

--enable-gd-jis-conv \

--enable-mysqlnd \

--enable-mbstring \

--with-mysqli=mysqlnd \

--with-pdo-mysql=mysqlnd \

--enable-sockets \

--enable-soap \

--with-curl \

--with-openssl

make && make install

弄好php后,再安装zk试试,没有问题了。

最后显示failed任务数为0表示安装成功。

初始化chitu

网页访问安装chitu模块的机器地址,初始化chitu。

http://192.168.253.202/tdsqlpcloud

1)进入安装向导页面

这边我得吐槽一下,用QQ浏览器腾讯自家的浏览器居然显示不出来页面。(如下)

2)环境检测

3)集群接入

4)集群初始化

逐一配置IDC、机型规格、设备资源、网关组等信息,然后创建分布式实例。

为方便,这块建了一个一主零备,请实际用多节点吧。(这块没显示出来网关?)

5)初始化非分布式实例

6)为系统配置数据库

这块遇到一个问题。

如果使用TDSQL实例,测试数据库连接会报错。如果使用普通数据库实例,则可以测试成功。

然后,开始安装。

7)进入软件授权管理

默认跳过此步骤即可。

完成安装,进入运营页面。

登录成功。

我这块看不到网关,很奇怪。(初步看,似乎是前面执行install proxy port脚本的时候发生了core,导致最后一步网关设置没完成)

但是同样是可以成功连接数据库的。

mysql -utdsqlpcloud -h192.168.253.202 -P14003 -p'password'

再次修改ansible(主要是增加proxy及端口)

示例:

执行安装part2_site

ansible-playbook -i tdsql_hosts playbooks/tdsql_part2_site.yml

没多久,就完成了。

其他可选模块

如hdfs,lvs,kafka,consumer,es等可选组件,由于时间以及资源的关系,本文就不再安装了。

总结

通过本文,熟悉了TDSQL的各组件模块和一键部署流程,基本完成了TDSQL私有云的本地部署,并可以成功访问数据库,达到了体验的目的。

最后,以一条SQL语句结尾吧。

[root@tdsql_test_zk2 tdsqlinstall]# mysql -utdsqlpcloud -h192.168.253.202 -P14003 -p'password'

Welcome to the MariaDB monitor.  Commands end with ; or \g.

Your MySQL connection id is 15743

Server version: 5.7.35-V2.0R681D005-v17-20210125-2105-log Source distribution

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MySQL [(none)]>

MySQL [(none)]> select version() from dual;

+-------------------------------------------+

| version()                                 |

+-------------------------------------------+

| 5.7.35-V2.0R681D005-v17-20210125-2105-log |

+-------------------------------------------+

1 row in set (0.00 sec)

MySQL [(none)]>

腾讯云数据库TDSQL——极速体验tdsql私有云相关推荐

  1. 腾讯云数据库 TDSQL-之初体验

    目录 一.简介 二.创建和使用TDSQL 1.登录TDSQL控制台 ,在实例列表,单击新建,进入购买页. 2.对数据库进行管理,点击管理 3.创建帐号 4. 在弹出的对话框,输入帐号名.密码.备注,确 ...

  2. 腾讯云数据库三大产品线统一升级为TDSQL,这是要集中力量干大事! ​

    责编 | 张红月 出品 | CSDN(ID:CSDNnews) 近日,腾讯云宣布了其数据库品牌 TDSQL 的全新战略升级计划及未来发展战略.至此,这家进入数据库赛道十多年的互联网大厂,在数据库发展的 ...

  3. 万众瞩目--腾讯云数据库TDSQL第一届征文正式大赛开启

    首届腾讯云数据库TDSQL征文大赛开启啦!只要您对腾讯云数据库TDSQL有兴趣.有研究.有想法,皆可参加.腾讯云数据库诚挚邀请您参与活动,分享和TDSQL邂逅的若干趣事,领取精美礼品. 腾讯云数据库T ...

  4. 进军东南亚市场,腾讯云数据库 TDSQL 助力印尼 BNC 银行数字化转型

    腾讯云数据库在助力金融核心系统分布式替换上,已经辐射到了东南亚市场. 东南亚最大的银行之一印尼BNC银行(Bank Neo Commerce)已正式完成新核心分布式迁移,使用腾讯云数据库TDSQL后, ...

  5. 腾讯云数据库TDSQL两大引擎全新升级,分析能力和Oracle兼容能力大幅提升

    6月,腾讯云数据库TDSQL PG版 Oracle兼容能力以及TDSQL-A两大引擎全新升级,Oracle兼容性和海量数据查询分析能力再上新台阶,并将在公有云全面开放. TDSQL是腾讯云企业级分布式 ...

  6. 腾讯云数据库三大产品线统一升级为TDSQL,这是要集中力量干大事

    责编 | 张红月 出品 | CSDN(ID:CSDNnews) 近日,腾讯云宣布了其数据库品牌 TDSQL 的全新战略升级计划及未来发展战略.至此,这家进入数据库赛道十多年的互联网大厂,在数据库发展的 ...

  7. TDSQL:解锁数据库前沿技术要点 | 腾讯云数据库DTCC 2021亮点回顾

    10月20日,一年一度的数据库技术交流盛会--DTCC 2021(第十二届中国数据库技术大会)在京圆满落幕. 大会以"数造未来"为主题,重点围绕数据架构.人工智能与大数据应用.传统 ...

  8. 腾讯云数据库TDSQL——博客数据库迁移实践

    目录 博客数据库迁移实践 前言 一.产品概述 二. TDSQL简介 1.整体架构 2.组件 三.进行TDSQL数据库数据导入 1.登入控制腾讯云的集群控制台 2.点击集群ID进入集群详细页,开启外部连 ...

  9. 数据3分钟丨华为正式捐赠欧拉操作系统;腾讯云数据库TDSQL将发布免费版;MatrixDB 4.3发布...

    数据 3 分钟 由 ACDU (中国 DBA 联盟) 与墨天轮联合出品的全新视频节目上线啦-三分钟带你来了解数据行业动态,节目内容主要包含数据行业最新的产品发布.公司大事件.行业新闻等. 本期内容概览 ...

最新文章

  1. 终于不用手撸了,解放你的双手,教你用数学建模的方式对答题卡进行有效识别
  2. php pdo 数组,php – 使用PDO更新数组
  3. nginx 配置404错误页面
  4. CSS从大图中抠取小图完整教程(background-position应用)
  5. Add a All Document Folder
  6. CSS 定位 四种定位
  7. 易优cms企业建站系统v1.5.1 含小程序源码
  8. 写给程序员和UI--Android的切图标准
  9. Pycocotools 报error: Microsoft Visual C++ 14.0 or greater is required. Get it with “Microsoft C++ Bui
  10. 在Letax中使用enumerate编辑 Step1 , Step2, ..... ,并设置缩进
  11. ubuntu升级22.04无法启动--ACPI BIOS Error
  12. 小程序 用户反馈_用户反馈如何提高我的应用程序的安全性
  13. Java实现 kiosk模式,java – 使用“kiosk模式”创建Phonegap应用程序
  14. webRtc-streamer简单使用-备份
  15. php取余函数,php 取余数详解
  16. Java导出excel表格,数字数据带E
  17. Java Game Resource
  18. 缺失数据填补基础方法(1)——k-Nearest Neighbors (kNN) 填补
  19. 2023辽宁大学新闻与传播硕士(MJC)专业考研成功经验分享
  20. 我的物联网项目(二十七) 分布式锁粗心导致大量阻塞

热门文章

  1. mysql geojson,查询geojson Mysql
  2. 软件工程师养成之类设计
  3. 重磅 | 产业大咖汇集 见证2017ICT产业多个重要奖项颁布
  4. 经纬度转geohash函数
  5. 计算机英语考试范围,2011.12月份。牡师院计算机系英语考试题范围(翻译)
  6. ElasticSearch高级篇
  7. 物业管理系统app开发的解决方案
  8. 解决Visio导出图片没有边界或者边缘留白过少的问题
  9. 新安装的C4D 无法直接拖入obj文件和贴图
  10. 【资料合集】2017云栖大会·上海峰会回顾合集:PDF下载+现场视频