PolarDB-X は、代表的なデータ同期および Change Data Capture (CDC) ツールと互換性があります。本ページでは、サポート対象のツール、各ツールで必要となる最小の PolarDB-X バージョン、およびバイナリログ(binlog)をサブスクライブする際にデータベースアカウントに必要な権限について一覧化しています。
互換性のあるツール
以下のツールは PolarDB-X のバイナリログ(binlog)と連携可能です。すべてのツールは MySQL 互換の binlog を必要とし、PolarDB-X ではバージョン 5.4.11 以降で対応しています。
| ツール | 最低バージョン | 備考 |
|---|---|---|
| MySQL Slave | 5.4.11 | グローバルトランザクション識別子(GTID)ベースのレプリケーションはサポートされていません。 |
| canal | 5.4.11 | 該当なし |
| DTS | 5.4.11 | サポート対象のシナリオについては、「データ同期のユースケース概要」をご参照ください。 |
| debezium | 5.4.12 | スナップショットモードはサポートされていません。snapshot.mode を never に設定してください。 |
| maxwell | 5.4.12 | 該当なし |
| mysql-binlog-connector-java | 5.4.11 | 該当なし |
制限事項
GTID ベースのレプリケーション:MySQL Slave は PolarDB-X との GTID ベースのレプリケーションをサポートしていません。
debezium のスナップショット:スナップショットモードはサポートされていません。
snapshot.modeがneverに設定されていない場合、debezium は起動時に完全スナップショットを試行しますが、これは PolarDB-X でサポートされておらず、コネクタの失敗を引き起こします。必ず debezium コネクタの構成ファイルでsnapshot.mode: neverを設定してください。
必要な権限
ご利用のアカウントに必要な権限は、使用中の PolarDB-X のバージョンによって異なります。
特権アカウントはデフォルトで全権限を持ち、追加の権限付与なしでバイナリログ(binlog)のクエリおよびサブスクライブが可能です。
非特権アカウントには、お使いのバージョンに応じて権限を付与してください:
PolarDB-X 5.4.11 以降
バイナリログ(binlog)のクエリおよびサブスクライブを行うには、すべてのデータベースに対する SELECT 権限を付与します:
GRANT SELECT ON *.* TO 'user'@'host';PolarDB-X 5.4.12 以降
バージョン 5.4.12 では、バイナリログ(binlog)操作に特化した細かい権限が導入されました。各アカウントが必要とする最小限の権限のみを付与してください。
| 権限 | 付与文 | 有効化 |
|---|---|---|
| REPLICATION CLIENT | GRANT REPLICATION CLIENT ON *.* TO 'user'@'host'; | SHOW MASTER STATUS および SHOW BINARY LOGS |
| REPLICATION SLAVE | GRANT REPLICATION SLAVE ON *.* TO 'user'@'host'; | SHOW BINLOG EVENTS の実行およびバイナリログ(binlog)のサブスクライブ |
バイナリログ(binlog)操作に限定したアカウントアクセスを実現するため、広範な SELECT 権限ではなく、REPLICATION CLIENT および REPLICATION SLAVE 権限をご利用ください。