使用Oracle Sql Developer将SQL SERVER 2008数据库移植到Oracle 11g(三)

时间:2021-09-09 20:23:31

      这是本系列的第三部分:数据库移植向导

      一,建立到源SqlServer数据库的连接

      在连接窗口中,点击绿色加号按钮,打开连接配置窗口,按下图建立到SqlServer的连接:

使用Oracle Sql Developer将SQL SERVER 2008数据库移植到Oracle 11g(三)

      因为动态商品的使用,使得原来SqlServer配置页中默认的1433往往没有办法连接到SqlServer2008数据库,修改为1434即可。

      二、启动数据库移植向导

      建立到SqlServer的连接后,开始对数据库进行移植。有两个地方可以启动数据库移植向导,一个是在新建的SqlServer连接上点击右键,选择移植到Oracle,另一个是在菜单工具-移植-移植,启动向导后,第一页当然是向导的简介,通过简介,我们可以知道整个移植过程有7步,并且有两个先决条件,如下图:

      使用Oracle Sql Developer将SQL SERVER 2008数据库移植到Oracle 11g(三)

      直接点击下一步。

      三、选择资料档案库

      在这个页面中,我们也可以去建立连接和资料档案库,也就是前一部分中我们所做的工作在这里也可以进行。当然选择我们刚刚建立的migrations连接,如下图:

使用Oracle Sql Developer将SQL SERVER 2008数据库移植到Oracle 11g(三)

      这里截断的意思是将资料档案库清空,我们建立一个移植项目后,所有抓取的数据库结构信息、统计信息还有转换记录等都保存在这个资料档案库中,只要项目名称不同,即使不清空资料档案库也不会影响到移植工作。当然,如果希望更“清爽”一点,也可以勾选。这是后话。

      四、为转换项目命名

      选择好资料档案库后,点击下一步,为我们的转换项目输入名称和备注,以便识别。另外,还需要指定脚本生成目录,用于存放向导执行过程中生成的脚本。

      五、选择源数据库连接

      然后继续下一步,选择源数据库,在这里有联机和离线两种模式,联机即是直接连接到源数据进行抓取,而离线则是在SqlDeveloper不直接连接到源数据库的情况下,通过SqlDeveloper提供的脚本预先捕获数据库,得到数据库结构文件后,通过向导导入。

      这里当然是选择我们刚才建立的SqlServer连接。

      六、选择捕获源数据库

      在这一步中,显示为两个多选框,左边列出Sql Server中所有可选的数据库,通过中间的按钮将数据库移动到右边的已选数据库中。如下图:

使用Oracle Sql Developer将SQL SERVER 2008数据库移植到Oracle 11g(三)

      七、数据类型转换选项

      在这一页中,列出了所有系统内置的数据类型转换对应关系。可以其进行修改,一般不作修改直接下一步。如下图:

使用Oracle Sql Developer将SQL SERVER 2008数据库移植到Oracle 11g(三)

      八、选择目标数据库

      与源数据库的选择一样,目标数据库的选择同样也有联机和离线两种方式。仍旧选择联机。选择orcl(migrations)连接。

      九、移动数据选项

      这个页面中,也提供了联机或离线两种方式进行数据移动。所谓联机虽然“据说”可以直接以联机的方式从源数据库中移动数据到Oracle中,可我试过几次没有成功,原因不明。最终我选择了离线的方式进行数据移动。所谓离线移动数据,是在我们指定的脚本存放目录中生成“数据移动”脚本,分别在源数据库中卸载数据(即导出)和在目标数据库中加载数据。选择好后,点击下一步

      十、选项完毕,开始执行

      在向导的最后,是一个用于确认的“概要”页面。确认无误后,点击完成。移植将会开始执行。

使用Oracle Sql Developer将SQL SERVER 2008数据库移植到Oracle 11g(三)