SQL Server 2008 R2からSQL Server 2014へのアップグレードの計画段階です。
私たちのシステムは、異なるサーバー上の異なるデータベースに対してストアドプロシージャを実行します。
1つのサーバーをSQL Server 2014にアップグレードし、残りのサーバーをSQL Server 2008 R2のままにしておくと、その機能は失われますか?
テストとして、SQL Server 2008 R2インスタンスからリンクサーバーを介してSQL Server 2012インスタンスに次を実行しました。
SELECT LocalServerName = @@SERVERNAME
, LocalServerVersion = SERVERPROPERTY('ProductVersion');
EXEC [REMOTESERVER].master.sys.sp_executesql
N'SELECT RemoteServerName = @@SERVERNAME
, RemoteServerVersion = SERVERPROPERTY(''ProductVersion'');';
これにより、2つの結果セットが表示されます。1つはローカルサーバー、サーバー名とバージョン、もう1つは同じ詳細を持つリモートサーバーです。
これを実行すると、下位レベルのサーバーから上位レベルのサーバーにストアドプロシージャを実行できることが証明されます。
リンクサーバーは別のサーバーとの通信に使用されるため、この場合は新しいバージョンであり、おそらくすべてが機能します。
ただし、変更されて互換性がなくなった(任意のタイプの)オブジェクトに依存していないことを確認する必要があります。 (たとえば、msdb
データベースではsysdtspackages
はsysssispackages
になります。)