質問: 開発/ステージングと本番の間のデータベース同期 開発と本番の間のwordpressデータベースの同期に問題があり、他の人がそれをどのように解決しているのか疑問に思います。 この質問について/ /私は知っています しかしそれは実際にはもっと厄介でより現実的なユースケースをカバーしていません。ライブのwordpress webサイトがあるとします。私はすべてのものをダンプし、私たちの開発環境にそれを複製しました。私は変更を加え始めました。 1週間後、私は自分のアップデートをデプロイする準備が整いました。その間に、本番サイトのデータベースが変更されました(新しい投稿、新しいコメントなど)。ロールアウト中に生産と開発の間の変更を同期させるにはどうすればよいですか。また、(少なくとも)このプロセスを自動化することは可能ですか?
回答: 私は行方不明であるより良い方法があるかもしれませんが、私はあなたに2つの選択肢を与えるつもりです:1. xmlエクスポートを使用して、新しい投稿とコメントをエクスポートします。それから wordpress importer を使って新しい投稿やコメントをdevデータベースにインポートします。インポートすると本番環境からすべての新しいメディアファイルがダウンロードされるため、devにインポートしてからデータベースを本番環境に移動することをお勧めします。 その間にプロダクションが変更されました(新しい投稿、新しいコメントなど)。 これは変更されたコンテンツを取り込むというあなたの問題を解決するでしょう。2. insert ignore into mysqlコマンドを使用して、devから新しいテーブルを追加します。同じテーブル内の重複行を上書きするには、 _ replace _ コマンドを使用します。mysqlを使用する前に、両方のデータベースのバックアップを作成し、gzデータベースを運用サーバーに移動してダンプをアップロードします(運用と同じ場合はdevの名前を変更します)。insert ignore into `_wp_production_db`.`wp_cool_plugin_options` select * from `_wp_dev_db`.`wp_cool_plugin_options` 私はmysqlコマンドに慣れていないので、オプション1を使います。