Introduction
0.概述
0.1 dble 简介与整体架构
0.2 dble对MyCat做的增强
0.3 快速开始
0.3.1 docker镜像快速开始
0.3.2 docker-compose快速开始
0.4 数据拆分简介
1.配置文件
1.1 cluster.cnf
1.2 bootstrap.cnf
1.3 user.xml
1.4 db.xml
1.5 sharding.xml
1.6 log4j2.xml
1.7 全局序列配置
1.7.1 MySQL offset-step方式
1.7.2 时间戳方式(类Snowflake)
1.7.3 分布式时间戳方式(类Snowflake)
1.7.4 分布式offset-step方式
1.8 cache配置
1.8.1 cache配置
1.8.2 ehcache配置
1.9 自定义拆分算法
1.10 版本变更
1.11 自定义告警
1.12 自定义全局表一致性检查
1.13 Schema下默认拆分表
2.功能描述
2.0 管理端元数据库
2.0.1 dble_config表
2.1 管理端命令
2.1.1 select命令
2.1.2 set命令
2.1.3 show命令
2.1.4 switch命令
2.1.5 kill命令
2.1.6 stop命令
2.1.7 reload命令
2.1.8 rollback命令(已废弃)
2.1.9 offline命令
2.1.10 online命令
2.1.11 file命令(已废弃)
2.1.12 log命令(已废弃)
2.1.13 配置检查命令
2.1.14 pause & resume 命令
2.1.15 慢查询日志相关命令
2.1.16 创建/删除物理库命令
2.1.17 check @@metadata命令
2.1.18 release @@metadata命令
2.1.19 split命令
2.1.20 flow_control 命令
2.1.21 刷新连接池命令
2.1.22 脱离集群命令
2.2 全局序列
2.2.1 MySQL offset-step方式
2.2.2 时间戳方式
2.2.3 分布式时间戳方式
2.2.4 分布式offset-step方式
2.3 读写分离
2.4 注解
2.5 分布式事务
2.5.1 XA事务概述
2.5.2 XA事务的提交以及回滚
2.5.3 XA事务的后续补偿以及日志清理
2.5.4 XA事务的记录
2.5.5 一般分布式事务概述
2.5.6 检测疑似残留XA事务
2.6 连接池管理
2.7 内存管理
2.8 集群同步协调&状态管理
2.9 grpc 告警
2.10 表meta数据管理
2.10.1 Meta信息初始化
2.10.2 Meta信息维护
2.10.3 一致性检测
2.10.4 View Meta
2.11 统计管理
2.11.1 查询条件统计
2.11.2 表状态统计
2.11.3 用户状态统计
2.11.4 命令统计
2.11.5 heartbeat统计
2.11.6 网络读写统计
2.11.7 快速sql统计命令
2.12 故障切换
2.13 前后端连接检查
2.14 ER表
2.15 global表
2.16 缓存的使用
2.17 执行计划
2.18 性能观测和调整
2.19 智能计算reload
2.20 慢查询日志
2.21 单条SQL性能trace
2.22 KILL @@DDL_LOCK
2.23 外部高可用联动
2.23.1 外部后端MYSQL-HA连接
2.23.2 命令的使用说明
2.23.3 命令的实现细节
2.23.4 简单的HA交互使用案例
2.24 超时控制
2.25 流量控制
2.26 client_found_rows权能标志
2.27 general日志
2.28 sql统计
2.29 load data批处理模式
2.30 in子查询是否转join的说明
2.31 DDL日志解读
2.32 分析用户
2.33 hint指定执行计划
2.34 安全加密
2.34.1 SSL自签名证书生成
2.34.2 DBLE启用SSL
2.35 堆外内存泄露监控
2.36 延迟检测
2.37 审计日志
2.38 tcp相关参数
2.39 HTAP 快速上手指南
2.40 dble中线程处理(print、kill、recover)
3.语法兼容
3.1 DDL
3.1.1 DDL&Table Syntax
3.1.2 DDL&View Syntax
3.1.3 DDL&Index Syntax
3.1.4 DDL透传
3.1.5 DDL&Database_Syntax
3.1.6 ONLINE DDL
3.2 DML
3.2.1 INSERT
3.2.2 REPLACE
3.2.3 DELETE
3.2.4 UPDATE
3.2.5 SELECT
3.2.6 SELECT JOIN syntax
3.2.7 SELECT UNION Syntax
3.2.8 SELECT Subquery Syntax
3.2.9 LOAD DATA
3.2.10 不支持的DML语句
3.3 Prepared SQL Syntax
3.4 Transactional, Savepoint and Locking Statements
3.4.1 一般事务语法
3.4.2 含隐式提交语句
3.4.3 SAVEPOINT语法
3.4.4 Lock&unlock语法
3.4.5 SET TRANSACTION Syntax
3.4.6 XA 事务语法
3.4.7 其它不支持的事务语法
3.5 DAL
3.5.1 SET
3.5.2 SHOW
3.5.3 KILL
3.5.4 不支持的DAL语句
3.6 存储过程支持方式
3.7 Utility Statements
3.8 Hint
3.9 其他不支持语句
3.10 函数与操作符支持列表(alpha版本)
3.11 导入导出方式
4.协议兼容
4.1 基本包
4.2 连接建立
4.3 文本协议
4.4 二进制协议 (Prepared Statements)
4.5 服务响应包
5.已知限制
5.1 druid引发的限制
5.2 其他已知限制
6.与MySQL Server的差异化描述
6.1 事务中遇到主键冲突需要显式回滚
6.2 INSERT不能显式指定自增序列
6.3 增加"show all tables"
6.4 去除了增删改的message信息
6.5 information_schema等库的支持
7.开发者须知
7.1 SQL开发编写原则
7.2 dble连接Demo
7.3 其他注意事项
8.配置示例
8.1 时间戳方式全局序列的配置
8.2 MySQL-offset-step 方式全局序列的配置
9.sysbench压测dble示例
9.1 测试环境及架构
9.2 修改dble配置
9.3 使用sysbench进行压测
A.Faq
A.1 ErrorCode
max Connections
Out Of Memory Error
The Problem Of Hint
NestLoop Parameters Lead To Temptable Exception
Can't Get Variables From ShardingNode
Port already in use:1984
Sharding Column Cannot Be Null
A.2 原理解释
How To Use Explain To Resolve The Distribution Rules Of Group Gy
Hash And ConsistentHashing And Jumpstringhash
A.3 使用说明
ToBeContinued2
Published with GitBook
3.1 DDL
3.1 DDL
DDL 包含以下几部分内容
注意,当DDL执行时,涉及到的相同的表上的DML和DDL操作将会报错。
3.1.1 DDL&Table Syntax
3.1.2 DDL&View Syntax
3.1.3 DDL&Index Syntax
3.1.4 DDL透传
results matching "
"
No results matching "
"