我们正致力于将sql server 2000数据迁移到Oracle 11g。 Sql server有4个必须迁移的数据库。这4个数据库用于6个不同的独立应用程序。 Oracle安装在Unix服务器上。我们可以为每个sql server数据库创建单个数据库和不同的模式,还是需要创建多个数据库,还是可以使用单个数据库,单个模式和多个表空间或任何其他过程来保持性能?
答案 0 :(得分:5)
您可以创建多个Oracle数据库。或者,您可以使用多个模式创建单个数据库。或者,您可以使用单个模式创建单个数据库,如果所有对象名称都是唯一的,则将所有内容放在那里。
最相似的方法通常是创建一个包含四个模式的Oracle数据库。如果您在两个具有相同名称的不同SQL Server数据库中具有对象,则会为您提供四个单独的命名空间。每个服务器一个Oracle数据库通常可以提供最佳性能,因为您没有在内存中分配多个SGA和PGA或运行多组后台进程。
Oracle中的表空间是一个完全独立的概念。它们与命名空间或权限无关。它们只是允许您确定哪些对象驻留在哪些物理数据文件中。除非出现非常不寻常的事情,否则表空间与性能无关。您可以让所有四个模式中的对象使用单个表空间。或者您可以创建四个单独的表空间。或者,您可以创建多个表空间,每个表空间都包含来自不同模式的对象。我的猜测是,最简单的方法是为每个模式创建一个表空间,以便您可以单独管理每个应用程序的磁盘空间分配。