skip to Main Content

I have set up a DMS with RDS MYSQL as source endpoint and REDSHIFT as target endpoint with "full and CDC".

setup is working fine and even update, delete stmts are being replicated to Redshift. however when i create a new table in my source RDS MYSQL it’s not being repliacted to targer Redshift.

please note- there isnt any primary key assosiated with the new table.

2

Answers


  1. To specify the table mappings that you want to apply during migration, you can create a JSON file. If you create a migration task using the console, you can browse for this JSON file or enter the JSON directly into the table mapping box. If you use the CLI or API to perform migrations, you can specify this file using the TableMappings parameter of the CreateReplicationTask or ModifyReplicationTask API operation.

    Example of Migrate some tables in a schema

        {
        "rules": [
            {
                "rule-type": "selection",
                "rule-id": "1",
                "rule-name": "1",
                "object-locator": {
                    "schema-name": "Test",
                    "table-name": "%"
                },
                "rule-action": "include"
            }
        ]
    }
    
    • create a new rule like above mentioned format and specify your table
      name.
    • rule-id and rule-name should be unique.

    for more information please checkout this

    Login or Signup to reply.
  2. So this is because, whenever a new table is created the DMS user (mysql user) does not have access to read these new tables. You will have to explicitly grant permission to the user to read this new table-

    GRANT SELECT ON SCHEMA.TABLE_NAME TO dmsuser_readonly;
    

    Then add supplement logging to allow the user to access the logs for the table-

    ALTER TABLE SCHEMA.TABLE_NAME ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
    

    PS: Allow all accesses to the dmsuser using the owner schema user.
    Let me know in case of any issues.

    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search