开发者手册概览

本文是为应用程序开发者所编写的,如果你对 TiDB 的内部原理感兴趣,或希望参与到 TiDB 的开发中来,那么可前往阅读 TiDB Kernel Development Guide 来获取更多 TiDB 的相关信息。

本手册将展示如何使用 TiDB 来快速构建一个应用,并且阐述使用 TiDB 期间可能出现的场景以及可能会遇到的问题。因此,在阅读此页面之前,建议你先行阅读 TiDB 数据库快速上手指南

此外,你还可以通过视频的形式学习免费的 TiDB SQL 开发在线课程

TiDB 基础

在你开始使用 TiDB 之前,你需要了解一些关于 TiDB 数据库的一些重要工作机制:

TiDB 事务机制

TiDB 支持分布式事务,而且提供乐观事务悲观事务两种事务模式。TiDB 当前版本中默认采用 悲观事务 模式,这让你在 TiDB 事务时可以像使用传统的单体数据库 (如: MySQL) 事务一样。

你可以使用 BEGIN 开启一个事务,或者使用 BEGIN PESSIMISTIC 显式的指定开启一个悲观事务,使用 BEGIN OPTIMISTIC 显式的指定开启一个乐观事务。随后,使用 COMMIT 提交事务,或使用 ROLLBACK 回滚事务。

TiDB 会为你保证 BEGIN 开始到 COMMITROLLBACK 结束间的所有语句的原子性,即在这期间的所有语句全部成功,或者全部失败。用以保证你在应用开发时所需的数据一致性。

若你不清楚乐观事务是什么,请暂时不要使用它。因为使用乐观事务的前提是需要应用程序可以正确的处理 COMMIT 语句所返回的所有错误。如果不确定应用程序如何处理,请直接使用悲观事务

应用程序与 TiDB 交互的方式

TiDB 高度兼容 MySQL 协议,TiDB 支持大多数 MySQL 的语法及特性,因此大部分的 MySQL 的连接库都与 TiDB 兼容。如果你的应用程序框架或语言无 PingCAP 的官方适配,那么建议你使用 MySQL 的客户端库。同时,也有越来越多的三方数据库主动支持 TiDB 的差异特性。

因为 TiDB 兼容 MySQL 协议,且兼容 MySQL 语法,因此大多数支持 MySQL 的 ORM 也兼容 TiDB。

扩展阅读