web-dev-qa-db-ja.com

SQL Server 2008 DBをSQL Server 2005に*復元*

SQL Server 2008が選択されたdbとして有効になっているという前提の下で、CMSプロジェクトに取り組んでいます。そうではありませんでした。今では、すべてのコンテンツをSQL Server 2008からSQL Server 2005にバックポートする必要があります。

簡単なバックアップ/復元手順では、「RESTORE HEADERONLYが異常終了しています(Microsoft SQL Server、エラー:3241)」。

残念ながら、データをExcelスプレッドシートにエクスポートすると、複数のOLEエラーが発生しますが、これは実際にはcmsのdbの問題であると思います。

誰かがこのタスクに推奨したい他のアプローチを持っていますか?前もって感謝します

21

RedGate を使用:

sQL Serverデータベースの内容を比較および展開するためのツール。

ソース管理では、ライブデータベース、バックアップ、またはSQLスクリプトを操作できます。破損または欠落したデータは、データベース全体を回復する必要なく、単一の行に復元できます。

SQLデータ比較は、変更をすばやく簡単に、エラーなしで比較および展開するのに役立ちます...

15
Otávio Décio

デフォルトではこれを行う方法はありません。 2008サーバー上で2008データベース用のスクリプトを生成し、2005バージョンでこれらのスクリプトを実行できます。スクリプトを手動で確認し、2008バージョンに固有のすべてのパーツを削除する必要があることに注意してください。

もう1つの方法は、Red Gateまたは ApexSQL Diff (スキーマの移動)および ApexSQL Data Diff (データの移動)などのサードパーティツールを使用することです。

9
LarryB

スクリプトの生成を使用してデータベースとスキーマを作成し、SQL Server 2005とスクリプトデータを対象とすることを確認します。

6
Glory_techies

バックアップと復元を行うのではなく、SQL 2005のデータのインポート/エクスポートウィザードを使用してみてください。

http://support.Microsoft.com/default.aspx?scid=kb;en-us;314546

http://msdn.Microsoft.com/en-us/library/ms140052(SQL.90).aspx

5
Jeremy

私は同じ問題にぶつかっただけで、これが私がそれを回避した方法です。

問題は、稼働中のSQL Server 2008データベースから新しいSQL Server 2005データベースにデータベースをコピーすることでした。

2008サーバーでManagement Studioを使用してデータベースをスクリプト化しました。データではなく、データベースの設計だけをスクリプト化しました。また、DBにはテーブルとインデックスしかありません。そのため、賢いオブジェクトを使用してこれを試したことはありませんが、なぜ機能しないのかはわかりません。

2005サーバーで新しいデータベースを手動で作成し、スクリプトを実行してすべてのテーブルとインデックスを設定しました。

Management Studioで2008サーバーに戻って、データのエクスポートウィザードを使用して、データを2008サーバーから2005サーバーにエクスポートしました。現在実行されており、データの移動は非常に満足しているようです。

すべてのデータが揃ったら、やるべきことがいくつか残っています。ユーザーを作成し、2005 DBにセキュリティを設定しますが、全体としては、悪いやり方のようには見えませんそれ。ポイントアンドクリックではありませんが、それほど難しくありません。

したがって、データベースのコピーウィザードは機能しないようです(パッケージは最終的に2005サーバーで実行され、2005 Management Studioは2008と通信できないためと思います)が、データのエクスポートウィザードはデータの移動に非常に満足しています... DBはすでにターゲットサーバーに存在しているためです。

お役に立てれば幸いです。

4
Steve

SQL Serverで以前のバージョンに復元することはできません

SQL 2005のバックアップはありませんか?それ以外の場合は、2008年にデータベース全体をエクスポートし、2005年に再インポートするか、2008年にインポート/エクスポートウィザードに制限されます。

または、サードパーティのツールに依存します。例えばRed Gate Data Compareは同期できます。 2つのサーバー/データベース間のDATA

1
jerryhung

私はmysqlのみを使用していますが、データをSQLステートメントにエクスポートしてから、SQL 2005にインポートできますか?ちょっとした考え..

0
SonnyNoBucks

私は同様の問題(sql 2005からsql 2000)に直面し、古いバージョンではたまたま空のデータベースがあることに気付きました。 bcp.exeを使用してすべてのデータをコピーしました。

0
Joshua

このリンクをチェックしてください ここをクリック SQL Server 2008でデータベーススクリプトを作成し、SQL Server 2005以下のバージョンを使用できます。

0
karthi