簡體   English   中英

Azure SQL,將數據庫的大部分復制到現有服務器(不是新服務器)中

[英]Azure SQL, Copy most of a database into an existing one (not new one) same server

我知道我可以使用以下方法將數據庫克隆到一個新數據庫中

創建數據庫Database1_copy作為Database1的副本;

https://docs.microsoft.com/zh-cn/azure/sql-database/sql-database-copy-transact-sql

這是有缺陷的,除了在Azure中,數據庫屬性是由Azure門戶管理的Azure之外,因此,我嘗試尋找一種將大多數架構/資源/數據復制到現有數據庫中的方法

將非常適合:

克隆數據庫Database_test作為Database_production的副本

[甚至第一種方法都是“克隆”整個數據庫,實際上目標數據庫上應該保留很少的表,因此更好的方法是克隆所有內容('table1','table2')。 實際計划通過編寫目標db所需的幾個表並將其導入后覆蓋這些表的腳本來實現此目的,但下注解決方案是另一種方法]

您可以通過幾種方式執行此操作:

  1. 通過Azure門戶
    • 在Azure門戶( https://portal.azure.com )中打開數據庫
    • 在數據庫的概述刀片中,選擇“復制”選項 在此處輸入圖片說明
    • 填寫參數,您要在哪個服務器中復制 在此處輸入圖片說明
  2. 使用SQL Server客戶端並連接到服務器
    • 在Azure中打開您的SQL Server刀片服務器
    • 選擇“防火牆”選項
    • 點擊“添加客戶端IP”
    • 使用您的連接字符串和您喜歡的客戶端連接到數據庫,可能是SSMS
    • 執行您的SQL查詢以在同一服務器上克隆數據庫
-- Copy a SQL database to the same server
-- Execute on the master database.
-- Start copying.
CREATE DATABASE Database1_copy AS COPY OF Database1;

https://docs.microsoft.com/zh-cn/azure/sql-database/sql-database-copy-transact-sql

上面的SQL語句在Azure SQL數據庫中可以按預期正常運行。

重要筆記:

  1. 使用server-level principal login或創建要復制的數據庫的登錄名登錄到master database系統數據庫 )。

  2. 不是服務器級別主體的登錄名必須是dbmanager角色的成員才能復制數據庫。

  3. 使用SQL Server Management Studio的更新版本

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM