2

http://sqlazuremw.codeplex.com/のウィザードを使用して、データベースを次の場所から移動しました。

Microsoft SQL Server 2008 (SP3) - 10.0.5500.0 (X64) 
Standard Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1) (VM)

Microsoft SQL Azure (RTM) - 11.0.9164.122 

これはうまく機能しましたが、1 ギガバイトを超えるごみデータを含むテーブルがありました。だから私はプロセスを止めました。これでテーブル構造がコピーされましたが、内容を埋めるのを忘れていました。クエリを使用して手動でこれを修正する必要があります。

-- when connected to the azure db
select into azureDb.dbo.tablename select * onPremisesServer.onPremisesDb.dbo.tablename

しかし、それを実行すると、次のようになります。

メッセージ 40515、レベル 15、状態 1、行 16
'onPremisesServer.onPremisesDb.dbo.tablename' 内のデータベースまたはサーバー名への参照は、このバージョンの SQL Server ではサポートされていません。

リンク サーバーを SQL Azure で動作させることができないことがわかりました。これはクライアント関連であると表示されます。そこで、SSMS のバージョンを調べました。

  • Microsoft SQL Server Management Studio 11.0.3128.0

だから、これを引き起こすことはできません。また、「onPremisesServer」が単なる IP アドレスであることに問題があり、select name from sys.serversonPremisesServer に [ipadres] を使用する代わりに、サーバー エイリアスを見つけるために実行する必要がありました。まだそれを機能させることはできません。テーブルのスキーマはまったく同じです。

DeicLone123が述べたように編集し、データのインポートとエクスポートを使用しました。Azure でテーブルの名前を tablename-old に変更し、ウィザードを実行して取得しました。 ここに画像の説明を入力

4

1 に答える 1

1

http://sqlazuremw.codeplex.com/から3.x を再度使用して、最後のテーブルだけを移行しました。そのように簡単!データや列の種類などを手動で転送するのは本当に大変です。そのため、このオープンソースの移行ツールは本当にお勧めです!

于 2013-11-01T10:08:25.910 に答える