SQL Server与Oracle迁移指南

梅涛 罗裕梅 叶琼伟
前言SQL Server与Oracle是世界上商业数据库市场占有率较高的两种通用型数据库。其中,Oracle多年来是数据库业界的领军产品,在高端应用上有较大的占有率;而SQL Server在中低端应用上有较大的占有率。同时,通常 Oracle 给人以性能高、维护难度大的印象。长期以来,当面对大数据量的性能要求时,或者要求跨平台的部署能力时,都会将应用迁移到Oracle数据库上。并且一些行业和企业对Oracle也有着深厚的技术积累,也会要求将应用迁移到Oracle上。近年来,虽然Oracle在数据库维护上进行了很多简化,但是SQL Server在功能和性能上却有了更长足的进步。事务处理性能委员会(Transaction Processing Performance Council,www.tpc.org)的TPC-E(针对OLTP)和TPC-H(针对OLAP)的排名上,SQL Server在性能上的优势与Oracle形成强烈反差,这表明Oracle在性能上也已经不像过去高高在上了。随着PC服务器相对小型机在性能上也有较大改善,以及硬件成本的降低,凸显了Oracle数据库的拥有成本过高,特别是维护成本以及对维护人员的要求较高,甚至在安全性上也乏善可陈。为降低成本,一些企业出现了去IOE(IBM、Oracle、EMC)的趋势,出现了越来越多从Oracle数据库向其他数据库进行迁移的需求。同时,在软件的产品化开发中,也更多地出现不同的数据库,以满足不同客户的需求。数据库开发人员也面临着多种数据库之间的转换和迁移工作。作为常见的两种商业数据库,SQL Server与Oracle的底层原理是相同的,在基本功能上是一致的,都有着大致对应的实现方案,实施迁移的可行性是较高的。但是两种数据库在系统结构和功能实现上有巨大的差异,使得学习过程和迁移过程较为复杂。本书按照迁移时面临的问题和实际迁…