- 新しい順
- 投票が多い順
- コメントが多い順
Babelfish for Aurora PostgreSQLのマルチデータベースモードでDMSのターゲットエンドポイントを設定する際に発生している問題について、以下の点を確認し対応することをお勧めします:
-
権限の問題:エラーメッセージは、ユーザーがテーブルを作成する権限を持っていないことを示しています。マルチデータベースモードでは、権限の扱いがシングルデータベースモードと異なる可能性があります。ターゲットデータベースに対して適切な権限が付与されているか確認してください。
-
スキーマの指定:マルチデータベースモードでは、スキーマの扱いが異なる可能性があります。ターゲットエンドポイントの設定で、適切なスキーマを指定しているか確認してください。
-
データベース名の指定:マルチデータベースモードでは、データベース名の指定方法が異なる可能性があります。ターゲットエンドポイントの設定で、正しいデータベース名を指定しているか確認してください。
-
Babelfishの設定:マルチデータベースモードに対応したBabelfishの設定が正しく行われているか確認してください。特に、TDSリスナーポートやデータベースの認証設定が適切か確認が必要です。
-
エスケープハッチ設定:Babelfishには、SQL ServerとPostgreSQLの動作の違いを調整するためのエスケープハッチ設定があります。マルチデータベースモードで必要な設定が適切に行われているか確認してください。
-
バージョンの確認:使用しているBabelfish for Aurora PostgreSQLのバージョンが、マルチデータベースモードをサポートしているか確認してください。
これらの点を確認し、必要に応じて設定を調整することで、マルチデータベースモードでのDMS接続問題が解決される可能性があります。問題が解決しない場合は、AWSサポートに詳細な調査を依頼することをお勧めします。
Sources
Using Babelfish for Aurora PostgreSQL - Amazon Aurora
Using Babelfish features with limited implementation - Amazon Aurora
Migrating a SQL Server database to Babelfish for Aurora PostgreSQL - Amazon Aurora
記載いただいたエラーメッセージですが、DMSのターゲットエンドポイント作成時に設定したユーザーにBabelfish for Aurora PostgreSQLのdatabase管理者権限がないために出力されます。 (シングルデータベースモード、マルチデータベースモードともに発生します)
Test Endpoint failed: Application-Status: 1020912, Application-Message: User does not have create table permissions Endpoint initialization failed.
Babelfish for Aurora PostgreSQLインスタンス作成時に作成したマスターユーザーをDMSのターゲットエンドポイント作成時のユーザーに設定している場合、database作成時に管理者権限を持っていますので、上記のエラーは発生しません。 マスターユーザーと別のユーザーを作成されている場合、当該のユーザーにsysadmin権限を付与して、databaseを作成することで上記のエラーは解消します。
ALTER SERVER ROLE sysadmin ADD MEMBER username;
Sources
- The administrator user name (the Admin user) used to create the database.
- PSQL login and user with the sufficient SELECT, INSERT, UPDATE, DELETE, and REFERENCES permissions.
