Wondering how to deploy DACPAC? We can help you.
As part of our Server Management Services, we assist our customers with several SQL queries.
Today, let us focus on how we can deploy DACPAC with SQL Server Management Studio.
How to deploy DACPAC
The deployment process registers a DAC instance by storing the DAC definition in the
msdb system database. Then it creates a database, populates that database with all the database objects defined in the DAC.
Security and permissions
Authentication logins are stored in a DAC package without a password. When the package is deployed or upgraded, the login is created as a disabled login with a generated password.
To enable the logins, we log in using a login with the ALTER ANY LOGIN permission. We use ALTER LOGIN to enable the login and assign a new password to communicate to the user.
Windows Authentication logins do not require this because SQL Server does not manage their passwords.
A DAC can only deploy by members of the
serveradmin fixed server roles, or by logins in the
dbcreator fixed server role with ALTER ANY LOGIN permissions. The built-in SQL Server system administrator account named
sa can also deploy a DAC.
Deploying a DAC with logins to SQL Database requires membership in the
serveradmin roles. Deploying a DAC without logins to SQL Database requires membership in the
[Couldn’t set permissions? We’d be happy to assist!]
How to deploy DACPAC with SQL Server Management Studio
Follow the below steps suggested by our Support Engineers in order to deploy DACPAC
- Initially, open SQL Server Management Studio.
- Then, we connect to the SQL Server Instance containing the database to deploy to.
For example, SQL Server 2008 R2 SQL Express instance.
- Now, we navigate the tree in the Object Explorer to the database to deploy to.
- Then, right-click on the database name and select Tasks | Upgrade Data-tier Application…
- It displays the Upgrade Data-tier Application wizard. It presents the set of steps that the wizard will execute
- Here, we click Next.
- Browse to find and select the DACPAC file. The default expected location is: C:\Users\<userName>\ Documents\SQL Server Management Studio\DAC Packages
- Then click Next.
- The information in the DACPAC compares with the target database.
If the target database changes externally from a DACPAC deployment, it warns of a change in the database
We can proceed anyway, or exit the wizard and research the issue.
- Then we click Next
- It will automatically generate the deployment script.
- From the above dialog, we can optionally select to save the deployment script to a file.
- When ready, click Next.
- The Upgrade Plan will display for review.
a) We can elect to save the report.
b) We again have the option to save the script.
- Then click Next
- A summary displays information that was in use during the deployment.
- Now we click Next and the deployment process begins
- Then it executes the script, completing the DACPAC deployment process.
- As per desire, click Save Report.
- Finally, click Finish.
Limitations and restrictions
A DAC can deploy to SQL Database, or an instance of the Database Engine running SQL Server 2005 Service Pack 4 or later.
If we create a DAC using a later version, the DAC may contain objects not supported by SQL Server 2005. We cannot deploy those DACs to instances of SQL Server 2005.
[Need help with the deployment? We are available 24*7]
In short, the deployment process registers a DAC instance by storing the DAC definition in the
msdb system database. Today, we saw an effective method our Support Engineers employ in order to deploy DACPAC.