
国产数据库-TIDB
TIDB数据库运维
戒掉贪嗔痴
10年以上DBA从业经验,Oracle ACE,中国DBA联盟成员,青学会专家顾问,Oracle,MySQL,PostgreSQL DBA,大数据运维工程师。
熟悉20种数据库的运维及管理:横跨关系数据库,NoSQL数据库,搜索引擎,大数据等。
获得IT类认证十几张。
擅长数据库系统架构涉及,容量规划,灾备系统建设,故障诊断及性能优化。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
TIDB 对象命名规范
业务运营临时统计表(tmp_st_{business code}_{creator abbreviation}_{date})用于规范数据库对象的命名,如数据库(DATABASE)、表(TABLE)、索引(INDEX)、用户(USER)等的命名约定。账期归档表(t_crm_ec_record_YYYY{MM}{dd})备份表(bak_t_crm_relation_20170425)临时表(tmp_t_crm_relation_0425)普通索引:idx_{表名称简写}_{字段名简写}原创 2025-07-24 11:48:44 · 188 阅读 · 0 评论 -
TIDB 中的超时问题
max_execution_time ,控制连接中 SQL 执行的超时时间,仅对“只读”语句生效,默认值是 0,即允许连接无限忙碌(一个 SQL 语句执行无限的长的时间)。但是由于 TiDB 服务是负载均衡的,为防止 KILL 命令在错误的 TiDB 节点上终止连接,需要注意的是,此变量的配置是立刻影响全局的,调大它会增加当前所有快照的生命时长,调小它也会立即缩短所有快照的生命时长。TiDB 的事务的实现采用了 MVCC(多版本并发控制)机制,当新写入的数据覆盖旧的数据时,旧的数据不会被替换掉,原创 2025-07-24 11:28:19 · 262 阅读 · 0 评论 -
TIDB 结果集不稳定问题
1.TIDB 结果集不稳定问题。原创 2025-07-04 13:58:55 · 117 阅读 · 0 评论 -
TIDB 唯一序列号生成方案
1.TIDB 唯一序列号生成方案。原创 2025-07-04 11:50:41 · 106 阅读 · 0 评论 -
TIDB 避免隐式类型转换
1.TIDB 避免隐式类型转换。原创 2025-07-04 11:34:08 · 114 阅读 · 0 评论 -
TIDB 索引最佳实践
1.TIDB 索引最佳实践。原创 2025-07-04 11:14:55 · 291 阅读 · 0 评论 -
TIDB 性能调优最佳实践
1.TIDB 性能调优最佳实践。原创 2025-07-03 14:36:27 · 232 阅读 · 0 评论 -
TIDB SQL 性能调优
1.TIDB SQL 性能调优。原创 2025-07-03 14:26:52 · 107 阅读 · 0 评论 -
TIDB SQL 优化概览
一般情况下,TiDB 的 cost-based 优化器会自动选择最优的 Join 类型。使用合适的索引,对于 SQL 中的 WHERE 子句中的 Column,需要保证有相应索引,否则这将是一个全表扫的语句,性能会很差。Schema 设计:根据你的业务负载类型,为了避免事务冲突或者是热点,你可能需要对表的 Schema 做出一些调整。使用合适的 Join 类型。根据查询中各个表的大小和关联性,选择合适的 Join 类型也会非常重要。扫描的数据越少越好,最好能只扫描需要的数据,避免扫描多余的数据。原创 2025-07-03 14:25:44 · 211 阅读 · 0 评论 -
TIDB 事务错误处理
1.TIDB 事务错误处理。原创 2025-07-03 14:10:52 · 79 阅读 · 0 评论 -
TIDB 事务限制
1.TIDB 事务限制。原创 2025-07-03 13:58:30 · 93 阅读 · 0 评论 -
TIDB 乐观事务和悲观事务
1.TIDB 乐观事务和悲观事务。原创 2025-07-03 13:39:23 · 316 阅读 · 0 评论 -
TIDB 事务概览
1.TIDB 事务概览。原创 2025-07-03 09:34:35 · 88 阅读 · 0 评论 -
TIDB 向量搜索的一些限制
当向 TiDB 中的向量列插入或存储双精度浮点数时,TiDB 会将这些双精度浮点数自动转换为单精度浮点数。不支持将带有向量数据类型的表恢复至 v8.4.0 之前的 TiDB 集群。TiDB Data Migration (DM) 不支持迁移或同步 MySQL 9.0 的向量数据类型到 TiDB。目前 TiDB 不支持将向量类型的列修改为其他数据类型(如 JSON、VARCHAR 等)。TiCDC 在同步向量数据到不支持向量数据类型的下游时会修改数据类型。向量列不能作为唯一索引或者唯一索引的一部分。原创 2025-07-03 09:15:53 · 359 阅读 · 0 评论 -
TIDB 优化向量搜索性能的建议
1.TIDB 优化向量搜索性能的建议。原创 2025-07-03 09:05:59 · 105 阅读 · 0 评论 -
TIDB 使用 Python 开始向量搜索
1.TIDB 使用 Python 开始向量搜索。原创 2025-07-03 08:54:15 · 114 阅读 · 0 评论 -
使用SQL 进行TIDB向量搜索
1.使用SQL 进行TIDB向量搜索。原创 2025-07-03 08:39:01 · 88 阅读 · 0 评论 -
TIDB 向量搜索概述
1.TIDB 向量搜索概述。向量搜索的工作原理。原创 2025-07-02 18:08:43 · 138 阅读 · 0 评论 -
TIDB HTAP TIFLASH引擎的使用
【代码】TIDB HTAP TIFLASH引擎的使用。原创 2025-07-02 17:49:53 · 109 阅读 · 0 评论 -
TIDB Stale Read (最近历史数据读取或不新鲜数据读取)
【代码】TIDB Stale Read (最近历史数据读取或不新鲜数据读取)原创 2025-07-02 17:22:41 · 79 阅读 · 0 评论 -
TIDB Follower Read
【代码】TIDB Follower Read。原创 2025-07-02 17:21:48 · 65 阅读 · 0 评论 -
TIDB CTE 公共表表达式
1.TIDB CTE 公共表表达式。原创 2025-07-02 14:32:33 · 80 阅读 · 0 评论 -
TIDB 临时表
1.TIDB 临时表。原创 2025-07-02 10:39:14 · 82 阅读 · 0 评论 -
TIDB 的视图
1.TIDB 的视图。原创 2025-07-02 10:38:34 · 84 阅读 · 0 评论 -
TIDB 查询结果分页
1.TIDB 查询结果分页。原创 2025-07-02 08:56:42 · 93 阅读 · 0 评论 -
tidb 的子查询
1.tidb 的子查询。原创 2025-07-01 18:10:01 · 117 阅读 · 0 评论 -
TIDB 多表连接查询 JOIN
1.TIDB 多表连接查询 JOIN。原创 2025-07-01 17:50:09 · 94 阅读 · 0 评论 -
tidb 通过JAVA查询数据
1.tidb 查询数据。原创 2025-07-01 17:36:56 · 92 阅读 · 0 评论 -
TIDB 预处理语句
1.TIDB 预处理语句。原创 2025-07-01 17:31:22 · 73 阅读 · 0 评论 -
TIDB 使用 TTL (Time to Live) 定期删除过期数据
1.TIDB 使用 TTL (Time to Live) 定期删除过期数据。原创 2025-07-01 17:17:41 · 126 阅读 · 0 评论 -
TIDB 删除数据需要注意的事项
1.TIDB 删除数据需要注意的事项。原创 2025-07-01 15:44:58 · 120 阅读 · 0 评论 -
TIDB 的数据更新需要注意的事项
需要更新大量行(数万或更多)的时候,使用批量更新,这是因为 TiDB 单个事务大小限制为 txn-total-size-limit(默认为 100MB),如果您需要更新大量的行,比如数万甚至更多行,那么建议不要一次性进行完整的更新,而是每次迭代更新一部分,直到所有行全部更新。但如果你需要更新大量行(数万或更多)的时候,建议使用一个迭代,每次都只更新一部分数据,直到更新全部完成。需要更新表中多行的数据,可选择使用 UPDATE,并使用 WHERE 子句过滤需要更新的数据。或产生大量冲突(乐观事务)。原创 2025-07-01 15:33:17 · 374 阅读 · 0 评论 -
TIDB 创建二级索引
1.TIDB 创建二级索引。原创 2025-06-30 17:00:08 · 316 阅读 · 0 评论 -
TIDB 模式概述
为避免和通用术语数据库 (Database) 混淆,因此将逻辑对象称为数据库 (Database),TiDB 仍使用原名称,并将 TiDB 的部署实例称为集群 (Cluster)。TiDB 查询使用索引来更有效的查找表内的数据,同时可以给出特定列的值。因为 TiDB 使用与 MySQL 兼容的语法,在此语法下,模式 (Schema) 仅代表通用术语定义,并无逻辑对象定义,视图: 视图是一张虚拟表,该虚拟表的结构由创建视图时的 SELECT 语句定义,TiDB 目前不支持物化视图。具体请参考索引和约束。原创 2025-06-30 16:44:19 · 293 阅读 · 0 评论 -
TIDB 连接池与连接参数
1.TIDB 连接池与 连接参数。原创 2025-06-30 16:43:45 · 116 阅读 · 0 评论 -
使用 TiDB Cloud Serverless 构建 TiDB 集群
在对话框中,选择你需要的连接方式和操作系统并保存对应的连接字符串。你可以使用这个默认集群进行后续操作,也可以自行创建一个新的 TiDB Cloud Serverless 集群。如果没有设置 root 密码,你将无法连接到集群。对于新注册的用户,TiDB Cloud 会自动为你创建一个 TiDB Cloud Serverless 集群。如果你的实际输出与预期输出一致,表示你已经在 TiDB Cloud 上成功地运行了 SQL 语句。若未安装 MySQL 客户端,请选择自己的操作系统,按以下步骤安装。原创 2025-06-20 14:24:06 · 320 阅读 · 0 评论 -
TIDB 事务简介
因此大部分的 MySQL 的连接库都与 TiDB 兼容。如果你的应用程序框架或语言无 PingCAP 的官方适配,那么建议你使用 MySQL 的客户端库。同时,也有越来越多的三方数据库主动支持 TiDB 的差异特性。因为 TiDB 兼容 MySQL 协议,且兼容 MySQL 语法,因此大多数支持 MySQL 的 ORM 也兼容 TiDB。结束间的所有语句的原子性,即在这期间的所有语句全部成功,或者全部失败。模式,这让你在 TiDB 事务时可以像使用传统的单体数据库 (如: MySQL) 事务一样。原创 2025-06-20 14:18:37 · 256 阅读 · 0 评论 -
TIDB HTAP 适用场景
TiDB HTAP 可以满足企业海量数据的增产需求、降低运维的风险成本、与现有的大数据栈无缝缝合,从而实现数据资产价值的实时变现。以下是三种 HTAP 典型适用场景:混合负载场景当将 TiDB 应用于在线实时分析处理的混合负载场景时,开发人员只需要提供一个入口,TiDB 将自动根据业务类型选择不同的处理引擎。实时流处理场景当将 TiDB 应用于实时流处理场景时,TiDB 能保证源源不断流入系统的数据实时可查,同时可兼顾高并发数据服务与 BI 查询。数据中枢场景。原创 2025-06-20 14:07:14 · 272 阅读 · 0 评论 -
TIDB SQL 基本操作 -初体验
成功部署 TiDB 集群之后,便可以在 TiDB 中执行 SQL 语句了。因为 TiDB 兼容 MySQL,你可以使用 MySQL 客户端连接 TiDB,并且可以直接执行 MySQL 语句。SQL 是一门声明性语言,它是数据库用户与数据库交互的方式。它更像是一种自然语言,好像在用英语与数据库进行对话。本文档介绍基本的 SQL 操作。完整的 TiDB SQL 语句列表,参见。原创 2025-06-19 17:04:35 · 830 阅读 · 0 评论 -
HTAP 快速构建并体验-非生产
指定后,TiDB 将创建对应的 TiFlash 副本。从输出中可以看到,一共生成了八张表,最大的一张表数据量有 600 万行(由于数据是工具随机生成,所以实际的数据生成量以 SQL 实际查询到的值为准)。这是一个运送优先权查询,用于给出在指定日期之前尚未运送的订单中收入最高订单的优先权和潜在的收入。在本示例中,此查询将列出潜在查询收入在前 10 的尚未运送的订单。此外,你也可以指定整个查询的各个计算部分都只使用 TiFlash 引擎,详情请参阅。中的 SQL 语句,你可以感受 TiDB HTAP 的表现。原创 2025-06-19 16:50:38 · 754 阅读 · 0 评论