Bagaimana cara membuat binlog-format = ROW default start-up dalam file /etc/my.cnf?

9

Saya dapat menjalankan kueri SET GLOBAL binlog_format = 'ROW' dan berfungsi untuk sesi itu.

Bagaimana cara membuat pengaturan ini tetap setelah berhenti dan memulai ulang MySQL?

CATATAN: Saya menggunakan MySQL versi 5.5.19 (dengan Moodle) dan saya baru saja memutakhirkan dari MyISAM ke InnoDB dan karenanya memerlukan pengaturan baru ini.

Saya telah mencoba menambahkan dua perintah ini (secara terpisah) ke my.cnf: binlog-format = ROW dan binlog_format = ROW dan tidak berfungsi. Saya telah berhenti dan memulai kembali MySQL setiap kali saya mengubah my.cnf.

Kesalahan yang saya dapatkan tanpa disetel ini adalah pesan kesalahan jahat:

Info debug: Tidak dapat menjalankan pernyataan: tidak mungkin menulis ke log biner karena BINLOG_FORMAT = PERNYATAAN dan setidaknya satu tabel menggunakan mesin penyimpanan yang terbatas pada pencatatan berbasis baris. InnoDB terbatas pada pencatatan baris ketika tingkat isolasi transaksi DIBACA KOMITMEN atau BACA TIDAK TERKADANG.

Constance
sumber

Jawaban:

15

Saya pikir masalah Anda dapat berasal dari mana Anda menulis arahan

Pastikan Anda menempatkan opsi di bawah [mysqld]tajuk di /etc/my.cnf

[mysqld]
binlog_format = ROW

Jika Anda meletakkannya di bawah tajuk lainnya, proses mysqld tidak akan melihatnya.

Cobalah !!!

RolandoMySQLDBA
sumber
Ini berhasil! Ya, itu di bawah judul lain.
Constance
0

3 Nilai untuk binlog_format

[mysqld]
binlog_format = ROW
[mysqld]
binlog_format = STATEMENT
[mysqld]
binlog_format = MIXED
Alternatif
sumber