SQL Azureデータベースを開発マシンにコピーする方法を知っている人はいますか?クラウドに開発用データベースを配置するのにお金をかけたくないのですが、それが本番データを取得するための最良の方法です。本番データベースを新しい開発データベースにコピーしましたが、同じデータベースをローカルにしたいと思います。
助言がありますか?
SQL Azureデータベースを開発マシンにコピーする方法を知っている人はいますか?クラウドに開発用データベースを配置するのにお金をかけたくないのですが、それが本番データを取得するための最良の方法です。本番データベースを新しい開発データベースにコピーしましたが、同じデータベースをローカルにしたいと思います。
助言がありますか?
回答:
これには複数の方法があります。
data
テーブルにインポートするだけです。列のプロパティ、制約、キー、インデックス、ストアドプロシージャ、トリガー、セキュリティ設定、ユーザー、ログオンなどは転送されません。ただし、これは非常に単純なプロセスであり、SQL Server Management Studioのウィザードを実行するだけで実行できます。方法#1(SSISを使用)の手動手順は次のとおりです。
SSISパッケージを作成し、データを再インポートするときにいつでも再実行することで、自動化できます。SSISを使用してクリーンなDBにのみインポートできることに注意してください。一度一度実行すると、ローカルデータベースに増分更新を行うことはできません。
方法#2(SSIDデータとスキーマオブジェクト)は非常に簡単です。最初に上記の手順を実行し、次にDB作成スクリプトを作成します(SSMSでデータベースをクリックして、[スクリプトの生成]-> [データベース作成]を選択します)。次に、このスクリプトをローカルデータベースで再生します。
方法#3は、ブログのhttp://dacguy.wordpress.com/2012/01/24/sql-azure-importexport-service-has-hit-production/で説明されています。DBコンテンツをBACPACとしてAzure Blob Storageに転送するプロセスを含むビデオクリップがあります。その後、ファイルをローカルにコピーしてSQLインスタンスにインポートできます。BACPACをデータ層アプリケーションにインポートするプロセスについては、http://msdn.microsoft.com/en-us/library/hh710052.aspxで説明されています。
Azureデータベースのデータをローカルデータベースにコピーします。これで、SQL Server Management Studioを使用して、以下のようにこれを行うことができます。
「次へ」/「次へ」/「完了」
正しいので、ダンブルダッドの回答の簡略版を追加したかっただけです。
SQL Server 2016 Management Studioでは、ローカルデータベースにAzureデータベースを取得するプロセスが合理化されました。
インポートするデータベースを右クリックし、[ タスク]> [ データ層アプリケーションのエクスポート ]をクリックして、データベースをローカルの.dacpacファイルにエクスポートします。
ローカルのターゲットSQLサーバーインスタンスで、[ データベース ] > [ データ層アプリケーションのインポート ]を右クリックし、ローカルになったら、データベースのバックアップや復元などを実行できます。
今ではずっと楽だと思います。
さらに、SQLバックアップとFTP(https://sqlbackupandftp.com/)を使用して、安全なFTPサーバーへの毎日のバックアップを実行しています。そこから最近のBACPACファイルをプルするだけで、同じダイアログにインポートされます。これにより、ローカルデータベースを作成する方が速くて簡単です。
Windows Azure管理ポータルでSQL Azure Data Syncを確認することもできます。SQL AzureとSQL Serverの間のスキーマとデータを含むデータベース全体を取得および復元できます。
とても簡単です。これは私にとってうまくいきました... Azure SQLデータベースをローカルマシンにダウンロードするという点で...:
ただし、スクリプトだけでなくデータも必要な場合は、生成を開始する前に必ず詳細オプションを確認してください。「スクリプトを作成するデータのタイプ」までスクロールして、「スキーマとデータ」...またはあなたにとって適切なもの。
それはあなたのローカルマシンで実行できる素敵なSQLスクリプトファイルを提供し、それはデータベースを作成し、それにすべてのデータを投入します。
私の場合、私にはFKやその他の制約がないことを覚えておいてください...また、それは大量のデータではありませんでした。
私はこれを一般的なバックアップメカニズムとしてはお勧めしません...
sqlcmd /S <server> /d <database> -E -i <azure_dump.sql>
msdeploy.exe
注意:msdeploy.exe
宛先データベースを単独で作成できないため、最初に手動で作成する必要があります。
次のmsdeploy.exe
ように実行します。
"c:\Program Files\IIS\Microsoft Web Deploy V3\msdeploy.exe" -verb:sync -dest:dbDacFx="destination_DB_connection_string",dropDestinationDatabase=true -source:dbDacFx="azure_DB_connection_string",includeData=true -verbose
SqlPackage.exe
azure DBをbacpacパッケージにエクスポートします。
"c:\Program Files (x86)\Microsoft SQL Server\110\DAC\bin\SqlPackage.exe" /a:Export /ssn:"azure_db_server" /sdn:"azure_db_name" /su:"user_name" /sp:"password" /tf:"file.bacpac"
パッケージをローカルDBにインポートします。
"c:\Program Files (x86)\Microsoft SQL Server\110\DAC\bin\SqlPackage.exe" /a:Import /SourceFile:"file.bacpac" /TargetServerName:".\SQLEXPRESS" /TargetDatabaseName:CopyOfAzureDb
これを試してください:http : //mooneyblog.mmdbsolutions.com/index.php/2011/01/11/simple-database-backups-with-sql-azure/。
他の代替案はSQL Azure Data Syncです。
数日前にまたがったブログ記事がもう1つありますが、今は見つかりません。この投稿を見つけたらすぐに更新します。
「読み取り専用列 "id"への挿入に失敗しました」というエラーが発生したため、SSISインポート/エクスポートを機能させることができませんでした。また、http://sqlazuremw.codeplex.com/を機能させることもでき ず、上記のSQL Azure Data Syncへのリンクも機能しませんでした。
しかし、私はBACPACファイルに関する優れたブログの記事を見つけました:http://dacguy.wordpress.com/2012/01/24/sql-azure-importexport-service-has-hit-production/
では、ポストでのビデオブログの記事の著者は、6つのステップを実行します:
Azure管理ポータルでストレージアカウントを作成するか、ストレージアカウントに移動します。Blob URLとストレージアカウントのプライマリアクセスキーが必要です。
このブログの投稿では、bacpacファイル用の新しいコンテナーを作成することをお勧めし、そのためにAzure Storage Explorerを使用することを推奨しています。(Azure Storage Explorerに追加するには、Blob URLとストレージアカウントのプライマリアクセスキーが必要です。)
Azure管理ポータルで、エクスポートするデータベースを選択し、リボンの[インポートとエクスポート]セクションで[エクスポート]をクリックします。
表示されるダイアログには、データベースのユーザー名とパスワード、BLOB URL、アクセスキーが必要です。blob URLにコンテナーを含め、ファイル名を含めることを忘れないでください(例:https : //testazurestorage.blob.core.windows.net/dbbackups/mytable.bacpac)。
[完了]をクリックすると、データベースがBACPACファイルにエクスポートされます。これには時間がかかる場合があります。Azure Storage Explorerでチェックインすると、0バイトのファイルがすぐに表示される場合があります。これは、ブロブストアへの書き込みアクセス権があることを確認するインポート/エクスポートサービスです。
これが完了すると、Azure Storage Explorerを使用してBACPACファイルをダウンロードし、SQL Server Management Studioでローカルサーバーのデータベースフォルダーを右クリックして、データ層アプリケーションのインポートを選択すると、BACPACファイルを読み込むウィザードが開始されます。 Azureデータベースのコピーを作成します。最初にローカルにコピーしたくない場合は、ウィザードを直接blob-storeに接続してBACPACファイルを取得することもできます。
最後の手順は、SQL Server Management StudioのSQL Server 2012エディション(私が実行しているバージョン)でのみ使用できる場合があります。このマシンで以前にチェックしたものはありません。ブログ投稿では、作成者はコマンドラインツールDacImportExportCli.exeをインポートに使用しています。インポートはhttp://sqldacexamples.codeplex.com/releasesで利用できると思います。
受け入れられた回答は古くなっています。より良い答えを見つけました:データ層アプリケーションのインポートを使用します
詳細については、次の記事を参照してください: ローカルサーバーへのAzure SQLデータベースの復元
ツール「SQLデータベース移行ウィザード」で試すことができます。このツールは、Azure SQLからデータをインポートおよびエクスポートするオプションを提供します。
詳細はこちらをご確認ください。
新しいAzureモバイルサービスを使用して、SQL AzureからAzure Storageでホストされている.bacpacファイルへの夜間バックアップエクスポートを実行できます。このソリューションは100%クラウドであり、サードパーティのツールを必要とせず、ローカルでホストされているSQL Serverインスタンスが何かをダウンロード/コピー/バックアップする必要はありません。
約8つの異なるステップがありますが、それらはすべて簡単です。http: //geekswithblogs.net/BenBarreth/archive/2013/04/15/how-to-create-a-nightly-backup-of-your-sql-azure .aspx
私はいつも最も簡単なインポート/エクスポート機能を使用しています。
ステップ1:
次のようにazureインスタンスからバックアップを取得します。データベースを選択→右クリック→タスク→データ層アプリケーションのエクスポート。
手順2: バックアップファイルに特定の名前を付けて、目的の場所に保存します
ステップ3:これで、SQLインスタンスからローカルにデータベースのバックアップが作成されました。ローカルに復元してみましょう。バックアップしたデータベースをCドライブにコピーします。管理者権限でPowerShellを開き、Cドライブに移動します
ステップ4:マスターキーを削除するPowerShellスクリプトをダウンロードしてみましょうRemoveMasterKey.ps1 は同じドライブにスクリプトを持っています。この場合はCです。
手順5:次のようにスクリプトを実行します。.\ RemoveMasterKey.ps1 -bacpacPath "C:\ identity.bacpac"
これで、ローカル環境のMSSQL 2017で復元できます。
ステップ6:ローカルサーバーに接続し、[データベース]→[Import-Data-Tier-Application]をクリックします
手順7:復元するデータベースに名前を付けます。
すべてが緑色で表示されます。
図付きの私のブログを読んでください。
Optillect SQL Azure Backupをダウンロードしてください-15日間の試用期間があるため、データベースを移動するのに十分です:)
私にとっての秘訣は、空のDBでPK / FK /制約を複製し、データのインポート中に制約を一時的に無効にすることでした(https://stackoverflow.com/a/161410を参照)。
より正確に:
お役に立てれば!
SQL Azureのインポート/エクスポートサービスを使用して、.bacpacファイルを作成します。
次に、別のStack Overflowの記事でこのメソッドを見てください。
Azure SQL Syncを使用するDBのBacpacをインポートする際に問題が発生した場合、Sandrino Di Mattiaはこれを解決するための優れたシンプルなアプリケーションを開発しました。
データベースをローカルにバックアップする無料で効果的なオプションが必要な場合(手動で実行してもかまいません)、最新バージョンのMicrosoft Visual Studio 2015 Community Edition(無料)またはProfessional / Premium / Ultimateに組み込まれているスキーマおよびデータ比較機能を使用します版。それは魅力のように機能します!
AzureのBizParkアカウントを持っています。支払いを行わずにデータベースを直接バックアップする方法はありません。私はVSの作品でこのオプションを見つけました。
こんにちは、SQLAzure DBの移行と管理にSQLAzureMWツールを使用しています。とても便利なものです。これはcodeplexからダウンロードされましたが、現在は利用できません。codeplexをシャットダウンする予定です。同じアプリケーションツールがGttHubで利用可能になりました。この下のリンクは、このツールの使用方法の説明であり、アプリケーションをダウンロードして入手することもできます。