# pt-table-sync on Amazon RDS?

**URL:** <https://forums.percona.com/t/pt-table-sync-on-amazon-rds/2979>\
**Category:** Percona Toolkit\
**Created:** [September 30, 2013, 1:03pm UTC](https://forums.percona.com/t/pt-table-sync-on-amazon-rds/2979 "2013-09-30T13:03:46Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![MikeTitus](https://avatars.discourse-cdn.com/v4/letter/m/3d9bf3/32.png) [@MikeTitus](https://forums.percona.com/u/MikeTitus)\
**Post date:** [September 30, 2013, 1:03pm UTC](https://forums.percona.com/t/pt-table-sync-on-amazon-rds/2979/1 "2013-09-30T13:03:46Z")

</div>

Is there anyway to get around either of these errors when I try to pt-table-sync two databases within Amazon RDS?

1. $ pt-table-sync --recursion-method=none etc.  
Failed to /_!50108 SET @@binlog\_format := ‘STATEMENT’_/: DBD::mysql::db do failed: Access denied; you need (at least one of) the SUPER privilege(s) for this operation [for Statement “/_!50108 SET @@binlog\_format := ‘STATEMENT’_/”] at /usr/bin/pt-table-sync line 10828.

This tool requires binlog\_format=STATEMENT, but the current binlog\_format is set to MIXED and an error occurred while attempting to change it. If running MySQL 5.1.29 or newer, setting binlog\_format requires the SUPER privilege. You will need to manually set binlog\_format to ‘STATEMENT’ before running this tool.

1. $ pt-table-sync --no-bin-log --recursion-method=none etc.  
DBD::mysql::db do failed: Access denied; you need (at least one of) the SUPER privilege(s) for this operation [for Statement “/\*!32316 SET SQL\_LOG\_BIN=0 \*/”] at /usr/bin/pt-table-sync line 10793.

---

<div class="post-metadata">

**Author:** ![mirfan](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/mirfan/32/16890_2.png) [@mirfan](https://forums.percona.com/u/mirfan)\
**Post date:** [September 30, 2013, 4:22pm UTC](https://forums.percona.com/t/pt-table-sync-on-amazon-rds/2979/2 "2013-09-30T16:22:56Z")

</div>

you need to assign SUPER privileges for the user you are using with pt-table-sync. As SUPER privilege is required to change binlog\_format.  
To check current privileges for the user. Check via following command.

```auto
mysql> SHOW GRANTS FOR 'username'&#64;'hostname';

```

Use following command to assign SUPER privilege.

```auto
mysql> GRANT SUPER ON *.* TO 'username'&#64;'hostname' IDENTIFIED BY 'password';

```

---

<div class="post-metadata">

**Author:** ![MikeTitus](https://avatars.discourse-cdn.com/v4/letter/m/3d9bf3/32.png) [@MikeTitus](https://forums.percona.com/u/MikeTitus)\
**Post date:** [October 4, 2013, 2:46pm UTC](https://forums.percona.com/t/pt-table-sync-on-amazon-rds/2979/3 "2013-10-04T14:46:43Z")

</div>

Unfortunately, SUPER privilege is not available on Amazon RDS instances.

---

<div class="post-metadata">

**Author:** ![twiho](https://avatars.discourse-cdn.com/v4/letter/t/47e85d/32.png) [@twiho](https://forums.percona.com/u/twiho)\
**Post date:** [February 18, 2014, 10:29am UTC](https://forums.percona.com/t/pt-table-sync-on-amazon-rds/2979/4 "2014-02-18T10:29:23Z")

</div>

Hey guys, It would be awesome if it was possible to use pt-table-sync on AWS RDS. Simply superb. Right now it isn’t possible even though we don’t really care about the binlog format.

---

<div class="post-metadata">

**Author:** ![mscroggi](https://avatars.discourse-cdn.com/v4/letter/m/8edcca/32.png) [@mscroggi](https://forums.percona.com/u/mscroggi)\
**Post date:** [March 5, 2014, 11:58am UTC](https://forums.percona.com/t/pt-table-sync-on-amazon-rds/2979/5 "2014-03-05T11:58:50Z")

</div>

I was getting that binlog\_format permission error too.

For some reason the --nocheck-privileges switch was removed… Why?

It really put me in a pickle as I have the script in place to sync from a protected database to a local copy etc. The script used to work fine until this switch was removed. The DBA’s are never going to grant super privs to a user account in that database…

Unless that parameter is restored at some point, you have two options, you can find an old version of the toolkit - I think version 2.1.3 still supports this switch… -or- you can modify the pt-table-sync script and comment out the line where the set binlog sql is executed around line 10827 like this - #$dbh-\>do($sql);

---

<div class="post-metadata">

**Author:** ![twiho](https://avatars.discourse-cdn.com/v4/letter/t/47e85d/32.png) [@twiho](https://forums.percona.com/u/twiho)\
**Post date:** [April 12, 2017, 8:07am UTC](https://forums.percona.com/t/pt-table-sync-on-amazon-rds/2979/6 "2017-04-12T08:07:13Z")

</div>

I love it, was solving this just today and found this thread. As if I weren’t here 3 years ago. LOL. The line to comment is 10910 in pt-table-sync version 3.0.2.

---

<div class="post-metadata">

**Author:** ![tanj13](https://avatars.discourse-cdn.com/v4/letter/t/7feea3/32.png) [@tanj13](https://forums.percona.com/u/tanj13)\
**Post date:** [December 8, 2017, 12:27am UTC](https://forums.percona.com/t/pt-table-sync-on-amazon-rds/2979/7 "2017-12-08T00:27:59Z")

</div>

> [@MikeTitus;11805](#):
>
> Unfortunately, SUPER privilege is not available on Amazon RDS instances.

have you resolved it?

---

<div class="post-metadata">

**Author:** ![carlos.salguero](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/carlos.salguero/32/20_2.png) [@carlos.salguero](https://forums.percona.com/u/carlos.salguero)\
**Post date:** [January 29, 2018, 8:46am UTC](https://forums.percona.com/t/pt-table-sync-on-amazon-rds/2979/8 "2018-01-29T08:46:57Z")

</div>

Unfortunately, RDS doesn’t support binlog\_format=statement, which is needed for this tool to work properly.

Regards

---

<div class="post-metadata">

**Author:** ![ookinali](https://avatars.discourse-cdn.com/v4/letter/o/85f322/32.png) [@ookinali](https://forums.percona.com/u/ookinali)\
**Post date:** [March 6, 2018, 6:15pm UTC](https://forums.percona.com/t/pt-table-sync-on-amazon-rds/2979/9 "2018-03-06T18:15:34Z")

</div>

Is there a way to use pt-table-sync in comparing the databases between two slave servers without using the master. One of the slave server is insync witht he master and the other slave is missing some data.

---

<div class="post-metadata">

**Author:** ![carlos.salguero](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/carlos.salguero/32/20_2.png) [@carlos.salguero](https://forums.percona.com/u/carlos.salguero)\
**Post date:** [March 7, 2018, 6:47am UTC](https://forums.percona.com/t/pt-table-sync-on-amazon-rds/2979/10 "2018-03-07T06:47:26Z")

</div>

Hi,

You can use --no-check-master --no-check-slave

Regards
