Topik ini menjelaskan cara mengaktifkan fitur pencatatan biner untuk klaster PolarDB.
Informasi latar belakang
PolarDB adalah database cloud-native yang kompatibel dengan MySQL. Secara default, PolarDB menggunakan redo log, yang lebih canggih daripada log biner. Namun, PolarDB memungkinkan Anda mengaktifkan fitur pencatatan biner untuk kompatibilitas yang lebih baik dengan ekosistem MySQL. Setelah mengaktifkan fitur pencatatan biner, Anda dapat menghubungkan database ke produk data seperti Elasticsearch dan AnalyticDB untuk memfasilitasi kueri data dan analitik. Anda juga dapat menyinkronkan data dari klaster PolarDB for MySQL ke instance ApsaraDB RDS for MySQL, dari instance ApsaraDB RDS for MySQL ke klaster PolarDB for MySQL, Sinkronisasi data antar klaster PolarDB for MySQL.
Batasan
Jika klaster PolarDB Anda dibuat pada atau setelah 5 April 2019, Anda dapat langsung mengaktifkan fitur pencatatan biner. Jika klaster PolarDB Anda dibuat sebelum 5 April 2019, perbarui versi minor klaster Anda ke versi terbaru sebelum mengaktifkan fitur pencatatan biner. Untuk informasi tentang cara memperbarui versi minor, lihat Manajemen versi revisi.
Penagihan
Log biner memakan ruang penyimpanan klaster. Anda akan dikenakan biaya untuk sumber daya penyimpanan yang digunakan. Konfigurasikan periode retensi log biner untuk menyesuaikan ruang penyimpanan yang digunakan oleh file log biner.
Contoh
Langganan
Jika penyimpanan klaster Anda menggunakan metode penagihan langganan dan kapasitas penyimpanan mencukupi, Anda tidak akan dikenakan biaya tambahan.

Bayar sesuai pemakaian
Jika penyimpanan klaster Anda menggunakan metode penagihan bayar sesuai pemakaian, Anda akan dikenakan biaya berdasarkan kapasitas penyimpanan yang digunakan oleh jumlah data log biner aktual.

Catatan penggunaan
Secara default, fitur pencatatan biner dinonaktifkan. Setelah mengaktifkan fitur pencatatan biner, klaster secara otomatis akan restart. Dalam kebanyakan kasus, tugas restart klaster membutuhkan waktu 5 menit untuk selesai. Selama proses restart klaster, layanan mungkin terganggu selama sekitar 40 detik. Durasi waktu pemulihan bervariasi berdasarkan volume data dan jumlah tabel. Kami merekomendasikan Anda melakukan operasi ini di jam-jam sepi dan pastikan aplikasi Anda dapat secara otomatis tersambung kembali ke layanan database.
Mengaktifkan fitur pencatatan biner berdampak buruk pada performa penulisan klaster Anda. Namun, performa pembacaan tidak terpengaruh. Dalam kebanyakan kasus, dampak pada performa berada dalam 10%, tetapi dapat meningkat hingga 40% di bawah beban kerja ekstrem. Untuk informasi lebih lanjut, lihat bagian FAQ dari topik ini.
Saat Anda menarik, berlangganan, atau mereplikasi log biner menggunakan layanan seperti Data Transmission Service (DTS), kami merekomendasikan Anda menggunakan titik akhir utama dari klaster PolarDB. Ini memastikan kompatibilitas dan stabilitas karena titik akhir utama menunjuk ke node utama yang menghasilkan log biner. Untuk informasi tentang cara menanyakan titik akhir utama, lihat bagian "Lihat titik akhir dan port" dari topik Kelola titik akhir klaster.
Setelah mengaktifkan fitur pencatatan biner, melakukan transaksi besar dapat memblokir komisi transaksi lainnya dan memengaruhi durasi restart dan perubahan konfigurasi klaster.
Parameter loose_polar_log_bin yang dijelaskan dalam topik ini adalah parameter global. Untuk mengaktifkan fitur pencatatan biner tingkat sesi, konfigurasikan parameter sql_log_bin.
CatatanAnda dapat menggunakan parameter sql_log_bin untuk mengaktifkan atau menonaktifkan fitur pencatatan biner tingkat sesi. Secara default, fitur ini dinonaktifkan. Untuk mengaktifkan fitur ini, buka Quota Center, temukan nama kuota polardb SQL _log_bin parameter permissions, dan kemudian klik Apply di kolom Actions.
Jika Anda menggunakan DTS untuk migrasi data dari instance ApsaraDB RDS ke klaster PolarDB, fitur pencatatan biner akan diaktifkan secara otomatis.
Aktifkan pencatatan biner
Aktifkan fitur pencatatan biner saat membuat klaster
Untuk mengaktifkan fitur pencatatan biner saat membuat klaster, pilih Enable di bagian Enable Binary Logging. Untuk informasi lebih lanjut, lihat Pembelian Kustom dan Beli klaster langganan.
Aktifkan fitur pencatatan biner untuk klaster yang ada
Setelah mengaktifkan fitur pencatatan biner untuk klaster, klaster secara otomatis akan restart. Dalam kebanyakan kasus, tugas restart klaster membutuhkan waktu 5 menit untuk selesai. Selama proses restart klaster, layanan mungkin terganggu selama sekitar 40 detik. Durasi waktu pemulihan bervariasi berdasarkan volume data dan jumlah tabel. Kami merekomendasikan Anda melakukan operasi ini di jam-jam sepi dan pastikan aplikasi Anda dapat secara otomatis tersambung kembali ke klaster.
Masuk ke Konsol PolarDB. Di panel navigasi kiri, klik Clusters. Di pojok kiri atas, pilih wilayah klaster. Di daftar klaster, temukan klaster dan klik ID-nya untuk masuk ke halaman Basic Information.
Aktifkan fitur pencatatan biner menggunakan salah satu metode berikut:
Metode 1
Di panel navigasi kiri klaster, klik Log Biner.

Klik Aktifkan Sekarang.
Di kotak dialog Enable Binary Logging, atur parameter Mode Efektif ke Sekarang atau Dijadwalkan.
Jika Anda memilih Dijadwalkan, tentukan waktu tertentu saat Anda ingin mengaktifkan fitur pencatatan biner.

Klik OK.
Metode 2: Konfigurasikan parameter loose_polar_log_bin untuk mengaktifkan pencatatan biner.
Di panel navigasi kiri klaster, pilih .
Temukan parameter loose_polar_log_bin dan ubah nilai parameternya. Untuk informasi lebih lanjut, lihat bagian "Ubah parameter" dari topik Konfigurasikan parameter klaster dan node.
CatatanUntuk klaster PolarDB for MySQL yang menjalankan MySQL 5.6, ubah nilai parameter menjadi ON_WITH_GTID.
Untuk klaster PolarDB for MySQL yang menjalankan MySQL 5.7 atau MySQL 8.0, ubah nilai parameter menjadi ON.
Nonaktifkan pencatatan biner
Masuk ke Konsol PolarDB. Di panel navigasi kiri, klik Clusters. Di pojok kiri atas, pilih wilayah klaster. Di daftar klaster, temukan klaster dan klik ID-nya untuk masuk ke halaman Basic Information.
Nonaktifkan fitur pencatatan biner menggunakan salah satu metode berikut:
Metode 1:
Di panel navigasi kiri klaster, klik Log Biner.

Klik Disable Binary Logging.
Di kotak dialog Disable Binary Logging, atur parameter Mode Efektif ke Sekarang atau Jadwalkan.
Jika Anda memilih Jadwalkan, tentukan waktu tertentu saat Anda ingin menonaktifkan fitur pencatatan biner.
Jika diperlukan, pilihHapus Log Biner Lokal.

Klik OK.
Metode 2: Konfigurasikan parameter loose_polar_log_bin untuk menonaktifkan pencatatan biner.
Di panel navigasi kiri klaster, pilih .
Temukan parameter loose_polar_log_bin dan ubah nilai parameternya. Untuk informasi lebih lanjut, lihat Ubah parameter.
CatatanUntuk klaster PolarDB for MySQL yang menjalankan MySQL 5.6, ubah nilai parameter menjadi OFF_WITH_GTID.
Untuk klaster PolarDB for MySQL yang menjalankan MySQL 5.7 atau MySQL 8.0, ubah nilai parameter menjadi OFF.
File log biner yang ada dipertahankan secara permanen setelah fitur dinonaktifkan. Anda dapat mempersingkat periode retensi log biner, tunggu hingga file log biner dihapus secara otomatis, dan kemudian nonaktifkan fitur tersebut.
Pertahankan file log biner
Kebijakan retensi
Kebijakan retensi berikut didukung untuk file log biner:
Jika fitur pencatatan biner diaktifkan, file log biner dipertahankan selama tiga hari secara default. File log biner yang melebihi periode retensi tiga hari akan dihapus secara otomatis.
CatatanUntuk klaster PolarDB for MySQL yang dibeli sebelum 23 November 2023, file log biner dipertahankan selama dua minggu (14 hari) secara default.
Untuk klaster PolarDB for MySQL yang dibeli sebelum 17 Januari 2024, file log biner dipertahankan selama satu minggu (tujuh hari) secara default.
Jika fitur pencatatan biner dinonaktifkan, file log biner yang ada dipertahankan secara permanen.
Ubah periode retensi
Mengubah periode retensi file log biner tidak mengganggu koneksi atau memerlukan restart klaster.
Namun, jika volume besar file log biner seperti 10 TB perlu dibersihkan karena perubahan periode retensi, pengecualian singkat mungkin terkat terjadi selama operasi penulisan. Jika volume besar log biner ada, kami merekomendasikan Anda mengubah periode retensi di jam-jam sepi. Anda juga dapat secara progresif mempersingkat periode retensi. Dengan cara ini, hanya sebagian log biner yang dibersihkan setiap kali. Ini mengurangi dampak pada operasi bisnis Anda.
File log biner yang dihapus tidak dapat dipulihkan.
Jika fitur pencatatan biner diaktifkan untuk klaster Anda, lakukan operasi berikut untuk mengubah periode retensi log biner:
Klaster PolarDB for MySQL V5.6: Ubah nilai parameter loose_expire_logs_hours. Nilai valid untuk parameter ini: 0 hingga 2376. Unit: jam. Nilai default: 72. Nilai 0 menentukan bahwa file log biner tidak dihapus secara otomatis. Untuk informasi lebih lanjut, lihat Konfigurasikan parameter klaster dan node.
Klaster PolarDB for MySQL 5.7 atau 8.0: Ubah nilai parameter binlog_expire_logs_seconds. Nilai valid untuk parameter ini: 0 hingga 4294967295. Unit: detik. Nilai default: 259200. Nilai 0 menentukan bahwa file log biner tidak dihapus secara otomatis. Untuk informasi lebih lanjut, lihat Konfigurasikan parameter klaster dan node.
PentingSetelah Anda mengubah nilai kedua parameter ini, log biner historis di klaster Anda tidak langsung dibersihkan. Anda dapat menggunakan salah satu metode berikut untuk memicu pembersihan segera:
Tunggu rotasi file log biner. Saat file log biner aktif mencapai ukuran maksimum yang ditetapkan oleh
max_binlog_size, file log biner baru dibuat dan semua file log biner historis dihapus secara otomatis.Gunakan akun istimewa untuk menjalankan perintah flush binary logs.
Restart klaster. File log biner historis dibersihkan setelah klaster direstart.
Jika fitur pencatatan biner dinonaktifkan untuk klaster Anda dan Anda ingin menghapus file log biner, lakukan langkah-langkah berikut: Aktifkan fitur pencatatan biner untuk klaster Anda. Untuk informasi lebih lanjut, lihat Aktifkan pencatatan biner. Atur parameter loose_expire_logs_hours atau binlog_expire_logs_seconds ke nilai yang lebih kecil, dan tunggu hingga log biner kadaluarsa dan dihapus secara otomatis. Kemudian, nonaktifkan fitur pencatatan biner.
Peroleh dan lihat log biner
Anda dapat menggunakan alat mysqlbinlog untuk melihat dan mengurai log biner. Untuk informasi lebih lanjut, lihat Peroleh dan uraikan file log biner klaster PolarDB for MySQL secara remote.
FAQ
Berapa lama file log biner dipertahankan?
Jika Anda mengaktifkan fitur pencatatan biner untuk klaster Anda, file log biner dipertahankan selama tiga hari secara default. File log biner yang melebihi periode retensi tiga hari akan dihapus secara otomatis.
CatatanUntuk klaster PolarDB for MySQL yang dibeli sebelum 23 November 2023, file log biner dipertahankan selama dua minggu (14 hari) secara default.
Untuk klaster PolarDB for MySQL yang dibeli sebelum 17 Januari 2024, file log biner dipertahankan selama satu minggu (tujuh hari) secara default.
Jika Anda menonaktifkan fitur pencatatan biner untuk klaster Anda, file log biner yang ada dipertahankan secara permanen.
CatatanAnda dapat mengubah parameter untuk mengubah periode retensi file log biner untuk klaster. Untuk informasi tentang cara mengubah periode retensi file log biner, lihat bagian Retensi log biner dari topik ini.
Mengapa pesan kesalahan ini dilaporkan:
Could not find first log file name in binary log index file?Pesan kesalahan
Could not find first log file name in binary log index filemenunjukkan bahwa file log biner telah dihapus. File log biner yang dihapus tidak dapat dipulihkan.Apakah saya bisa menonaktifkan fitur pencatatan biner?
Ya, Anda bisa menonaktifkan fitur pencatatan biner. Atur parameter loose_polar_log_bin ke OFF untuk menonaktifkan fitur ini.
CatatanSetelah Anda menonaktifkan fitur pencatatan biner, file log biner yang ada dipertahankan secara permanen. Sebelum Anda menonaktifkan fitur ini, kami merekomendasikan Anda mempersingkat periode retensi log biner. Dengan cara ini, log biner yang tidak lagi Anda butuhkan akan dihapus.
Bagaimana cara mengurangi ruang penyimpanan yang digunakan oleh log biner?
Anda dapat mengatur parameter loose_expire_logs_hours atau binlog_expire_logs_seconds ke nilai yang lebih kecil untuk mengurangi ruang penyimpanan yang digunakan oleh log biner.
Bagaimana performa klaster terpengaruh setelah saya mengaktifkan fitur pencatatan biner?
Setelah Anda mengaktifkan fitur pencatatan biner, hanya performa operasi penulisan seperti INSERT, UPDATE, dan DELETE yang terpengaruh. Performa pernyataan SELECT tidak terpengaruh. Dalam kebanyakan kasus, dampak fitur pencatatan biner pada performa berada dalam 10%, tetapi dapat meningkat hingga 40% di bawah beban kerja ekstrem.
Setelah fitur pencatatan biner diaktifkan, klaster secara otomatis akan restart. Berapa lama waktu yang dibutuhkan untuk menyelesaikan proses restart?
Dalam kebanyakan kasus, tugas restart membutuhkan waktu 5 menit untuk selesai. Selama proses restart klaster, layanan mungkin terganggu selama sekitar 40 detik. Durasi waktu pemulihan bervariasi berdasarkan volume data dan jumlah tabel. Kami merekomendasikan Anda melakukan operasi ini di jam-jam sepi dan pastikan aplikasi Anda dapat secara otomatis tersambung kembali ke layanan database.
Bagaimana cara mengambil dan melihat log biner secara remote?
Untuk informasi lebih lanjut, lihat Peroleh dan uraikan file log biner klaster PolarDB for MySQL secara remote.
Mengapa saya tidak dapat melakukan operasi DDL tanpa kunci menggunakan DMS untuk memodifikasi skema tabel seperti menambahkan indeks?
Untuk mengubah skema tabel menggunakan DMS tanpa mengunci tabel, Anda harus terlebih dahulu mengaktifkan fitur pencatatan biner. Secara default, fitur ini dinonaktifkan. Jika Anda tidak ingin mengaktifkan fitur pencatatan biner, Anda dapat mengubah skema tabel menggunakan DDL online.
Apakah saya bisa menggunakan Canal untuk menangkap perubahan yang dibuat pada klaster PolarDB for MySQL setelah saya mengaktifkan fitur pencatatan biner?
Ya, Anda bisa menggunakan Canal untuk menangkap perubahan yang dibuat pada klaster PolarDB for MySQL setelah Anda mengaktifkan fitur pencatatan biner.
Jika saya menjalankan pernyataan
SHOW BINARY LOGSuntuk menanyakan ukuran file log biner, apakah performa klaster akan terpengaruh?Tidak. Pernyataan
SHOW BINARY LOGSadalah operasi manajemen database yang memiliki dampak minimal pada performa klaster. Tidak ada data yang ditulis ke database setelah Anda menjalankan pernyataan tersebut. Oleh karena itu, performa pembacaan dan penulisan database tidak terpengaruh seperti operasi penulisan data, seperti pernyataan INSERT, UPDATE, dan DELETE.Bagaimana cara memeriksa waktu penulisan terakhir file log biner di PolarDB for MySQL?
Jalankan pernyataan
show full binary logsuntuk melihat nama, ukuran, dan waktu penulisan terakhir semua file log biner.CatatanFitur ini didukung untuk klaster PolarDB for MySQL yang menjalankan versi mesin berikut:
MySQL 8.0.2 dengan versi revisi 8.0.2.2.0 atau lebih baru.
MySQL 8.0.1 dengan versi revisi 8.0.1.1.14 atau lebih baru.
MySQL 5.7 dengan versi revisi 5.7.1.0.27 atau lebih baru.
MySQL 5.6 dengan versi revisi 5.6.1.0.38 atau lebih baru.
Bagaimana cara memeriksa log biner klaster PolarDB for MySQL yang dihasilkan pada titik waktu tertentu?
Pulihkan data ke titik waktu sebelumnya dan kemudian uraikan log biner untuk melihat kontennya. Untuk informasi lebih lanjut, lihat Pemulihan basis data dan tabel: Pulihkan data ke titik waktu sebelumnya.