并行运行Oracle 10g和11g

我最近尝试在已经运行10g的服务器上安装Oracle 11g。 每个人都可以独立运行,但没有问题,但10克拒绝与11克同时运行。 可以这样做吗? 我并不需要一个解决scheme,而是确认它确实是可能的。

是的,您可以安装不同版本的Oracle,并在同一台服务器上运行。 我可能会与不同的端口上的不同的听众。 而且你不希望两个同名的实例在运行。 还有很多其他的方面可以确保它们不会相互碰撞(主要是磁盘位置)。

也就是说,一般不build议在一台服务器上运行两个实例(dev / test除外)。 如果它们很小,在一个实例中你可能会获得更好的性能作为单独的模式,如果它们很大,那么去分离的服务器。 也考虑虚拟化作为一个选项。

您始终可以拥有多个Oracle帐户; oracle帐户不需要命名为oracle。 例如,你可以有一个oracle10和一个oracle11用户。 这比单个“oracle”用户和多个ORACLE_HOME更直接。

收听者也可以在不同的端口上(例如,1521和1523)。

这当然是可能的。 您需要确保不同的版本安装在不同的Oracle主目录中,但除此之外,您可以拥有任意数量的Oracle版本。

警告:从技术上讲,在8.1.5中引入了多个家庭支持 – 如果您使用的是早期版本,答案会有所变化。 你通常可以做到这一点,只是不那么简单。

我们一直在这里做。

如果您决定运行1个侦听器来服务多个家庭/版本(比如所有端口1521),那么您将从正在被服务的组中最高版本的Oracle运行侦听器。 我没有任何具体的问题可以引用,但是我们已经看到更多的可靠性,当我们说一个10g的服务器为9i和10g数据库服务,而不是一个9i的服务器来试图服务9oi和10g数据库。