sql-server - 数据库、模式和表空间的使用

标签 sql-server oracle11g migration schema tablespace

我们正在进行sql server 2000到Oracle 11g的数据迁移。 Sql服务器有4个数据库需要迁移。这 4 个数据库用于 6 个不同的独立应用程序。 Oracle安装在Unix服务器上。我们可以为每个 sql server 数据库创建一个数据库和不同的模式吗?或者我是否需要创建多个数据库,或者我可以使用单个数据库、单个模式和多个表空间或任何其他过程来维持性能吗?

最佳答案

您可以创建多个 Oracle 数据库。或者您可以创建具有多个模式的单个数据库。或者,您可以使用单个架构创建一个数据库,如果所有对象名称都是唯一的,则将所有内容都放在那里。

最相似的方法通常是创建具有四个模式的单个 Oracle 数据库。如果两个不同的 SQL Server 数据库中有具有相同名称的对象,那么这将为您提供四个独立的命名空间。每台服务器使用一个 Oracle 数据库通常可以提供最佳性能,因为您无需在内存中分配多个 SGA 和 PGA,也无需运行多组后台进程。

Oracle 中的表空间是一个完全独立的概念。它们与命名空间或权限无关。它们只是让您确定哪些对象驻留在哪些物理数据文件中。除非出现极不寻常的情况,否则表空间与性能无关。您可以让所有四个模式中的对象使用单个表空间。或者您可以创建四个单独的表空间。或者您可以创建多个表空间,每个表空间都包含来自不同模式的对象。我的猜测是,最简单的方法是为每个架构创建一个表空间,以便您可以单独管理每个应用程序的磁盘空间分配。

关于sql-server - 数据库、模式和表空间的使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16237604/

相关文章:

c# - 将 Form1 文本框值传递给 Form2 按钮

sql-server - SQL Server 2005性能问题

refcursor 上的 java.sql.SQLSyntaxErrorException : ORA-01722: invalid number while resultSet. next() 我不明白为什么?

sql - 在Oracle中删除所有用户表/序列

django - 如何重命名 Django 应用程序并将数据从一个应用程序迁移到另一个应用程序

ruby-on-rails - Rails 应用程序无法正常工作,因为每个 SQL 请求都停留在 "still waiting for AccessShareLock"

sql-server - 将 OPENQUERY 与 Oracle 数据库结合使用来查询日期范围

sql - 插入后用身份更新临时表

sql - 需要 oracle sql 在选择 0 行时返回 1 行

mysql - 飞行 route 连接超时