Saya memiliki dua database MySQL yang identik satu di server internal dan yang lainnya di server web hosting. Saya ingin memperbarui database di host web setiap hari dengan database di server internal. Apakah ada cara untuk mengotomatisasi proses ini juga bagaimana saya bisa melakukan ini secara manual? Jika saya melakukannya secara manual, apakah itu mengharuskan saya untuk mendapatkan SQL dump dari Database di server internal dan kemudian mengimpornya di database di host web? Tolong, tolong beri saran.
19
Jawaban:
Anda punya beberapa pilihan:
Siapkan replikasi MySQL antar server. Server internal Anda dapat bertindak sebagai Master, dan server host web sebagai budak. Setiap pembaruan yang dilakukan pada Master akan segera direplikasi ke slave (dengan asumsi koneksi berfungsi). Ini kemungkinan besar akan menjadi pilihan termudah dan paling efektif untuk dipilih. Untuk menggunakan replikasi, basis data internal Anda harus dapat diakses melalui jaringan dari host web.
Anda dapat membaca lebih lanjut tentang replikasi di sini .
Setiap hari, Anda dapat melakukan mysqldump di server internal, mengunggah file dump ke host web, dan mengimpor data. Karena ini adalah dump penuh, jika Anda memiliki database yang sangat besar, ini mungkin tidak layak. Jika Anda suka, prosedur ini berpotensi dibuat skrip untuk menghindari keharusan melakukannya secara manual.
Anda dapat mengatur logging biner di server internal. Anda kemudian dapat mengirimkan log biner ke host web dan menerapkannya ke database, secara efektif memainkan semua transaksi yang terjadi hari itu ke server web. Akibatnya, ini adalah apa yang terjadi dengan replikasi, jadi Anda hampir selalu akan pergi dengan replikasi yang diatur alih-alih opsi ini.
Jika tidak ada koneksi antara kedua database, mengambil mysqldumps setiap hari akan menjadi jalan termudah untuk mengambil.
sumber
Anda juga dapat menggunakan opsi seperti symmetricDS yang dapat membantu menyinkronkan dua database. Dengan ini Anda akan dapat memilih tabel yang perlu disinkronkan sehingga Anda dapat menghemat bandwidth internet. Ini juga sesuai dengan skenario ketika ada kekurangan konektivitas antara dua lokasi.
sumber
Cara mengatur replikasi basis data dengan MariaDB: https://www.techrepublic.com/article/how-to-set-up-database-replication-with-mariadb/
sumber
Anda bisa menggunakan Navicat . Ini terutama manajer db tetapi memiliki fungsi transfer data dan sinkronisasi data serta penjadwal sehingga Anda dapat mengotomatisasi. Ini tidak gratis tetapi ada 30 fungsi percobaan penuh.
sumber