SQL Server 2005と2008を同じマシンにインストールする理由は何ですか?
-
02-07-2019 - |
質問
新しい開発サーバーをセットアップし、SQL Server 2008 Expressの最新バージョンをインストールしたい。
既存のsql2005データベースは変更なしで2008で動作しますか? その場合、同じサーバーに両方のバージョンをインストールする理由はありますか?
解決
2005年のデータベースを2008年に移行しようとしたことはありませんが、一般的にSQLはこれを問題なくスムーズに処理します。最も簡単な方法は、SQL 2005からデータベースのバックアップを作成し、SQL 2008でそのバックアップを復元することです。
SQL 2005のコピーを、2008年のコピーが機能していることがわかるまでオンラインで維持したい場合、バックアップを2008に復元するときにデータベースのデータ/ログファイルを移動する必要があります。これは、 restore database
の with move
オプションを使用して実行できます。例:
RESTORE DATABASE mydb FROM disk = 'c:\ backupfile.bak'
WITH MOVE 'maindatafile' to 'c:\ newdatalocation.mdf'、
'mainlogfile'を 'c:\ newloglocation.ldf'に移動します
両方を同時にインストールすることに関して、これを行うことを決定する理由の1つは、両方のバージョンと通信するソフトウェアサポートが必要な場合に、両方のバージョンに対してコードをテストする作業を簡素化することです。
他のヒント
2005データベースをデタッチして、2008サーバーにアタッチできます。必要な場合を除き、両方を同じマシンにインストールしないことをお勧めします(たとえば、サードパーティ用のコードを作成していて、2005年のみを使用している場合)。
Windows Server 2008 Hyper-Vを使用して、1つは2005環境で、もう1つは2008環境で、2つの仮想マシンを作成することを強くお勧めします。
データベースは変更せずに( should!)動作するはずです。ただし、2008年にはSQL Server 2005には存在しない機能があるため、開発では、すべてのクライアントが2008にアップグレードすると想定しない限り、sql2005を使用してスクリプトをテストすることをお勧めします。
開発環境とテスト環境では、複数のデータベースサーバーをインストールすることは問題ではなく、必要なテストサーバーの数を減らすことができます。
実稼働環境では、複数のバッファプールがパフォーマンスを低下させ、パフォーマンスを低下させるため、お勧めしません。
私にとって重要なことは、2005年のデータベースであるprodインスタンスを持っているということですか? 2005バージョンのレポートサービスのみを使用するprodサーバー上にあるレポートサービスレポートをサポートする必要がありますか?
もしそうなら、開発マシンに2005バージョンと2008バージョンの両方が必要です。開発者がprodが2005であった2008年に開発者が働いていたため、捨てなければならないコードをたくさん見ました。 2008に変換するが、prodにはまだない場合は、メンテナンスの変更用と将来のもの用の両方が必要です。
個人的には、まだすべてを変換しておらず、古いバージョンでしかできないことがいくつかあるので、SQL Server 2000、2005、2008をマシン上に持っています。複数のバージョンを維持するための鍵は、正しい順序でインストールすることです。最初に2008をインストールしてから古いバージョンをインストールすると、うまくいかないようです。
場合によっては、複数のバージョンでテストできるようにする必要があります。または、あるものには2005年、別のものには2008年が必要になる場合があります。
いくつかの異なるアプリを管理している場合があります。そのうちの1つは他のアプリ上にあり、もう1つは他のアプリ上にあり、まだすべてを更新していません。アップグレードする場合があり、アップグレード中に両方のバージョンでテストする必要があります。あるバージョンと別のバージョンの複数の異なる顧客をサポートする場合があります。内部アプリをアップグレードしたいが、古いバージョンでのみ認定されているソフトウェアパッケージを使用している場合があります。
多くの理由があります。