天道酬勤,学无止境

database-deployment

如何使用 ASP.NET MVC 2 网站打包/发布 SQL 数据库?(How to Package/Publish SQL databases with ASP.NET MVC 2 Website?)

问题 我第一次尝试在本地 IIS 7 服务器上部署我的 ASP.NET MVC 2 网站,该服务器已配置并正在运行。 我已经使用没有数据库的 Web 部署选项进行了成功的部署(因此该站点尚未完全运行)。 大多数部署设置都非常直观,但是,我在项目设置中的 Package/Publish SQL 选项卡上遇到了问题。 这是我遇到的错误的样子(点击查看大图)。 它要求连接字符串,但我不知道该放什么。 它还给出了有关使用架构文件的另一个进程的奇怪错误。 欢迎任何指点。 我正在寻找让它运行的最简单方法。 回答1 我能够通过取消选中“包/发布 Web”选项卡中的“从应用程序数据文件夹中排除文件”来运行数据库。 然后它只是简单地复制数据库文件。

2021-10-23 12:31:47    分类:技术分享    visual-studio-2010   msdeploy   database-deployment

How to Package/Publish SQL databases with ASP.NET MVC 2 Website?

I'm trying to deploy my ASP.NET MVC 2 Website for the first time on a local IIS 7 server, which is configured and running. I've made successful deployments using the Web Deploy option without the databases (so the site isn't fully working yet). Most of the deployment settings are pretty intuitive, however, I have problems with the Package/Publish SQL -tab in the project settings. Here's how it looks like with the errors I'm getting (click for bigger view). It asks for Connection String, but I have no idea what to put there. It also gives a weird error about another process using a schema file

2021-10-23 07:32:21    分类:问答    visual-studio-2010   msdeploy   database-deployment

DACPAC 不包括复合对象(DACPAC not including composite objects)

问题 我有一个 VS2012 数据库项目,其中包括表、存储过程、视图等。 然后我有第二个数据库项目,其中包含对第一个项目的数据库引用。 我确保从“项目属性 -> 调试 -> 高级”菜单中选择了“包含复合对象”选项。 当我构建第二个项目并获取生成的 DACPAC 文件并通过 SSMS2012 部署它时,它不会创建第一个项目的对象。 我错过了什么吗? 为什么复合对象不包含在 DACPAC 中? 回答1 正如 Peter Schott 在上面的评论中所说,我需要按顺序部署两个输出的 Dacpac,首先使用引用的数据库。 你无法通过SSMS做到这一点,它不会让你两种不同的Dacpacs部署到同一个数据库。 但是通过 SQLPackage 不是问题。 回答2 我在用 dacfx 发布 dacpac 时遇到了同样的问题。 正如这里所回答的,我必须激活“包括复合对象”选项。 但这还不是全部。 编译项目时,Visual Studio 会在“第二个”项目中生成两个 dacpac 文件。 部署第二个项目时,您必须将这两个文件放在同一目录中。 希望有帮助,对我来说确实如此;-)

2021-07-28 13:23:50    分类:技术分享    visual-studio-2012   sql-server-data-tools   ssms-2012   database-deployment   dacpac

将多个参数添加到 sqlpackage.exe 中的“变量”参数的语法是什么?(What is the syntax for adding multiple arguments onto the “Variables” parameter in sqlpackage.exe?)

问题 我正在使用SqlPackage.exe进行部署。 我已阅读此处的文档以了解SqlPackage.exe的用法。 该文档仅说明了一个变量的 Synax: 为特定于操作的变量指定名称值对; {变量名}={值}。 DACPAC 文件包含有效 SQLCMD 变量的列表。 如果未为每个变量提供值,则会导致错误。 我的问题是文档没有说明如何将多个参数传递给Variables参数。 例如,我想这样做: sqlpackage.exe ...args go here... /Variables:VarToOverride=Value1,Var2ToOverride=Value2 有谁知道这个的语法? 回答1 我设法找到了一些有用的东西。 sqlpackage.exe ...args go here... /Variables:VarToOverride=Value1 /Variables:Var2ToOverride=Value2 这不是我一直在寻找的,但它有效。 回答2 您是否尝试使用分号而不是逗号分隔。 IE: sqlpackage.exe ...args go here... /Variables:VarToOverride=Value1;Var2ToOverride=Value2 您的另一个选择是使用发布配置文件。 回答3 您可以指定多个参数,如下所示。 /p

2021-07-11 11:55:34    分类:技术分享    sql-server   sql-server-data-tools   database-deployment

SQL Server 2008 R2 卡在单用户模式(SQL Server 2008 R2 Stuck in Single User Mode)

问题 在本地数据库上执行数据库部署(来自 VS SQL Server 数据库项目)失败后,该数据库一直处于单用户模式(部署作为单用户模式运行)的状态。 当我从 SSMS 连接到它并尝试以下操作时: ALTER DATABASE MyDatabase SET MULTI_USER; GO 我收到错误: 目前无法更改数据库“MyDatabase”的状态或选项。 数据库处于单用户模式,当前有用户连接到它。 我尝试使数据库脱机,SSMS 告诉我它成功了,但它实际上似乎没有做任何事情。 到目前为止,我只能通过删除和重新创建数据库来解决这个问题(这很好,因为它只是一个本地测试数据库)。 但是,我希望能够重置状态。 如何说服 SQL Server 将该数据库从单用户模式中移除? 回答1 在第一次在主数据库中运行以下查询 exec sp_who 如果找不到罪魁祸首,请尝试 SELECT request_session_id FROM sys.dm_tran_locks WHERE resource_database_id = DB_ID('YourDatabase') 然后通过以下查询终止使用您的数据库的所有进程: KILL spid 然后运行以下查询: USE Master ALTER DATABASE YourDatabase SET MULTI_USER 回答2 试试下面的命令

2021-06-12 06:18:19    分类:技术分享    sql   sql-server   database   sql-server-2008   database-deployment

DACPAC not including composite objects

I have a VS2012 database project which includes tables, stored procs, views etc. I then have a second database project which contains a database reference to the first project. I have ensured that the "Include composite objects" options is selected from the "Project Properties -> Debug -> Advanced" menu. When I build the second project and take the resulting DACPAC file and deploy it through SSMS2012 it doesn't create the firsts project's objects. Am I missing something? Why don't the composite objects get included in the DACPAC?

2021-06-03 11:57:07    分类:问答    visual-studio-2012   sql-server-data-tools   ssms-2012   database-deployment   dacpac

What is the syntax for adding multiple arguments onto the “Variables” parameter in sqlpackage.exe?

I am using SqlPackage.exe for my deployment. I have read the documentation here for the usage of SqlPackage.exe. The documentation only states the synax for one variable: Specifies a name value pair for an action specific variable; {VariableName}={Value}. The DACPAC file contains the list of valid SQLCMD variables. An error will result if a value is not provided for every variable. My problem is that the documentation does not say how to pass multiple arguments into the Variables parameter. For example, I want to do this: sqlpackage.exe ...args go here... /Variables:VarToOverride=Value1

2021-06-01 21:03:30    分类:问答    sql-server   sql-server-data-tools   database-deployment

SQL Server 2008 R2 Stuck in Single User Mode

Having executed a DB deploy (from a VS SQL Server database project) on a local database, which failed, the database has been left in a state where it has single user mode left on (the deploy runs as single user mode). When I connect to it from SSMS and try something like the following: ALTER DATABASE MyDatabase SET MULTI_USER; GO I get the error: Changes to the state or options of database 'MyDatabase' cannot be made at this time. The database is in single-user mode, and a user is currently connected to it. I tried taking the database offline, which SSMS tells me succeeds, but it doesn't

2021-05-15 13:36:41    分类:问答    sql   sql-server   database   sql-server-2008   database-deployment