开发指南—常见问题—DDL常见问题

简介: 本文汇总了PolarDB-X上常见的DDL执行问题。

创建表执行出错

DDL的执行是一个分布式处理过程,出错可能导致各个分片表结构不一致,所以需要进行手动清理,详细操作步骤如下:

  1. PolarDB-X会提供基本的错误描述信息,比如语法错误等。如果错误信息太长,则会提示您使用SHOW WARNINGS来查看每个分库执行失败的原因。
  2. 执行SHOW TOPOLOGY命令来查看物理表的拓扑结构。
SHOW TOPOLOGY FROM multi_db_multi_tbl;
 +------+-----------------+-----------------------+
 | ID   | GROUP_NAME      | TABLE_NAME            |
 +------+-----------------+-----------------------+
 |    0 | corona_qatest_0 | multi_db_multi_tbl_00 |
 |    1 | corona_qatest_0 | multi_db_multi_tbl_01 |
 |    2 | corona_qatest_0 | multi_db_multi_tbl_02 |
 |    3 | corona_qatest_1 | multi_db_multi_tbl_03 |
 |    4 | corona_qatest_1 | multi_db_multi_tbl_04 |
 |    5 | corona_qatest_1 | multi_db_multi_tbl_05 |
 |    6 | corona_qatest_2 | multi_db_multi_tbl_06 |
 |    7 | corona_qatest_2 | multi_db_multi_tbl_07 |
 |    8 | corona_qatest_2 | multi_db_multi_tbl_08 |
 |    9 | corona_qatest_3 | multi_db_multi_tbl_09 |
 |   10 | corona_qatest_3 | multi_db_multi_tbl_10 |
 |   11 | corona_qatest_3 | multi_db_multi_tbl_11 |
 +------+-----------------+-----------------------+
 12 rows in set (0.21 sec)
  1. 执行CHECK TABLE tablename语句来查看逻辑表是否创建成功。例如下面的例子展示了multi_db_multi_tbl的某个物理分表没有创建成功时的情况。
mysql> check table multi_db_multi_tbl;

+-------------------------------------------------+-------+----------+---------------------------------------------------------------------------+
| TABLE | OP | MSG_TYPE | MSG_TEXT |
+-------------------------------------------------+-------+----------+---------------------------------------------------------------------------+
| andor_mysql_qatest. multi_db_multi_tbl | check | Error | Table 'corona_qatest_0. multi_db_multi_tbl_02' doesn't exist |
+-------------------------------------------------+-------+----------+---------------------------------------------------------------------------+
1 row in set (0.16 sec)
  1. 使用幂等的方式重新执行建表或删表操作,该操作会创建或删除剩余的物理表。
CREATE TABLE IF NOT EXISTS table1
(id int, name varchar(30), primary key(id))
dbpartition by hash(id);
DROP TABLE IF EXISTS table1;

建索引失败或加列失败

建索引失败或加列失败的处理方法跟上面建表失败的处理类似,详情请参见如何正确处理DDL异常

相关文章
|
2月前
|
人工智能 监控 安全
员工使用第三方AI办公的风险与解决方案:从三星案例看AI的数据防泄漏
生成式AI提升办公效率,也带来数据泄露风险。三星、迪士尼案例揭示敏感信息外泄隐患。AI-FOCUS团队建议构建“流式网关+DLP”防护体系,实现分级管控、全程审计,平衡安全与创新。
|
8月前
|
弹性计算 安全 NoSQL
安全体检有必要,这是信息安全生命线
对于云上系统责任人而言,定期执行安全体检应成为基础运维规程。建议至少每周执行一次全量漏洞检测,并在每次架构变更后进行专项检查。安全体检中的告警和高危项需在48小时内完成修复,中危项修复周期不应超过7个自然日。通过将安全体检与云安全中心相结合,用户可构建"主动防御+持续监测"的纵深防护体系,使整体安全水位提升至行业基准线的1.5倍以上。
243 2
安全体检有必要,这是信息安全生命线
|
JavaScript
TS语法忽略、eslint忽略
TS语法忽略、eslint忽略
316 1
|
5月前
|
关系型数据库 Linux Nacos
Rocky Linux 部署 Docker 和 NACOS 实例
本文介绍在阿里云环境下基于 Rocky Linux 搭建 Docker 并部署 Nacos 的完整流程。涵盖 Docker 安装、镜像加速配置、网络设置及 MySQL 与 Nacos 容器的创建,适用于开发与生产环境。
804 1
|
10月前
|
人工智能 开发者
钉钉AI助理接入DeepSeek,深度思考,能力更强
钉钉AI助理全面接入DeepSeek系列模型,包括R1、V3和R1-qwen32b蒸馏版。用户可在钉钉上创建AI助理时选择这些模型,并使用全新模板一键创建、发布和使用基于DeepSeek模型的AI助理。PC端和移动端均提供了简便的操作步骤来创建和发布AI助理,无需复杂配置即可实现深度思考和联网查询功能。此次更新旨在提升工作效率,提供更丰富的选择和更智能的体验。
1030 14
|
数据可视化 前端开发 开发者
花样玩转“所见即所得”的可视化开发UI
【7月更文挑战第12天】WYSIWYG)的可视化开发UI带来的便利与创新: 降低开发门槛: 即使无编程基础也能通过直观操作快速构建界面。 提高开发效率: 实时预览减少代码与预览间的频繁切换。 促进团队协作: 设计师与开发者可在同一界面交流修改。 增加创意实现: 自由尝试布局、颜色与交互方式以验证想法。 此类工具(如Adobe XD、Figma、Sketch等)正变革软件开发方式,带来更高效、具创意及易操作的体验。
410 3
|
Java
java中return,break以及continue的用法
java中return,break以及continue的用法
310 10
|
网络架构
合理设置 WLAN 频道以减少干扰
【8月更文挑战第24天】
501 0
|
机器学习/深度学习 存储 人工智能
生成式 AI 与 LangCHain(一)(1)
生成式 AI 与 LangCHain(一)
579 1
|
数据挖掘 C++
【SPSS】单样本K-S检验和两独立样本K-S检验详细操作教程(附案例实战)
【SPSS】单样本K-S检验和两独立样本K-S检验详细操作教程(附案例实战)
1833 0