私は最近、gitの使い方を学び、それをサポートする優れたエディターと、プッシュ時にすべてをライブサイトにアップロードする優れたフックを持っています。これで、ローカルバージョン、開発テストバージョン、ライブバージョンができ、すべてが素晴らしいものになりました。私が見つけられなかった唯一の問題は、データベース間でMySQL構造を効率的に同期する方法に関する優れた解決策です。
プロジェクトを拡張するときによく直面する2つのシナリオは、列を追加するか、新しいテーブルを作成することです。私はこれをphpmyadminを介して行うことが多く、指定された変更をSQLとしてコピーして貼り付けることはできますが、3つ以上のリポジトリにコピーして貼り付けるよりも効率的なソリューションを目指しています。
現在、これらは私が検討している方法ですが、より効率的な方法をお勧めします。
リポジトリ:
- ライブ-サーバー上のライブサイト
- dev-サーバー上の開発サイト
- ローカル-コンピューター上のローカルサイト
方法#1
phpmyadminによって生成されたすべてのSQLコマンドをコピーして、すべてのプロジェクトのデータベースに貼り付けます。
- 結局のところ、実際には効率的なソリューションではありません
方法#2
どういうわけか(私にインスピレーションを与えてください)phpmyadminから生成されたすべてのSQLコマンドでいっぱいの配列でphpファイルを埋め、フックからそのphpファイルを実行します。サーバーのリポジトリの1つですべての構造変更を行い、ローカルからプルしてライブにマージしたら、MySQL構造を変更します。
- きちんとしているが、それを実行する方法が完全にはわからない
- ubuntuサーバーとローカルwampserverの両方で動作する必要があります
方法#3
サーバーとローカルの両方で機能するMySQLによるいくつかの優れたソリューション。
- それがどのように機能するかわかりません。
お時間をいただきありがとうございます。より良い方法をご存知の場合は、ぜひ共有してください。私は意味をなす自動ソリューションを探しています。