Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Cara menyinkronkan database MySQL antara dua database jarak jauh (tanpa teknik replikasi database MySQL)

Saat pertanyaan menyatakan untuk menyinkronkan semua data dari satu server ke server lain, saya pikir Anda dapat menggunakan solusi yang relatif sederhana, yang melibatkan mysqldump .

Saya pikir Anda dapat melakukan ini semua dari server khusus:

mysqldump --user=<username> --password=<password> --host=<server 1 hostname> --port=<port> --add-drop-database <database name> > dump.sql

Ganti <username> , <password> , <port> dan <server 1 hostname> dengan detail koneksi untuk server 1. Ganti dengan nama database di server 1 yang ingin Anda salin ke server 2. Jika Anda ingin menyalin semua database, ganti dengan opsi --all-databases.

Ini akan membuat file bernama dump.sql di direktori saat ini. Anda kemudian dapat memuat ini ke server 2:

mysql --user=<username> --password=<password> --host=<server 2 hostname> --port=<port> <database name> < dump.sql

Ganti <username> , <password> , <port> dan <server 2 hostname> dengan detail koneksi untuk server 2.

Ini akan mengambil file dump.sql, dan memuatnya ke database di server 2. Ini akan menjatuhkan database di server 2 - jadi semua data yang ada akan diganti dengan yang ada di dump.sql .

Periksa opsi ke mysqldump (mengenai drop database, drop tabel, dll) dan sesuaikan perintah di atas agar sesuai dengan situasi Anda. Saya pikir, jika Anda menghubungkan semuanya dengan benar, Anda bahkan dapat melewati file perantara dan menghubungkan mysqldump di server 1 ke mysql di server 2 menggunakan soket.

Untuk menutupi bagian 'otomatis' dari pertanyaan ini, Anda dapat menjalankan perintah di atas di bawah cron dan menjadwalkannya untuk dijalankan pada hari pertama setiap bulan pada waktu yang sesuai.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kueri berparameter yang mengembalikan kolom TEXT selalu mengembalikan nol untuk kolom INT

  2. MySQL menambahkan bidang ke Enum

  3. Cara menyimpan id pendaftaran GCM secara unik ke MySQL

  4. Hapus semua kunci asing di database (MySql)

  5. sql jdbc getgeneratedkeys mengembalikan id kolom tidak ditemukan, jenis kolom tidak diketahui