Saya telah menyiapkan replikasi master MySQL (pada Debian 6.0.1) dengan mengikuti petunjuk ini dengan setia: http://www.neocodesoftware.com/replication/
Saya punya sejauh:
mysql > show master status;
tapi sayangnya ini menghasilkan yang berikut, daripada output yang berguna:
Empty set (0.00 sec)
Log kesalahan di /var/log/mysql.err
hanyalah file kosong, jadi itu tidak memberi saya petunjuk.
Ada ide?
Inilah yang saya masukkan ke dalam /etc/mysql/my.cnf
satu server (diubah dengan tepat untuk server lain):
server-id = 1
replicate-same-server-id = 0
auto-increment-increment = 2
auto-increment-offset = 1
master-host = 10.0.0.3
master-user = <myusername>
master-password = <mypass>
master-connect-retry = 60
replicate-do-db = fruit
log-bin = /var/log/mysql-replication.log
binlog-do-db = fruit
Dan saya telah mengatur pengguna dan dapat terhubung dari MySQL di Server A ke database di Server B menggunakan nama pengguna / kata sandi / ipaddress di atas.
show master status
melihatEmpty set
. Bingung!Jawaban:
Menariknya, saya menjalankan mysql di PC saya dengan log biner tidak diaktifkan. Saya melakukan yang berikut:
Seperti yang ditunjukkan, karena MySQL menampilkan "Set Kosong" untuk SHOW MASTER STATUS; karena pencatatan biner tidak diaktifkan. Itu jelas mengingat konfigurasi yang saya miliki.
Hal pertama yang harus Anda lakukan adalah memastikan log kesalahan memiliki folder tertentu
Kemudian jalankan yang berikut ini:
Kemudian di klien mysql jalankan Perintah SQL ini
Jika Anda mendapatkan output yang sama dengan yang saya miliki sebelumnya, maka MySQL tidak dapat menulis log biner ke folder yang ditunjuk. Dilema Anda menjadi alasan mengapa MySQL tidak dapat menulis ke / var / log.
Ini bukan jawaban yang lengkap tetapi saya harap ini membantu.
sumber
Jika versi Mysql> 5.0, pengaturan replikasi Anda master-host, master-user, master-password, dan beberapa lainnya di my.cnf Anda akan diabaikan. Gunakan CHANGE MASTER TO untuk pengaturan replikasi awal.
Bandingkan http://dev.mysql.com/doc/refman/5.1/en/replication-howto-slaveinit.html
sumber
Pengaturan Anda
log-bin
salah, jadi MySQL tidak bisa menulis log biner. Ini bukan nama file, itu adalah pola nama file parsial , yang mana MySQL akan menambahkan sebuah direktori dan menambahkan nomor urut dan ekstensi. Pengaturan yang biasa adalah sesuatu sepertiPeriksa manualnya.
sumber
--log-bin=file_name
( dev.mysql.com/doc/refman/5.7/en/… ). Manual apa yang menyatakan bahwa itu bukan nama file?