

# 使用人工智能工具进行代理式迁移
<a name="dsql-agentic-migration"></a>

人工智能编码代理可以通过分析架构、转换代码以及使用内置安全检查执行 DDL 迁移，来加快向 Aurora DSQL 迁移。

## 使用 Kiro 进行迁移
<a name="dsql-kiro-migration"></a>

像 [Kiro](https://kiro.dev/) 这样的编码代理有助于您分析 PostgreSQL 代码并将其迁移到 Aurora DSQL：
+ **架构分析：**上传您现有的架构文件，并要求 Kiro 确定潜在的兼容性问题和提出替代方案
+ **代码转换：**提供您的应用程序代码，并要求 Kiro 协助重构触发逻辑、将序列替换为 UUID 或修改事务模式
+ **迁移规划：**要求 Kiro 根据您的特定应用程序架构制定分步迁移计划
+ **DDL 迁移：**使用带有内置安全检查和用户验证功能的表重新创建模式执行架构修改

**提示示例：**

```
"Analyze this PostgreSQL schema for DSQL compatibility and suggest alternatives for any unsupported features"

"Help me refactor this trigger function into application-level logic for DSQL migration"

"Create a migration checklist for moving my Django application from PostgreSQL to DSQL"

"Drop the legacy_status column from the orders table"

"Change the price column from VARCHAR to DECIMAL in the products table"
```

## 使用表重新创建进行 DDL 迁移
<a name="dsql-ddl-migration-pattern"></a>

将人工智能代理与 Aurora DSQL MCP 服务器结合使用时，某些 ALTER TABLE 操作使用可安全迁移数据的*表重新创建模式*。代理处理复杂性，同时让您随时了解每个步骤的情况。

以下操作使用表重新创建模式：


| 操作 | 方法 | 
| --- | --- | 
| DROP COLUMN | 从新表中排除列 | 
| ALTER COLUMN TYPE | 在迁移期间强制转换数据类型 | 
| ALTER COLUMN SET/DROP NOT NULL | 在新表定义中更改约束 | 
| ALTER COLUMN SET/DROP DEFAULT | 在新表定义中定义默认值 | 
| ADD/DROP CONSTRAINT | 在新表中包含或移除约束 | 
| MODIFY PRIMARY KEY | 使用唯一性验证定义新 PK | 
| 拆分/合并列 | 使用 SPLIT\_PART、SUBSTRING 或 CONCAT | 

无需重新创建表，即可直接支持以下 ALTER TABLE 操作：
+ `ALTER TABLE ... RENAME COLUMN`：重命名列
+ `ALTER TABLE ... RENAME TO`：重命名表
+ `ALTER TABLE ... ADD COLUMN`：添加新列

**安全功能：**在执行 DDL 迁移时，人工智能代理会在任何破坏性操作（例如 DROP TABLE）之前，提供迁移计划、验证数据兼容性、确认行计数并请求明确批准。

**批量迁移：**对于超过 3000 行的表，代理会自动以 500-1000 行的增量进行批量迁移，以保持在事务限制范围内。

## Aurora DSQL MCP 服务器
<a name="dsql-mcp-tools"></a>

借助 Aurora DSQL 模型上下文协议（MCP）服务器，人工智能助手能够直接连接到 Aurora DSQL 集群并搜索 Aurora DSQL 文档。这样，人工智能就能够：
+ 分析您的现有架构并提出迁移更改建议
+ 使用表重新创建模式执行 DDL 迁移
+ 在迁移期间测试查询并验证兼容性
+ 根据最新的 Aurora DSQL 文档提供准确、最新的指导

 要将 Aurora DSQL MCP 服务器与其它人工智能助手一起使用，请参阅 [Aurora DSQL MCP 服务器](SECTION_aurora-dsql-mcp-server.md)的设置说明。