Sql server 将数据库查询重定向到其他服务器

Sql server 将数据库查询重定向到其他服务器,sql-server,redirect,Sql Server,Redirect,我必须很快将一个SQL Server生产数据库转移到另一台服务器上,并且我渴望捕获通过硬编码服务器名称编写的任何小程序。我最近才继承了这个系统,似乎有很多Excel文件分散在使用ODBC连接的连接中 我最初的想法是找到一些东西,将针对特定数据库的任何SQL server请求重定向到新服务器,但我不知道有这样的beastie。有人知道这样的事情是否存在吗 理想情况下,它应该在服务器级别重定向并记录源代码,以便我可以将其更改为指向新的源代码。如果服务器名称是硬编码的,为什么不为新服务器提供相同的主机

我必须很快将一个SQL Server生产数据库转移到另一台服务器上,并且我渴望捕获通过硬编码服务器名称编写的任何小程序。我最近才继承了这个系统,似乎有很多Excel文件分散在使用ODBC连接的连接中

我最初的想法是找到一些东西,将针对特定数据库的任何SQL server请求重定向到新服务器,但我不知道有这样的beastie。有人知道这样的事情是否存在吗


理想情况下,它应该在服务器级别重定向并记录源代码,以便我可以将其更改为指向新的源代码。

如果服务器名称是硬编码的,为什么不为新服务器提供相同的主机名?如果已在DNS中列出,请立即将TTL设置为非常低的值(2分钟),然后在切换发生时,将实际数据库文件移动到其他位置的停机时间将有助于平稳过渡

或者,你也可以是邪恶的,关闭另一台服务器,并在出现问题时强制人们修复他们的应用程序-你选择哪种方法取决于你的系统管理员风格。

看看rinetd:


SQL Server客户端网络库支持别名和重定向,请参阅。但是,对于客户端计算机,别名是全局的,这意味着客户端主机上的所有应用程序都将遵守别名重定向。

这两个建议都很好。第二个并不是那么邪恶,tho:如果你向人们提供了高级警告、新的连接信息,并将其视为缺乏依赖性文档,那么如果你对这些接口进行了适当的文档记录,你就可以证明这一点。此外,一些数据库(如DB2)允许您将一台服务器的查询重定向到另一台服务器。我认为SQL Server也会这样做。这看起来像是一个服务器故障问题。我计划在转换发生时使数据库脱机,因此对它的任何请求都将失败,但我希望可能有某种软件方法将对它的请求重定向到另一台服务器。