データベースを更新するプログラムを改修したため、改修したプログラムのテストを実施します。
本番データベースは更新するわけにはいかないため、本番と同じテスト用データベースを構築しようと考えています。
データベースはSQL Server 2008です。
普段、このような場合はコピー元データベース(Xと呼ぶ)をバックアップ(完全)し、それをコピー先データベース(Yと呼ぶ)として復元することで、テスト環境を構築しています。
このとき、(データベース名は違うが)すべてにおいて、X=Yとして復元されると考えていますが、その認識であっていますでしょうか?
本題は次です。
今回のコピー元データベースはSQL Server 2012で、コピー先がSQL Server 2008です。
上位バージョンのSQL Serverのバックアップを、下位のバージョンのSQL Serverでは復元ができないようです。
そこでコピー元のデータベースでスクリプトを作成し、コピー先でスクリプトを実行することで、データベース(Zと呼ぶ)のコピーを作成することにしました。
しかしスクリプトの実体はただのSQLです。
もしSQLで復元できない何かがあるとすれば、その部分は抜け落ちてしまうのでは?と懸念しています。
スクリプトから生成した場合も、X=Zとなるのでしょうか?
X≠Zであれば、それが許容できる違いか否かを検討する必要があります。
どのような違いがあるのか教えていただけないでしょうか。
わかるところだけでかまわないので、教えていただけたら幸いです。
ネットで調べましたが、それらしい記事を見つけることができませんでした。
回答1件
あなたの回答
tips
プレビュー