将数据库从 SQL Server 2005 迁移到 SQL Server 2008 R2

pep*_*uan 2 sql-server-2005 migration sql-server-2008-r2

DBA...请对我温柔一点,我是一个“新手”SQL Server DBA,因为我公司的 DBA 已经辞职而我们还没有找到他的替代者,所以被迫投入使用。

先说我的情况:

我应该将网络应用程序从新加坡的服务器“转移”到印度尼西亚的(一对)新建服务器。不幸的是,新加坡数据库服务器运行的是 SQL Server 2005 Express Edition,而新服务器运行的是 SQL Server 2008 R2。更糟糕的是,网络应用程序的开发人员不再支持我们(我们实际上是在使用最新版本的网络应用程序)*。

我计划在 SQL2008R2 上创建一个新实例。

我有几个问题一直困扰着我:

  1. 我如何找出新加坡服务器上安装了哪些“功能”(例如,报告服务、复制等)?

  2. 如何确保完整备份(数据库和存储过程以及其他相关花絮)?

  3. 我注意到有几个存储过程(不是很多,我在“Databases\AppDB\Programmability\Stored Procedures”树下只能看到4个),如何确保成功迁移这些存储过程?有什么我需要注意的问题吗?

感谢您提供任何意见。

* The plan actually is to just migrate the web-app as a "read-only" app for archival/audit
purposes; management has plans to deploy a better web-app in its place.
Run Code Online (Sandbox Code Playgroud)

Tho*_*ton 6

为了。

  1. 一些简单的选项:您可以查看 start->runservices.msc并查看那里有哪些服务;你可以运行 powershell 并查看 run gsv *SQL*;或者您可以查看“开始”菜单-> Microsoft SQL Server 2008 R2 并查看其中的内容。

  2. 如果你是一个数据库新手,我会看看Ola Hallengren的优秀数据库维护脚本。这些包括备份、索引维护和数据库完整性检查。

  3. 我将通过备份旧数据库并将其恢复到新服务器来迁移数据库 - 这将带来所有对象、表、数据、存储过程等。但是,您必须迁移任何适当的计划任务和用户身份证件。有一些SQL Server 集成服务任务将有助于作业登录(实际上,它们也有助于数据迁移......)。

最后,欢迎来到工作岗位。我建议您在Red Gate 的书店逛一逛——他们的书有很多免费的 PDF 版本。略读SQL Server 备份和还原为意外 DBA 解决 SQL Server 故障

祝你好运!

编辑。一对想法,特别是与您从 2005 年到 2008 年 R2 的迁移有关。

  1. 您应该可以通过使用数据库备份和还原来执行此操作 - 好消息。
  2. 但是,请注意,您的应用所依赖的某些功能完全有可能被弃用/停止使用。在 SQL Server 2008 R2 上启动并运行后,您可以使用sys.dm_os_performance_counters DMV密切关注这些功能。那里有各种博客文章,但要点是:

    SELECT * FROM sys.dm_os_performance_counters
    WHERE Object_name like '%:Deprecated Features'
    AND cntr_value > 0
    
    Run Code Online (Sandbox Code Playgroud)

(不幸的是,跟踪已弃用的功能不是 SQL 2005 版本的一部分......)