web-dev-qa-db-ja.com

開発用コピーでサイトを更新した後、ライブサイトの進化するデータベースを上書きせずに更新を元に戻すにはどうすればよいですか。

私はできるだけタイトルの中で説明的になるように試みました、そして、私はこの質問がいろいろな形で前に尋ねられたことを知っています、しかし、私はそれに対する良い答えを見つけることができませんでした。

それは簡単です、WPサイトがライブになったら、静的でない場合は、新しい投稿を追加したり、新しいwoocommerceオーダーを追加したり、新しいユーザーアカウントを追加するなどしてデータベースを更新し続けます。

サイトに大きな変更や更新を加えたい場合、これを行う最も簡単で簡単な方法は、ローカルインストールまたは別の開発ドメインにコピーを作成し、そこですべての変更を加えることです。すべての変更が完了したら、それらをライブサイトにコピーします。

Themeやcssのように、変更がファイルだけのものであれば、それはいくぶん簡単です。しかし、新しいプラグインを追加したり、これらのプラグインに接続/関連するコンテンツを追加したりするなど、データベースの変更に変更が含まれている場合、サイトにコピーし直すことはできません。サイトのデータベースすべての新しい投稿、新しい注文、新しい画像のアップロードはすべて消去されます。

今、私は、異なるシナリオでは異なる解決策があることを知っていますが、すべてのケースに対処する方法はありませんか?

たとえば、ライブサイトに加えられた変更が新しい投稿だけだった場合は、投稿を開発サイトにエクスポートおよびインポートしてから、サイト全体を移動できます。他の項目と同じですが、すべての種類の項目ではありません。そしてこれに関するもう一つの問題はwordpressのエクスポートとインポート機能が最悪であるということです。それはとても初歩的であり、あなたは特定のアイテムだけを選択してエクスポートするための非常に小さな選択肢があります。私はおそらくすべての "advanced import/export"プラグインを試してみましたが、この問題を解決するものはまだ何もありません。

だから別のスレッドで、誰かが このプラグイン を基本的にライブサイトにテーマをインストールして作業することを指摘しましたが、通常のユーザーはまだ既存のテーマを見ますが、それでもまだすべての種類の変更を解決しません。コンテンツに変更を加えたい場合は、フッターまたはナビゲーションメニューを考えてみましょう。既存の表示可能なテーマ/サイトには反映され、新しいテストテーマでは問題ないように見えますが、ライブテーマでは問題ないかもしれません。

同じサイト/データベースにあるサイトの「ブランチ」を作成してから切り替える方法はありませんか?それとも開発サイトで開発するしかないが実際に非破壊的な方法でデータベースをマージする方法はありませんか?あなたがあなたがどのコンポーネントや物事に影響を与えたか知っているならば、それをする方法はないでしょうか?あるいは、そのようなことを試みるためにはMySQLマスターになる必要がありますか。

この問題を抱えているのは私だけではありません。この問題に対する解決策がないとは思えません。どうすればこれができますか?

前もって感謝します。

20
James

あなたがやりたいことをするのは本当に簡単な方法ではありませんが、私がすることはあなたのサイトのスナップショットを作成し、あなたの変更を実行し、何かブレーキが回復してやり直す場合です。 1時間停止するかもしれませんが、私が最近作業していたサイトを何らかの形で表示したときにこれを行ったばかりです。これは問題を解決するための「正しい」方法ではないかもしれませんが、私にとってはうまくいきます。がんばろう。

2
user57081