问题标签 [aws-dms]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
975 浏览

amazon-athena - Athena 无法从 AWS DMS 解析 CSV 文件

我已将 DMS 配置为将数据从 MySQL RDS 连续复制到 S3。这将创建两种类型的 CSV 文件:完整加载和更改数据捕获 (CDC)。根据我的测试,我有以下文件:

DMS 正常运行后,我触发 AWS Glue Crawler 为包含 MySQL 复制文件的 S3 存储桶构建数据目录,因此 Athena 用户将能够在我们基于 S3 的数据湖中构建查询。

不幸的是,爬虫没有为存储在 S3 中的表构建正确的表模式。对于上面的示例,它为 Athena 创建了两个表:

文件20180405_205807186_csv.gz包含一行更新,但爬虫无法合并这两个信息(从LOAD001.csv.gz获取第一个加载并进行 20180405_205807186_csv.gz 中描述的更新)。

我还尝试在 Athena 控制台中创建表,如本博文所述:https ://aws.amazon.com/pt/blogs/database/using-aws-database-migration-service-and-amazon-athena -to-replicate-and-run-ad-hoc-queries-on-a-sql-server-database/。但它不会产生所需的输出。

来自博客文章:

当您使用 Amazon Athena(本文后面)查询数据时,您只需将文件夹位置指向 Athena,查询结果包括通过组合来自两个文件的数据而插入的现有数据和新数据。

我错过了什么吗?

0 投票
1 回答
401 浏览

sql - AWS DMS S3 到 SQL Server 迁移 - 将 DATETIME2 指定为 SQL Server 数据类型

我正在尝试使用 AWS Database Migration Service (DMS) 从 S3 填充 SQL Server 2014 表。我有以下 S3 架构:

当我运行迁移任务时,我收到以下溢出错误,因为 SQL Server 不允许将2018-04-11 08:02:16.788027S3 中的值插入到 SQL ServerDATETIME列中。

我的问题是,有没有一种方法可以告诉 AWS DMS在 SQL Server 中将TIMESTAMPS3 数据创建为DATETIME2列?注意:每次迁移运行时,都会删除并重新创建表。我可以通过使用 HireDate as 在 SQL-Server 中手动创建表来解决此问题DATETIME2,然后将 DMS 迁移“目标表准备模式”设置为TRUNCATE而不是删除/创建,但这对于我当前的解决方案来说并不理想。

0 投票
1 回答
92 浏览

amazon-web-services - DMS - 进行中的复制

我计划在我们的本地数据库和云数据库之间使用 DMS 复制数据。云数据库将拥有用于执行分析的数据。数据库是异构的。我可以使用 DMS 在本地数据库和云数据库之间进行持续复制吗?复制会接近实时吗?它会对其他应用程序访问的本地数据库造成任何性能影响吗?我假设在迁移数据时不需要关闭应用程序。

0 投票
2 回答
772 浏览

amazon-web-services - AWS Schema conversion tool - Connection error

Am trying to migrate my oracle database to a AWS Redshift cluster, and am following the steps as documented here in the AWS website.

When I try to create a project in AWS Schema Conversion Tool, configure for Oracle (running in my laptop), am unable to get successfull connection, and here is the error

Connection to 'jdbc:oracle:thin:@localhost:1521:orcl' wasn't established. ERROR: code: 28009; message: ORA-28009: connection as SYS should be as SYSDBA or SYSOPER

Please note that in Schema Conversion Tool project page, I don't see a section "Connect as SYSDBA" option? I tried with some other sample users such as SCOTT, and I get Insufficient privileges.

enter image description here With the same configurations am able to connect from a sql client, SQLWorkbench.

Appreciate any help please. Thanks

0 投票
1 回答
1227 浏览

amazon-web-services - AWS DMS 的安全组

我正在尝试在我的本地数据库和云之间设置 DMS。当我尝试设置云实例时,似乎没有必要的权限来连接到本地数据库。我应该将 AWS 中的安全组添加到 DMS 复制实例还是目标数据库?

0 投票
1 回答
205 浏览

oracle - 从 AWS DMS 连接到在我的笔记本电脑上运行的 Oracle

我一直在尝试使用 AWS Data Migration Services 进行简单的 POC,将数据从笔记本电脑(localhost)上运行的 oracle db 迁移到 AWS Redshift 集群。

我能够从 AWS SCT 连接到 Redshift 集群,能够成功创建模式,但是在尝试从 DMS 迁移数据时,无法建立与我的本地主机 oracle 端点的连接。

收到以下错误消息:

错误详细信息:[errType=ERROR_RESPONSE, status=1022307, errMessage=ORA-12541: TNS:no listener OCI error., errDetails=]

看起来我们需要设置端口转发并指向 localhost:1521(oracle 运行在 localhost/端口号)。我已经尝试配置 foxyproxy,但似乎缺少一些东西并且仍然无法建立连接。请我对 foxyproxy/防火墙设置了解有限。

监听器配置:

本地主机的 tnsnames.ora:

我的 oracle 服务器在笔记本电脑上的 Windows 环境中运行。

请感谢任何帮助,因为这两天对此感到震惊,并正在寻找帮助/解决方案。让我知道是否需要任何信息

谢谢。

0 投票
1 回答
1983 浏览

sql-server - AWS DMS 无法截断 SQL 事务日志

我们正在运行 AWS DMS,其中 SQL 作为源,DynamoDB 作为目标。

我们很难截断事务日志,我们看到每个 AWS DMS 有 2 个 SQL 任务,如下所示:

begin transaction [WVGLQ7HFWFWJCCPK4RQVRQGDVE]; update [dbo].[awsdms_truncation_safeguard] set [latchLocker] = GETDATE() where [latchTaskName]='[WVGLQ7HFWFWJCCPK4RQVRQGDVE]' and [latchMachineGUID]='660a2d00-681b-46fd-89c3-3abdcfc8df18' and [LatchKey]='A'

知道如何让 AWS DMS 完成我们可以截断日志的事务

AWS 文档说:https ://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.SQLServer.html

名称 说明 保障政策

为了获得最佳性能,AWS DMS 尝试从活动事务日志 (TLOG) 中捕获所有未读更改。但是,有时由于截断,活动 TLOG 可能不包含所有未读更改。发生这种情况时,AWS DMS 会访问备份日志以捕获丢失的更改。为了最大限度地减少访问备份日志的需要,AWS DMS 使用以下方法之一防止截断:

  1. 在数据库中启动事务:这是默认方法。使用此方法时,AWS DMS 通过模仿数据库中的事务来防止 TLOG 截断。只要此类事务处于打开状态,事务启动后出现的更改就不会被截断。如果您需要在数据库中启用 Microsoft 复制,则必须选择此方法。

  2. 在单个任务中独占使用 sp_repldone:使用此方法时,AWS DMS 会读取更改,然后使用 sp_repldone 将 TLOG 事务标记为准备截断。尽管此方法不涉及任何事务活动,但它只能在 Microsoft Replication 未运行时使用。此外,使用此方法时,在任何给定时间只有一个 AWS DMS 任务可以访问数据库。因此,如果您需要对同一数据库运行并行 AWS DMS 任务,请使用默认方法。

默认值:RELY_ON_SQL_SERVER_REPLICATION_AGENT

有效值:{EXCLUSIVE_AUTOMATIC_TRUNCATION, RELY_ON_SQL_SERVER_REPLICATION_AGENT}

示例:safeguardPolicy= RELY_ON_SQL_SERVER_REPLICATION_AGENT

只读备份

当此参数设置为 Y 时,AWS DMS 仅从事务日志备份中读取更改,而不在持续复制期间从活动事务日志文件中读取。将此参数设置为 Y 可以为正在进行的复制增加一些源延迟,但它可以让您在完全加载和正在进行的复制任务期间控制活动事务日志文件的增长。

有效值:N 或 Y。默认值为 N。

示例:readBackupOnly=Y

我们正在使用 SQL 复制,因为我们使用主键表,是否有解决方法。还有什么我们需要配置的吗

0 投票
1 回答
3060 浏览

oracle - AWS DMS - 迁移 Oracle 数据库时任务失败

我正在尝试使用 AWS DMS 将 Oracle 数据库迁移到 AWS RDS,但是任务失败:

我在上面的日志中看不到任何有用的东西。什么可能导致此错误?

0 投票
1 回答
338 浏览

json - 无法在云源模板中测试 AWS DMS 端点

我正在尝试构建一个 CloudFormation 模板来自动化从本地到 AWS 云的迁移过程。我已经通过 CloudFormation 本身在数据库迁移服务 (DMS) 中创建了所有必需的资源,包括复制实例、端点和任务。

现在,为了更进一步,我需要测试复制实例中的端点。这应该以自动化的方式完成。是否可以在 CloudFormation 模板中完成此任务?

0 投票
3 回答
1230 浏览

amazon-web-services - 想了解更多有关 AWS DMS(数据迁移服务)的内部信息吗?

创建复制任务时,当源数据库发生任何更改时,它会复制到目标数据库中。

所以只是想更多地了解这个服务在内部是如何工作的?

  • 我的理解 DMS 具有侦听器服务,用于在触发源时侦听触发器/事件,侦听器收集这些事件/触发器并同时在目标上触发它们,这种流式传输概念已在持续复制中实现并且在加载批处理时已经实施。

您能否详细说明一下内部结构,或者请与我分享任何高级设计参考。

我需要对此进行更多说明