Saya selalu mendengar bahwa itu adalah praktik yang buruk untuk dikembangkan terhadap data produksi dan saat ini sedang dalam proses pindah ke model > Tahap> Produksi , terutama karena saya memiliki karyawan baru dengan keterampilan minimal dan saya lebih suka tidak memilikinya bekerja secara langsung dengan data produksi.
Tetapi untuk waktu yang lama saya telah bekerja secara langsung dengan data produksi dengan sakit kepala minimal, kecuali mungkin beberapa kesalahan merayap di sini atau di sana, hal-hal seperti masalah ejaan, teks alt buruk, tautan yang menunjuk ke lokasi yang salah. Ini tampaknya karena kurangnya peer review di pihak saya, bukan karena bekerja dengan data langsung.
Jadi mengapa berkembang di situs langsung merupakan praktik buruk?
sumber
Jawaban:
Jika selama pengembangan Anda menjalankan perintah SQL yang menyertakan
INSERT
atauUPDATE
pada tabel database yang ada, Anda menjalankan risiko sejauh bahwa tabel database tersebut sangat penting.Beberapa tempat menyinkronkan data produksi ke dalam basis data pengembangan pada interval tertentu, katakanlah, seminggu sekali atau atas permintaan pengembang sehingga Anda memiliki data baru untuk dikembangkan.
Tetapi jika data produksi Anda tidak berisiko dari apa yang Anda lakukan, misalnya, jika Anda hanya mengembangkan tampilan beberapa data, biasanya itu bukan masalah besar. Sekarang, jika Anda menjalankan laporan yang melakukan pemindaian tabel, maka Anda memiliki potensi untuk mengunci tabel, maka pengguna Anda yang ada akan terpengaruh.
Saya akan tunduk kepada Administrator Database saya dalam kasus-kasus seperti ini, jika tidak ada DBA "resmi", saya akan melakukan kesalahan. Cukup sederhana untuk membuat database pengembangan, bahkan untuk saya sendiri. Dalam sebuah tim itu sangat penting. Kegagalan itu, jika Anda bersikeras hanya memiliki satu basis data, Anda bisa mengawali tabel database pengembangan Anda dengan
DEV_
dan merasa sedikit lebih baik. Ya, itu memerlukan beberapa perubahan kode, tetapi dalam pengembangan menambahkan beberapa variabel selama pengembangan$debug = true
, dll, biasanya sepadan dengan usaha.Banyak cara untuk mendekati ini. Ini sangat tergantung pada situasi Anda.
sumber
Anda TIDAK ingin mengembangkan terhadap data produksi di server produksi Anda. Ada beberapa alasan besar.
Saya tidak akan pernah melakukan pengembangan pada live box jika memungkinkan. Taruhan terbaik Anda adalah membuat cadangan dari Database dan halaman dan bekerja dengan salinan dan kemudian mendorong pembaruan Anda. Salah satu alat yang telah membantu saya satu ton adalah SyncToy milik Msft.
sumber
Nah, Anda benar-benar dapat mengacaukan data. Bayangkan meninggalkan klausa di mana. Bahkan jika Anda memiliki cadangan per jam, itu akan sulit untuk diperbaiki.
sumber
Jika Anda tidak mengemudi tanpa sabuk pengaman, jangan mengembangkan data produksi. Hanya masalah keamanan.
sumber
Jika Anda memiliki data produksi, masuk akal untuk menggunakannya untuk pengujian, tetapi gunakan database pengujian terpisah dengan salinan data itu. Kalau tidak, banyak hal akan bekerja untuk beberapa catatan pengujian "blabla" Anda tetapi tidak untuk skenario nyata.
Dan untuk mengembangkan data produksi langsung - ingat hukum Murphy "Apa pun yang bisa salah akan salah.", Dan sangat mudah untuk membuat kesalahan kecil dengan konsekuensi buruk yang besar.
sumber