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

Menggunakan kontrol versi (Git) pada database MySQL

Anda dapat membuat cadangan database Anda dalam repositori git. Tentu saja, jika Anda menempatkan data ke dalam git dalam bentuk biner, Anda akan kehilangan semua kemampuan git untuk menyimpan data secara efisien menggunakan diffs (perubahan). Jadi praktik terbaik nomor satu adalah ini:simpan data dalam format serial teks.

mysqldump adalah program yang cocok untuk membantu Anda melakukan ini. Itu tidak sempurna. Jika ada yang mengganggu urutan serialisasi item (misalnya karena membuat tabel baru, dll.) maka jeda buatan akan masuk ke dalam diff. Itu akan menurunkan efisiensi penyimpanan. Anda dapat menulis serialiser khusus untuk membuat serial perubahan saja -- tetapi kemudian Anda melakukan kerja keras yang sudah dikuasai git. Cukup gunakan dump sql.

Meskipun demikian, apa yang ingin Anda lakukan bukanlah apa yang biasanya dimaksudkan oleh para pengembang ketika mereka berbicara tentang meletakkan database di git. Misalnya, jika Anda membaca tautan yang diposting oleh @eggyal (tautan ke codinghorror ) Anda akan melihat bahwa apa yang sebenarnya ditempatkan di git adalah skrip yang diperlukan untuk menghasilkan database awal. Mungkin ada skrip tambahan, seperti skrip untuk mengisi data database dengan status bersih, atau untuk mengisinya dengan data pengujian. Semua skrip sql tersebut adalah file teks, dan formatnya hampir sama dengan dump sql yang akan Anda dapatkan dari mysqldump. Jadi, tidak ada alasan Anda tidak bisa melakukannya dengan data harian Anda juga.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PHP/SQL Insert Error saat menggunakan Named Placeholder

  2. Masalah Pengkodean Karakter

  3. Bagaimana cara memilih 'string' terpanjang dari tabel saat mengelompokkan

  4. Terus streaming audio acak dari database

  5. Apakah mungkin untuk menentukan kolom stempel waktu yang bukan nol dan tidak memiliki default dan tidak ada perilaku khusus pada pembaruan?