问题标签 [redgate]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
730 浏览

sql-server - SQL 比较部署脚本不包括所有 ALTER SCHEMA 命令

我有一个试图在 SQL Server 2008(不是 R2)上清理的数据库。目前,所有表都驻留在 dbo 模式中。有些表名是单数,有些是复数。

我创建了一个新架构 crm。我将所有表从 dbo 移动到 crm,并重命名了单数表名以匹配复数表名。当我在开发数据库和生产数据库之间执行 SQL 比较(版本 10.4.8.87)时,脚本包括以下内容:

如上所述,它不包括任何 ALTER SCHEMA ... TRANSFER ... 命令,用于已经是复数并且不需要执行 sp_rename 命令的表。

有没有其他人看过这个?

0 投票
1 回答
384 浏览

redgate - 我可以使用 RedGate 的 SQL 搜索来搜索多个单词吗?

我想做这个:

我知道我可以搜索一个单词的完全匹配,但我希望能够在同一个对象中搜索多个单词。那可能吗?

0 投票
2 回答
276 浏览

sql-server - 备份的红门 SQL 比较不起作用

我需要 Red Gate 用户的帮助。

我正在尝试比较 2 个数据库备份。在我选择了 2 个备份后,“立即比较”按钮未激活,并且还显示“未选择备份集”。

请看一下屏幕截图。

http://screencast.com/t/O62m66flA

你知道我在这里想念什么吗?还是我对这个功能的理解有误?

谢谢,RM

0 投票
1 回答
49 浏览

service - 15到30台机器上快速安装Windows服务有什么好产品?

我们有一个 Windows 服务,我想在很多机器上运行它。现在,当我们需要更新服务时,我们会在每台机器上手动登录并安装服务。这是一个非常耗时的过程。有没有工具可以让这很容易做到?

此外,有时当我们安装升级时,我们需要更改配置文件。作为工作流程的一部分,是否有任何工具也支持轻松更改配置文件?我们正在查看 RedGate 的部署管理器,但它仅支持编辑“appSettings”和“connectionStrings”元素,而不支持编辑配置文件中的其他内容。

0 投票
4 回答
463 浏览

redgate - 如何重命名 tSQLt 测试类?

我正在使用Red Gate SQL Developer工具开发数据库。SQL Test是运行 tSQLt 测试的 SSMS 插件,缺少重命名测试类的方法。

我有一个测试叫[BackendLayerCustomerAdministrationTests].[test uspMaintainCustomerPermissions throws error when PermissionValue is missing or empty].

这个名字太长了,它破坏了 Deployment Manager

2013-12-05 18:48:40 +00:00 错误指定的路径、文件名或两者都太长。完全限定的文件名必须少于 260 个字符,目录名必须少于 248 个字符。

这个类中还有其他笨拙的测试名称,所以我想从缩短类名开始。

一个更简洁的类名是CustomerTests.

sp_rename在这里没有帮助。

消息 15225,级别 11,状态 1,过程 sp_rename,第 374 行在当前数据库“ApiServices”中找不到名称为“BackendLayerCustomerAdministrationTests”的项目,因为@itemtype 输入为“(null)”。

我该如何改变它?

0 投票
3 回答
2274 浏览

iis - Powershell 启动网站 IIS

问题/问题

我正在测试运行 redgate 部署的脚本。在最后一步,它会启动一个网站:

它总是有效,但现在在最后一天我收到此错误

IIS 错误

在 Powershell 中运行 Start-Website 命令时,这个 SO 问题“无法创建文件”错误给出了一个很好的线索。


编辑:

查看我的事件日志并检查答案后,我发现当 Redgate 自动尝试安装/启动网站时,我收到了这个 IIS 错误:

在此 Serverfault 中:https ://serverfault.com/questions/456217/the-world-wide-web-publishing-service-www-service-did-not-register-the-url有人提到其原因是一个 IIS 网站是在没有主机头的情况下创建的。尝试启动网站后,我正在添加主机头。让我们找到解决方案

编辑 2: 我在尝试启动网站后添加了主机名。这导致该网站的主机名为空,并且在 IIS 中发生冲突。(或者别的地方)。我更改了脚本以获取网站,添加主机名,然后启动网站。还添加了“$RedgateWebsiteName"而不是$RedGateWebSiteName.现在完美运行!

编辑3: 经过一系列测试,我似乎最终遇到了同样的错误。一个部署没有问题,另一个部署确实有。

编辑 4: 我已经更新了脚本/错误/发布。在我点击安装之后,我从 IIS 中删除了我的网站。完美安装 - 没有问题,自动启动。第二次运行完全一样,第三次运行我得到上面的错误!

0 投票
3 回答
1359 浏览

sql-server - 使用 Teamcity 集成配置 SQL 测试

我正在使用 SQL Test 在 SQL Server 中创建一些单元测试。我与 Teamcity 集成,因此在构建时,它会自动运行 tSQLt 测试。

问题是我们计划为我们所有的商店过程创建数百个单元测试。而且我们不想在每次签入代码时都运行所有单元测试,而 Teamcity 运行构建 + 运行所有单元测试。

有没有办法将集成构建配置为仅运行签入的新单元测试。我需要为此创建一个自定义脚本吗?我似乎无法找到摆脱困境的方法。

还是在没有 Teamcity 自动运行 tSQLt 单元测试的情况下签入的实用解决方案?因此,只需在 DEV 服务器上手动运行新的测试用例(签入后)?对此的扩展是每晚运行批处理以运行所有单元测试。

0 投票
2 回答
992 浏览

deployment - 自动化构建和发布管理 VS2012

为了让我的生活更轻松,目前我们有 4 名开发人员在 Visual Studio 2012 中工作,我们正在使用 TFS 2012 进行源代码控制。我们从事的项目是一个多租户 Web 应用程序(具有多个 db 的单个源目录),它混合了旧版、asp 和 vb6 com 组件,以及新的 C# 代码。我们使用 TFS 进行源代码控制以及管理用户故事和错误。由于我们网站的工作方式,它不能仅在服务器上本地运行或调试。源代码控制当前为每个开发人员设置了一个单独的分支,其工作目录映射到开发服务器上的共享网络路径,该路径在 IIS 中有一个指向它的网站。Dev01-Dev05 等。开发人员在他们的分支中处理项目,使用他们的开发网站对其进行测试,然后将更改签入到他们自己的分支中并将它们合并到主干中。

很长的解释,但基本上每个开发人员都有一个分支和一个站点,然后将它们合并到具有自己站点的主干中。

为了部署我们的登台服务器:

  1. 我通过服务器上的 bat 文件编译了主干的网站
  2. 运行我构建的 Windows 应用程序以查询 TFS 以查找与处于特定状态的特定 WorkItems 关联的变更集,并将这些变更集的所有文件从发布文件夹复制到部署文件夹。
  3. 在服务器上运行另一个 bat 文件以使用 RedGate 的部署管理器从这些新文件创建一个包
  4. 转到我们网络上的 DM 站点以创建和部署该版本(无法让命令行工具为此工作,所以我必须手动完成)
  5. 运行已保存在与每个数据库(大约 10 个客户数据库)上的票号匹配的文件夹中的任何 SQL 脚本以支持发布

我尝试过使用 TFS 自动构建的东西,但从来没有真正得到它来正确构建网站。玩巡航控制也收效甚微。使用混杂的臭鼬工程项目来做到这一点非常耗时且充其量是不可靠的。

我的完美场景是:

  1. 门控签入,每次开发人员合并到主干时尝试构建/发布,如果构建失败则拒绝并通知开发人员。
  2. 一天结束时收集特定状态的 TFS 项目并将与它们关联的文件部署到暂存站点
  3. 在暂存的所有客户数据库中为这些 TFS 项目部署 SQL 脚本
  4. 最终*运行自动化回归 UI 测试,如果失败,创建新的工作项或电子邮件给开发人员
  5. 将 TFS WorkItems 更新为新状态,以便 QA/客户知道他们的项目已准备好在我们的暂存环境中进行测试
  6. 发送成功部署哪些项目的报告

我怎样才能到达这里,这样我就不用花费数小时来准备和部署发布到暂存和最终生产?对潜在的解决方案非常开放,很难改变的东西是我们正在使用的源代码控制,不能真正切换到颠覆或其他东西,所以我们非常坚持使用 TFS。

谢谢

0 投票
1 回答
128 浏览

php - 带有扩展存储过程的 SQL 查询

我有一些 php 代码可以执行与数据库相关的不同操作,例如备份和恢复。如果我使用内置的备份数据库或恢复数据库查询,它工作正常。我们使用名为 Red Gate SQL Backup 的产品,它使用扩展存储过程来完成这项工作。

该命令确实有效。问题是我有其他查询在此之后运行,并且查询不等待运行。例如,他们试图立即运行,但数据库还没有完全恢复,所以他们失败了。

有没有办法做到这一点,以便在查询实际完成之前它们不会运行?典型的 RESTORE DATABASE 不会发生这种情况,因为它会等到完成后再继续执行脚本中的下一个命令。

0 投票
1 回答
2026 浏览

sql-server - 使用 Sql 比较忽略 DEFAULT

我最近下载了 RedGate 的 SQL Compare 软件的免费试用版。我需要证明它对我的公司来说是一个有用的工具,这样我们就可以获得一些许可证,但也希望获得一些同步的数据库模式。我正在尝试对 2 个数据库进行模式比较,但我得到了一些不需要的行为。当我们使用DEFAULT约束时,问题就出现了getdate()。Sql Compare 将其显示为差异,但实际上它是相同的。

不同于

我想忽略这些差异并真正比较架构更改的位置。我的研究工作让我找到了一些遇到同样问题的人,但在所有情况下,redgate 都会以类似“此功能不存在,将考虑在未来发布”的内容做出回应:

http://www.red-gate.com/messageboard/viewtopic.php?t=8816

但是,我找不到任何不到 5 年的信息,所以我希望从那时起,他们已经添加了这个功能

我已经尝试过查看项目选项并对其进行试验,但似乎没有特定于这个问题。我发现的最接近的是:

忽略约束和索引名称
在比较数据库时忽略索引、外键、主键以及默认、唯一和检查约束的名称。部署数据库时不会忽略这些名称。

应用此选项时,问题似乎已解决,其中许多项目已从“差异”更改为“相同对象”。但我担心这只是给我提供了一个误报。我不想总是忽略约束和键。

此外,如果当前版本的 Sql Compare 确实无法实现我想要完成的任务,我需要一种方法来在报告和部署时忽略这些差异。我在想以下解决方法可能是可能的:

  1. 筛选出出现此问题的审计字段,例如lst_updt_dtmarchived_dtm
  2. 手动遍历并勾选出现此问题的项目(请不要让我)