View a markdown version of this page

Mengonfigurasi filter replikasi dengan Aurora MySQL - Amazon Aurora

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Mengonfigurasi filter replikasi dengan Aurora MySQL

Anda dapat menggunakan filter replikasi untuk menentukan basis data dan tabel mana yang direplikasi dengan replika baca. Filter replikasi dapat menyertakan basis data dan tabel dalam replikasi atau mengecualikannya dari replikasi.

Berikut ini adalah beberapa kasus penggunaan untuk filter replikasi:

  • Untuk mengurangi ukuran replika baca. Dengan filter replikasi, Anda dapat mengecualikan basis data dan tabel yang tidak diperlukan pada replika baca.

  • Untuk mengecualikan basis data dan tabel dari replika baca untuk alasan keamanan.

  • Untuk mereplikasi basis data yang berbeda dan tabel untuk kasus penggunaan tertentu di replika baca yang berbeda. Misalnya, Anda mungkin menggunakan replika baca khusus untuk analitik atau penyerpihan.

  • Untuk cluster DB yang telah membaca replika yang berbeda Wilayah AWS, untuk mereplikasi database atau tabel yang berbeda dalam bentuk yang berbeda. Wilayah AWS

  • Untuk menentukan basis data dan tabel mana yang direplikasi dengan klaster DB Aurora MySQL yang dikonfigurasi sebagai replika dalam topologi replikasi masuk. Untuk informasi selengkapnya tentang konfigurasi ini, lihat Replikasi antara Aurora dan MySQL atau antara Aurora dan klaster DB Aurora lainnya (replikasi log biner).

Mengatur parameter pemfilteran replikasi untuk Aurora MySQL

Untuk mengonfigurasi filter replikasi, atur parameter berikut:

  • binlog-do-db – Mereplikasi perubahan ke log biner yang ditentukan. Ketika Anda mengatur parameter ini untuk klaster sumber binlog, hanya log biner yang ditentukan dalam parameter yang direplikasi.

  • binlog-ignore-db – Jangan mereplikasi ke log biner yang ditentukan. Ketika parameter binlog-do-db diatur untuk klaster sumber binlog, parameter ini tidak dievaluasi.

  • replicate-do-db – Mereplikasi perubahan ke basis data yang ditentukan. Ketika Anda mengatur parameter ini untuk klaster replika binlog, hanya basis data yang ditentukan dalam parameter yang direplikasi.

  • replicate-ignore-db – Jangan mereplikasi perubahan ke basis data yang ditentukan. Ketika parameter replicate-do-db diatur untuk klaster replika binlog, parameter ini tidak dievaluasi.

  • replicate-do-table – Mereplikasi perubahan ke tabel yang ditentukan. Ketika Anda menetapkan parameter ini untuk replika baca, hanya tabel yang ditentukan dalam parameter yang direplikasi. Selain itu, ketika parameter replicate-ignore-db atau replicate-do-db diatur, pastikan untuk menyertakan basis data yang mencakup tabel tertentu dalam replikasi dengan klaster replika binlog.

  • replicate-ignore-table – Jangan mereplikasi perubahan ke tabel yang ditentukan. Ketika parameter replicate-do-table diatur untuk klaster replika binlog, parameter ini tidak dievaluasi.

  • replicate-wild-do-table – Mereplikasi tabel berdasarkan basis data dan pola nama tabel yang ditentukan. Karakter wildcard % dan _ didukung. Ketika parameter replicate-ignore-db atau replicate-do-db diatur, pastikan untuk menyertakan basis data yang mencakup tabel tertentu dalam replikasi dengan klaster replika binlog.

  • replicate-wild-ignore-table – Jangan mereplikasi tabel berdasarkan basis data dan pola nama tabel yang ditentukan. Karakter wildcard % dan _ didukung. Ketika parameter replicate-wild-do-table atau replicate-do-table diatur untuk klaster replika binlog, parameter ini tidak dievaluasi.

Parameter dievaluasi sesuai dengan urutannya dalam daftar. Untuk informasi selengkapnya tentang cara kerja parameter ini, lihat dokumentasi MySQL:

Secara default, masing-masing parameter ini memiliki nilai kosong. Pada setiap klaster binlog, Anda dapat menggunakan parameter ini untuk mengatur, mengubah, dan menghapus filter replikasi. Ketika Anda menetapkan salah satu parameter ini, pisahkan masing-masing filter dari yang lain dengan koma.

Anda dapat menggunakan karakter wildcard % dan _ dalam parameter replicate-wild-do-table dan replicate-wild-ignore-table. Parameter wildcard % mencocokkan jumlah karakter berapa pun, dan wildcard _ hanya mencocokkan satu karakter.

Format pencatatan log biner instans DB sumber penting untuk replikasi karena menentukan catatan perubahan data. Pengaturan parameter binlog_format menentukan apakah replikasi berbasis baris atau berbasis pernyataan. Untuk informasi selengkapnya, lihat Mengkonfigurasi pencatatan biner MySQL Aurora Mengkonfigurasi RDS untuk pencatatan biner MySQL penerapan.

catatan

Semua pernyataan bahasa definisi data (DDL) direplikasi sebagai pernyataan, terlepas dari pengaturan binlog_format pada instans DB sumber.

Batasan pemfilteran replikasi untuk Aurora MySQL

Batasan berikut ini berlaku untuk pemfilteran replikasi untuk Aurora MySQL:

  • Filter replikasi hanya didukung untuk Aurora MySQL versi 3.

  • Setiap parameter filter replikasi memiliki batas 2.000 karakter.

  • Koma tidak didukung dalam filter replikasi.

  • Filter replikasi tidak mendukung transaksi XA.

    Untuk informasi selengkapnya, lihat Restrictions on XA Transactions dalam dokumentasi MySQL.

Contoh pemfilteran replikasi untuk Aurora MySQL

Untuk mengonfigurasi filter replikasi untuk replika baca, modifikasi parameter filter replikasi dalam grup parameter klaster DB yang terkait dengan replika baca.

catatan

Anda tidak dapat memodifikasi grup parameter klaster DB default. Jika replika baca menggunakan grup parameter default, buat grup parameter baru dan kaitkan dengan replika baca tersebut. Untuk informasi selengkapnya tentang grup parameter klaster DB, lihat .

Anda dapat mengatur parameter dalam grup parameter cluster DB menggunakan Konsol Manajemen AWS, AWS CLI, atau RDS API. Untuk informasi tentang mengatur parameter, lihat Memodifikasi parameter dalam grup parameter DB di . Ketika Anda mengatur parameter dalam grup parameter klaster DB, semua klaster DB yang terkait dengan grup parameter tersebut akan menggunakan pengaturan parameter. Jika Anda mengatur parameter filter replikasi dalam grup parameter klaster DB, pastikan bahwa grup parameter dikaitkan hanya dengan klaster replika baca. Biarkan parameter filter replikasi kosong untuk instans DB sumber.

Contoh berikut mengatur parameter menggunakan AWS CLI. Contoh ini menetapkan ApplyMethod ke immediate sehingga perubahan parameter terjadi segera setelah perintah CLI selesai. Jika Anda ingin menerapkan perubahan tertunda setelah replika baca di-boot ulang, atur ApplyMethod ke pending-reboot.

Contoh berikut mengatur filter replikasi:

contoh Menyertakan basis data dalam replikasi

Contoh berikut menyertakan basis data mydb1 dan mydb2 dalam replikasi.

Untuk Linux, macOS, atau Unix:

aws rds modify-db-cluster-parameter-group \ --db-cluster-parameter-group-name myparametergroup \ --parameters "ParameterName=replicate-do-db,ParameterValue='mydb1,mydb2',ApplyMethod=immediate"

Untuk Windows:

aws rds modify-db-cluster-parameter-group ^ --db-cluster-parameter-group-name myparametergroup ^ --parameters "ParameterName=replicate-do-db,ParameterValue='mydb1,mydb2',ApplyMethod=immediate"
contoh Menyertakan tabel dalam replikasi

Contoh berikut menyertakan tabel table1 dan table2 dalam mydb1 basis data dalam replikasi.

Untuk Linux, macOS, atau Unix:

aws rds modify-db-cluster-parameter-group \ --db-cluster-parameter-group-name myparametergroup \ --parameters "ParameterName=replicate-do-table,ParameterValue='mydb1.table1,mydb1.table2',ApplyMethod=immediate"

Untuk Windows:

aws rds modify-db-cluster-parameter-group ^ --db-cluster-parameter-group-name myparametergroup ^ --parameters "ParameterName=replicate-do-table,ParameterValue='mydb1.table1,mydb1.table2',ApplyMethod=immediate"
contoh Menyertakan tabel dalam replikasi menggunakan karakter wildcard

Contoh berikut menyertakan tabel dengan nama berawalan order dan return dalam basis data mydb dalam replikasi.

Untuk Linux, macOS, atau Unix:

aws rds modify-db-cluster-parameter-group \ --db-cluster-parameter-group-name myparametergroup \ --parameters "ParameterName=replicate-wild-do-table,ParameterValue='mydb.order%,mydb.return%',ApplyMethod=immediate"

Untuk Windows:

aws rds modify-db-cluster-parameter-group ^ --db-cluster-parameter-group-name myparametergroup ^ --parameters "ParameterName=replicate-wild-do-table,ParameterValue='mydb.order%,mydb.return%',ApplyMethod=immediate"
contoh Mengecualikan basis data dari replikasi

Contoh berikut mengecualikan basis data mydb5 dan mydb6 dari replikasi.

Untuk Linux, macOS, atau Unix:

aws rds modify-db-cluster-parameter-group \ --db-cluster-parameter-group-name myparametergroup \ --parameters "ParameterName=replicate-ignore-db,ParameterValue='mydb5,mydb6',ApplyMethod=immediate"

Untuk Windows:

aws rds modify-db-cluster-parameter-group ^ --db-cluster-parameter-group-name myparametergroup ^ --parameters "ParameterName=replicate-ignore-db,ParameterValue='mydb5,mydb6,ApplyMethod=immediate"
contoh Mengecualikan tabel dari replikasi

Contoh berikut mengecualikan tabel table1 dalam basis data mydb5 dan table2 dalam basis data mydb6 dari replikasi.

Untuk Linux, macOS, atau Unix:

aws rds modify-db-cluster-parameter-group \ --db-cluster-parameter-group-name myparametergroup \ --parameters "ParameterName=replicate-ignore-table,ParameterValue='mydb5.table1,mydb6.table2',ApplyMethod=immediate"

Untuk Windows:

aws rds modify-db-cluster-parameter-group ^ --db-cluster-parameter-group-name myparametergroup ^ --parameters "ParameterName=replicate-ignore-table,ParameterValue='mydb5.table1,mydb6.table2',ApplyMethod=immediate"
contoh Mengecualikan tabel dari replikasi menggunakan karakter wildcard

Contoh berikut mengecualikan tabel dengan nama berawalan order dan return dalam basis data mydb7 dari replikasi.

Untuk Linux, macOS, atau Unix:

aws rds modify-db-cluster-parameter-group \ --db-cluster-parameter-group-name myparametergroup \ --parameters "ParameterName=replicate-wild-ignore-table,ParameterValue='mydb7.order%,mydb7.return%',ApplyMethod=immediate"

Untuk Windows:

aws rds modify-db-cluster-parameter-group ^ --db-cluster-parameter-group-name myparametergroup ^ --parameters "ParameterName=replicate-wild-ignore-table,ParameterValue='mydb7.order%,mydb7.return%',ApplyMethod=immediate"

Melihat filter replikasi untuk replika baca

Anda dapat melihat filter replikasi untuk replika baca dengan cara berikut:

  • Memeriksa pengaturan parameter filter replikasi dalam grup parameter yang terkait dengan replika baca.

    Untuk petunjuk, lihat Melihat nilai parameter untuk grup parameter DB di .

  • Dalam klien MySQL, hubungkan ke replika baca dan jalankan pernyataan SHOW REPLICA STATUS.

    Dalam output, bidang berikut menunjukkan filter replikasi untuk replika baca:

    • Binlog_Do_DB

    • Binlog_Ignore_DB

    • Replicate_Do_DB

    • Replicate_Ignore_DB

    • Replicate_Do_Table

    • Replicate_Ignore_Table

    • Replicate_Wild_Do_Table

    • Replicate_Wild_Ignore_Table

    Untuk mengetahui informasi selengkapnya tentang bidang ini, lihat Checking Replication Status dalam dokumentasi MySQL.