用户在使用Babelfish作为AWS DMS中的目标端点时无需创建表格许可

发布于 2025-02-13 08:45:22 字数 1144 浏览 2 评论 0原文

我正在尝试通过使用Babelfish功能将一些数据从SQL Server迁移到AWS Aurora(Postgres)。最近在AWS DMS服务中添加了目标。 However, the connection test fails with the following message:

Test Endpoint failed: Application-Status: 1020912, Application-Message: User does not have to create table permission  Endpoint initialization failed.

What I did was follow the babelfish target documentation这表明了这些权限设置的步骤(连接到1433端口)。

  1. 连接到服务器时创建登录名和密码。
  2. 为您的Babelfish群集创建虚拟数据库。
  3. 为您的目标数据库创建T-SQL用户。
  4. 对于您的Babelfish数据库中的每个表格,请授予桌子的权限。
CREATE LOGIN dms_user WITH PASSWORD = 'experiments';
GO

CREATE DATABASE database_test;
GO

USE database_test
GO
CREATE USER dms_user FOR LOGIN dms_user
GO

之后,我将选择,删除,插入,引用,更新赠款database_test数据库中的每个表。 This is the setup of my babelfish endpoint:

enter image description here

Am I missing something?为什么我的用户没有创建表在完成步骤3后的权限?

I'm trying to migrate some data from SQL Server to AWS Aurora (Postgres) by using the babelfish capability. It was recently added as a target in the AWS DMS service. However, the connection test fails with the following message:

Test Endpoint failed: Application-Status: 1020912, Application-Message: User does not have to create table permission  Endpoint initialization failed.

What I did was follow the babelfish target documentation that suggests those steps for permissions setup (connected to the 1433 port).

  1. Create a login and password to use when connecting to the server.
  2. Create the virtual database for your Babelfish cluster.
  3. Create the T-SQL user for your target database.
  4. For each table in your Babelfish database, GRANT permissions to the tables.
CREATE LOGIN dms_user WITH PASSWORD = 'experiments';
GO

CREATE DATABASE database_test;
GO

USE database_test
GO
CREATE USER dms_user FOR LOGIN dms_user
GO

After that, I apply the SELECT, DELETE, INSERT, REFERENCES, UPDATE grants for each table in database_test database. This is the setup of my babelfish endpoint:

enter image description here

Am I missing something? Why my user has no create table permission after completing step 3?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

野心澎湃 2025-02-20 08:45:22

如果有人正在寻找解决方案,这是对我有用的解决方案。
您需要使用 Postgres 端点将数据加载到Babelfish中。

只需连接到Babelfish的Postgres Enpoint,然后查看 babelfish_db 数据库的模式即可。 You need to create AWS DMS tasks 2 rules that will add:

  • convert destination schema to lowercase
  • (if your Babelfish mode is multi-db) add prefix to schema: your_db_name_ -> “ _”最后很重要。

当然,您需要为Postgres端点 + db name = babelfish_db指定DMS目标端点。

希望这对您有用。

If anyone is searching for a solution, here is the one that worked for me.
You need to use Postgres endpoint to load data into Babelfish.

Just connect to Postgres enpoint of Babelfish and look at the schema of babelfish_db database. You need to create AWS DMS tasks 2 rules that will add:

  • convert destination schema to lowercase
  • (if your Babelfish mode is multi-db) add prefix to schema: your_db_name_ -> "_" at the end is important.

Of course you need to specify DMS target endpoint to Postgres endpoint + db name = babelfish_db.

Hope this will work for you.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文