数据库不同版本的相互迁移问题(DTS/SSIS)
DTS不在SQL Server 2005中使用了,它由一个崭新的被称作SQL Server集成服务(SSIS)的抽取、转换和装载(ETL)引擎所替代。SSIS为构建ETL解决方案提供了一个比DTS更加强大、灵活和具有更好性能的基础,但是这可能使许多数据库管理员不知道该拿他们的DTS包怎么办。
好消息是,尽管他们不能再在SQL Server 2005中编辑,但是在SQL Server 2000中创建的DTS包仍然可以运行。为了缓和这个过渡,SQL Server 2005提供了一个升级向导帮助数据库管理员将包转换到SSIS框架中。然而,不是所有的组件都可以升级。例如,ActiveX的转换对于升级向导来说就是个挑战,而且它可能并不能移植。
而这意味着数据库管理员将最终要使用SSIS重写这些包,由于有了SSIS提供的功能,这么做可能会比使用DTS简单得多。
2. SQL Server 2005数据库可以移植回SQL Server 2000吗?
在移植到SQL Server 2005的过程中,许多组织仍然会被要求支持SQL Server 2000安装。结果,一个普遍的要求是能够反向移植:将数据库从SQL Server 2005移植会SQL Server 2000。
不幸的是,这并不是那么简单。从SQL Server 2005实例备份的数据库不能恢复到SQL Server 2000实例中。分离的SQL Server 2005数据库也不能重新绑定到SQL Server 2000中。
因为不支持备份/恢复和分离/绑定,对于移动数据从SQL Server 2005到SQL Server 2000的唯一可用的方法是基于复制数据。数据和schemas可以用一个工具例如Red Gate的SQL Packager来跟踪,脚本可以应用于SQL Server 2000上。另一个选择是使用像DTS或SSIS之类的工具,这些工具都包含数据复制向导。