系统中只有:唯一数据库study.oracle.com.cn,唯一实例study11
侦听器中配置:全局数据库名-study.oracle.com.cn
oracle主目录-E:\oracle\ora92
sid-study12
conn sys/sys as sysdba居然能连得上,为什么呀?为何要配置sid?多个实例,如何配置sid?
侦听器中配置:全局数据库名-study.oracle.com.cn
oracle主目录-E:\oracle\ora92
sid-study12
conn sys/sys as sysdba居然能连得上,为什么呀?为何要配置sid?多个实例,如何配置sid?
这个命令是不检测用户名和密码的,connect / as sysdba 也可以连接成功
这个会从环境变量$ORACLE_SID 寻找实例;
如果是windows则从环境变量oracle_sid找( set oracle_sid可看),如果环境变更未设置,则从注册表中的oracle_sid找
没有@tns_name的话,linnux系统下是有个默认的数据库连接(这个是需要配置的),即是在不填tns_name就会自动连接到默认的数据库,在这种情况下,不填写@tns_name 只要用户密码正确 一样可以连接到数据库。
我记得我试过这样的情况,但是我想不起来了,就是windows系统下,不填@tns_name 也可以连接到默认的数据库,当时我的本地只有一个sid 所以就直接连进去了,对于多个sid的情况我没有试过。
conn sys/sys@sid-study12 as sysdba:这样通过侦听器就连不上了。
恩,关于为什么能连上我明白了,期待有人能回答第二个问题!
无论如何,谢谢大家!