Bagaimana cara menyebarkan perubahan DB dari dev ke produksi di Magento


9

Saya menyadari bahwa modul telah menginstal dan mengatur skrip data untuk membuat DB portable dari dev ke produksi.

Tetapi dalam kasus kami, kami memiliki pengembang UI yang menambahkan atribut dan produk melalui antarmuka admin yang disimpan dalam pengembangan DB.

Pada hari rilis, kami tidak dapat mengulangi semua langkah yang kami buat di lingkungan dev, karena itu akan terlalu membosankan dan menghabiskan waktu.

Apakah ada cara untuk menangani perubahan DB seperti itu saat menggunakan.

Untuk saat ini kami sedang melakukan perbedaan antara dev DB dan prod DB dan menghasilkan SQL yang dijalankan pada hari rilis. Tapi ini sedikit berbahaya karena dev DB mungkin berisi data transaksional uji dan kita bisa mengunci tabel transaksional di prod jika SQL kita memiliki pernyataan memodifikasi tabel transaksional.

Apakah ada praktik terbaik dalam hal ini? Terima kasih atas bantuannya sebelumnya

Jawaban:


8

Ada beberapa ekstensi untuk memigrasikan data di antara lingkungan, tetapi menggunakannya mengubah diri Anda. Anda pasti tidak ingin mengacaukan lingkungan produksi Anda jika terjadi kesalahan.

Satu-satunya cara yang tepat untuk melakukan migrasi data adalah dengan menggunakan skrip pengaturan.

Juga akan memungkinkan pengaturan lingkungan baru (misalnya untuk ikan baru dari tim Anda) yang akan diperbarui dengan keadaan saat ini.

Pertanyaan yang bagus.


Saya pribadi menemukan bahwa beberapa modul dari Magento Connect tidak selalu sepenuhnya kompatibel dalam hal menjalankan skrip pengaturan dari awal. Saya masih harus mencari tahu persis apa yang terjadi, tetapi pengaturan toko kami dalam keadaan sedemikian rupa sehingga, mulai dari database kosong, skrip instalasi saling bertentangan dan toko tidak dapat bootstrap database kosong. Untuk memulai dari awal lagi, kita perlu menerapkan modul satu per satu secara berurutan. Atau perbaiki bug pada perangkat lunak yang tidak kami tulis.
nbering

Bagaimana Anda memasukkan perubahan skrip yang dibuat dari panel admin Magento? Misalnya: menambahkan atribut dan produk, atau mengubah konfigurasi beberapa ekstensi?
Andrea

1
@ Andrea Anda tidak melakukan perubahan di panel admin Magento. Semuanya melalui skrip pengaturan. Tentu saja dalam beberapa kesempatan jika Anda ingin mencoba sesuatu yang Anda tidak yakin, pada akhirnya Anda memang mengubah sesuatu di admin, tetapi dalam hal ini perubahan tersebut harus dikembalikan dan diterapkan sekali lagi melalui skrip pengaturan.
user487772

Sebagai FYI. Kami akhirnya menggunakan skrip pengaturan untuk sebagian besar perubahan. Untungnya pengembang UI kami tidak keberatan melakukan skrip penyiapan begitu ia menguasainya. Anda juga dapat membuat tiket untuk pembuatan skrip pengaturan baru dan menetapkannya untuk pengembang Anda. Kami juga memiliki tim pemasaran yang menggunakan fitur CMS dari magento. Alih-alih melakukan perubahan ini di lingkungan pengembang, kami meminta mereka untuk membuat perubahan ini dalam produksi secara langsung. Kami menambahkan peran CMS yang hanya akan memberi mereka akses ke fitur CMS saja. Kami kemudian sesekali mempublikasikan perubahan CMS dari Prod ke Stage dan kemudian QA dan Dev menggunakan skrip khusus.
Jeetendra Pujari
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.