質問

ここ数日、このアプリの移行で頭を痛めています。私が持っているのは、SMSQL Server 2005を実行しているWindows 2003 Serverにアップグレードされている古いMSSQL Server 2000をサポートするアプリケーションです。SQLServerについてはほとんど知りませんが、明らかに十分ではありません。

Databases-> [Database]-> All Tasks-> Backup Database ...に移動して「Full」を選択し、ファイルを保存して、古いサーバーのデータベースをバックアップしようとしました。そのバックアップファイルを新しいサーバーに移動して復元を試みましたが、古いサーバー上の場所で[Database] .mdfファイルを探していると言って文句を言いました。

それで、データのエクスポートを試みて、ローカルSQL 2000データベースを選択し、他のマシン上の新しいSQL 2005データベースをポイントしました。最後まで到達し、テーブルが結合されています。

2000ボックスで「SQLを生成」コマンドを実行し、SQL 2005で実行しようとしました。SQLServer 2005でサポートされなくなった古い* =構文を使用する外部結合が多数あるようです。 、これはベンダーデータベースであるため、これらのテーブルをセットアップしたときの本当の意図がわからない。

このデータベースの移行を試みることができる他の方法はありますか?

役に立ちましたか?

解決

バックアップファイルには" hard"があります。格納されているデータファイルの場所。更新する必要があります:

2005年に復元するとき、最後の[OK]をクリックする前に(.bakファイルを選択した後)復元するには、[オプション]タブに移動します。これには、バックアップファイルにあったmdfおよびldfの場所が含まれます。これらを新しいマシンの正当なディレクトリに変更します。

他のヒント

古いサーバーからデータベースをデタッチし、mdfおよびldf(およびその他の関連ファイル)をサーバーサーバーにコピーしてから、データベースを新しいサーバーにアタッチできます。

アタッチすると、SQL Serverはこれを2005形式のデータベースにアップグレードします。互換性に問題がある場合は、それも変更できます。 SQL Server Management Studioで、データベースを右クリックし、プロパティをクリックして、[オプション]をクリックし、互換モードを「SQL Server 2000(80)」に変更します。

ピーターが指摘したように、新しいサーバー上に存在する新しいパスに変更する必要があります。
この写真が役立ちます:

restore

数年前に学んだ1つの秘Oneは、最後のオプションボタン(「データベースを読み取り専用のままにする...」)を1分間クリックして、新しいサーバー内のデータファイルの場所を表示およびコピーすることです。 復元する前に最初のオプションに戻すことを忘れないでください

SQL2000のデータベースのバックアップをファイルに作成します。同じ名前でSQL2005に新しいデータベースを作成し、オプション" force restore over existing database"を使用してバックアップファイルを新しいデータベースに復元します。新しいデータベースの準拠レベルを" SQL2000(8.0)"に設定します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top