linux – 在Oracle中,如何更改“默认”数据库?
我真的应该知道这一点,但有人会告诉我如何在
Linux上更改默认数据库吗?
例如: 我在server1上有一个数据库test1,ORACLE_SID = test1.所以,要连接到test1,我可以使用: sqlplus myuser/password 连接到默认数据库test1 我现在想将默认的sqlplus连接转到服务器server2上的数据库test2. 所以,我更新了tnsnames,以便旧的test1条目现在指向test2 @ server2.我还为test2添加了一个指向同一个地方的单独条目.但是,默认连接似乎仍然是test1 @ server1. 以下两者都可以正常工作并转到server2上的数据库test2: sqlplus myuser/password@test1 sqlplus myuser/password@test2 但是默认连接sqlplus myuser / password转到test1 @ server1. 有任何想法吗? 谢谢. 解决方法
为了扩展kerchingo的答案:Oracle有多种方法来识别数据库.
最好的方法 – 你应该经常使用的方法 – 是USER / PASSWORD @ SERVER.这将使用Oracle命名查找(tnsnames.ora)来查找实际的服务器,每次连接到它时,它可能位于不同的物理主机上.您还可以将Oracle连接字符串指定为SERVER,但假装您不能. 还有两种方法可以通过环境变量指定默认服务器.第一个是TWO_TASK,它使用命名查找,第二个是ORACLE_SID,它假定服务器在当前机器上运行. ORACLE_SID优先于TWO_TASK. 你应该总是使用显式连接字符串的原因是你不知道用户是否设置了TWO_TASK,ORACLE_SID,两者都是,或者两者都没有;你也不知道他们可能会做什么.将两者设置为不同的值是一个特别痛苦的诊断问题,特别是通过电话与一个不太了解Oracle如何工作的人(去过那里,做过那样). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |