日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

使用命令行导出 SQL Server 数据层应用程序

發布時間:2023/12/4 数据库 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用命令行导出 SQL Server 数据层应用程序 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

點擊上方藍字關注“汪宇杰博客”

我們可以使用 SSMS 導出 SQL Server 數據庫的數據層應用程序。我在本地機器上使用這種方法已經有好幾年了。如果不知道什么是 DAC,您可以參考 Microsoft 文檔:

https://docs.microsoft.com/en-us/sql/relational-databases/data-tier-applications/data-tier-applications?view=sql-server-2017

數據層應用程序 (DAC) 是一個邏輯數據庫管理實體,用于定義與用戶數據庫關聯的所有 SQL Server 對象,如表、視圖和實例對象(包括登錄名)。DAC 是 SQL Server 數據庫部署的一個自包含單元,它使數據層開發人員和數據庫管理員能夠將 SQL Server 對象打包到一個名為“DAC 包”(也稱作 DACPAC)的可移植項目中。

但是,要跑在自動化環境下工作, 如 CI/CD 環境,或一些自動的計劃任務。我們通常需要在命令行下完成。

微軟提供了一個跨平臺的命令行工具, 可以導入/導出DAC: sqlpackage.exe

它是用.NET寫的,目前 Linux 和 macOS 的版本還在預覽中。對于 Windows,可以在此處下載并安裝:https://go.microsoft.com/fwlink/?linkid=2087429

這個工具會被安裝到?C:\Program Files\Microsoft SQL Server\150\DAC\bin 下面,但是它不會自動更改PATH環境變量,因此要使用這個工具得手工切換到安裝目錄。

要導出數據層應用程序,需要指定3個參數:

/Action:{Extract|DeployReport|DriftReport|Publish|Script|Export|Import} Specifies the action to be performed. (short form /a)


/SourceConnectionString:<string>Specifies a valid SQL Server/Azure connection string to the source database. If this parameter is specified it shall be used exclusively of all other source parameters. (short form /scs)


/TargetFile:<string> Specifies a target file (i.e., a .dacpac files) to be used as the target of action instead of a database. If this parameter is used, no other target parameter shall be valid. This parameter
shall be invalid for actions that only support database targets. (short form /tf)

例如

SqlPackage.exe /a:export /scs:"Server=(local);Database=moonglade-dev;Trusted_Connection=True;" /tf:"D:\moonglade-dev-20190520.bacpac"

可以看到 bacpac 文件導出成功

總結

以上是生活随笔為你收集整理的使用命令行导出 SQL Server 数据层应用程序的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。