Buang data MySQL dengan mydumper

Database


Mydumper mendukung pemutaran cadangan langsung dari versi 0.11.3 dan versi terbaru Mydumper 0.12.3 memungkinkan dukungannya untuk cadangan aliran terkompresi. Ini adalah fitur yang paling ditunggu yang ditambahkan ke Mydumper, menjadikannya alat yang lebih kuat untuk mentransfer data ke RDS atau Cloud.

Jika Anda mendengar tentang mydumper untuk pertama kalinya, mari kita lihat sekilas apa itu Mydumper dan apa fungsinya.

Mydumper adalah alat pencadangan dan pemulihan logis multithreaded untuk MySQL dan garpunya. Untuk mengetahui lebih lanjut, Anda dapat merujuk ke blog/presentasi kami sebelumnya di bawah ini.

Di blog ini, kita akan membahas secara singkat bagaimana proses broadcast ini bekerja dan bagaimana mendapatkan output yang dibutuhkan.

  1. Bagaimana cara kerjanya?
  2. Bagaimana cara menggunakannya?
  3. Catatan penting:

Bagaimana cara kerjanya?

Alur kerjanya sangat sederhana

  • Utas Mydumper membaca data dari sumber DB dan menulis secara paralel ke sistem file.
  • Sekarang utas aliran mydumper mengantrekan file-file ini satu per satu dan mentransfernya ke stdout.
  • Aliran Myloader membacanya dan menulisnya ke sistem file lokalnya.
  • Utas Myloader sekarang mengambilnya secara paralel dengan tujuan, mempertahankan urutan thread_id.

Bagaimana cara menggunakannya?

Di bawah ini adalah skrip yang saya gunakan untuk menggunakan produksi untuk mengembalikan tabel ke RDS menggunakan streaming.

mydumper -t 6 -u mydbops --password='XXXXXXX' -h localhost -P 3306 --compress -o /mysql/logs/backup -B 'testdb' -T 'testdb.member --stream | myloader --threads=4 -u admin --password='XXXXX' -h 'mydbops-stg.bvbkjkuliuie.ap-south-1.rds.amazonaws.com' -P 3308 -v 4 -d /mysql/logs/restore -o -B ‘testdb’ --stream

– saat ini : mydumper menunjukkan bahwa file yang dihasilkan harus dialirkan melalui STDOUT.

– saat ini : myloader membuat utas untuk membaca aliran dan membuat file secara lokal

– Tidak ada penghapusan : Menyimpan file secara lokal di sumber dan tujuan Ini opsional

Secara default, setelah file berhasil ditransfer dari sumbernya, itu akan segera dihapus, begitu juga di tempat tujuan, setelah file spread diterapkan, itu akan dihapus dari sistem filenya. Ini menghindari penggunaan disk yang berlebihan selama pencadangan file saat mentransfer data dalam jumlah besar.

Logs: 
** Message: 12:11:12.002: File backup/testdb-member-create.sql.gz transfered | Global: 0 MB/s

** Message: 12:11:12.003: Thread 3 dumping schema for `testdb`.`member`

** Message: 12:11:12.003: Thread 4 dumping data for`testdb`.`member`| Remaining jobs: -3

** Message: 12:11:12.003: Opening: backup/testdb-member-schema.sql.gz

** Message: 12:11:12.003: File backup/testdb-member-schema.sql.gz transfered | Global: 0 MB/s

** Message: 12:11:12.064: Non-InnoDB dump complete, unlocking tables

** Message: 12:11:12.064: Shutdown jobs enqueued

** Message: 12:27:54.912: Finished dump at: 2022-06-09 12:27:54

** Message: 12:27:54.913: Removing file: /mysql/logs/restore/restore/testdb-member-schema.sql.gz

** Message: 12:27:54.914: Thread 4 restoring table `testdb`.`member` from 

** Message: 12:27:56.433: Removing file: /mysql/logs/restore/restore/testdb-member.00000.sql.gz

** Message: 12:27:56.434: Shutting down stream thread 2

** Message: 12:27:56.434: Starting table checksum verification

Catatan penting:

  • Dengan streaming, Mydumper dianggap sebagai cara yang mudah dan cepat untuk mentransfer data
  • Penggunaan disk selalu terkendali dengan pembersihan otomatis file cadangan.

diterbitkan



Source link

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan.