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.servers
onPremisesServer に [ipadres] を使用する代わりに、サーバー エイリアスを見つけるために実行する必要がありました。まだそれを機能させることはできません。テーブルのスキーマはまったく同じです。
DeicLone123が述べたように編集し、データのインポートとエクスポートを使用しました。Azure でテーブルの名前を tablename-old に変更し、ウィザードを実行して取得しました。