gpt4 book ai didi

sql-server - 将 SQL Server 数据库从测试部署到上线

转载 作者:行者123 更新时间:2023-12-01 21:43:15 24 4
gpt4 key购买 nike

我想知道你们如何管理 2 个 SQL Server(特别是 SQL Server 2005)之间的数据库部署。现在,已经开发并上线了。由于这应该是构建脚本的一部分(标准 Windows 批处理,即使考虑到这些脚本当前的复杂性,我以后可能会切换到 PowerShell 等),因此 Enterprise Manager/Management Studio Express 不算在内。

您只需复制 .mdf 文件并将其附加吗?在处理二进制数据时,我总是有点小心,因为这似乎是一个兼容性问题(即使开发和实时应该始终运行相同版本的服务器)。

或者 - 鉴于 T-SQL 中缺少“EXPLAIN CREATE TABLE” - 您是否执行某些操作将现有数据库导出到可以在目标服务器上运行的 SQL 脚本中?如果是,是否有一个工具可以自动将给定数据库转储到 SQL 查询中并在命令行下运行? (再次强调,Enterprise Manager/Management Studio Express 不算在内)。

最后 - 鉴于实时数据库已经包含数据,部署可能不涉及创建所有表,而是检查结构的差异并更改实时表,这可能还需要在存在时进行数据验证/转换字段发生变化。

现在,我听到了很多关于 Red Gate 的好消息。产品,但对于业余爱好项目,价格有点贵。

那么,您使用什么来自动部署 SQL Server 数据库从测试到上线?

最佳答案

我已经开始对所有 DDL(创建/更改/删除)语句进行手动编码,将它们作为文本文件添加到我的 .sln 中,并使用正常版本控制(使用 subversion,但任何修订控制都应该有效)。这样,我不仅获得了版本控制的好处,而且从开发/阶段进行实时更新对于代码和数据库来说是相同的过程 - 标签、分支等工作都是一样的。

否则,我同意如果您没有公司为您购买 Redgate,那么它会很昂贵。如果你能让一家公司为你购买它,那就真的值得了!

关于sql-server - 将 SQL Server 数据库从测试部署到上线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/580/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com