Linux 6.5 , Oracle 11.2.0.4
在做Oracle DB Cloud 项目时发现一个奇特的问题,用户在自助创建数据库时,填写DB SID时会判断是否有重复,而填写SERVICE_NAME的时候不会check是否重复, 这样导致的结果就是, 一个大的RAC 组成的db cloud, 使用scan 域名及相同的 1521 端口,在服务名一样的情况下, 自助用户连接的数据库不知道是哪个 。
后来咨询了Oracle顾问,才知道这个不是DB Cloud的问题,Oracle数据库本身就有这个问题。
在一个主机中建立多个数据库实例时, 主机名及端口都一样,此时针对多个数据库,可以为每个数据库创建一样的SERVICE_NAME, 通过监听也可以看到相同的SERVICE_NAME出现多次, 对应不同的数据库实例。 但是问题来了, 相同的主机,相同的端口,相同的SERVICE_NAME, 用户在通过这个连接串连接需要的数据库时,到底连接的是哪个数据库 ?
这样设计是出于什么考虑 ? 是不好控制 ? 还是 ?
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/35489/viewspace-1785092/,如需转载,请注明出处,否则将追究法律责任。