我在我的linux服务器上安装了Oracle 11gR2。当我想通过我的数据库上的sys用户登录时,我输入“sys as sysdba”,当系统给出密码时,我推入enter,然后我可以用sqlplus登录到我的数据库。Sqlplus无密码登录
但是,当我尝试使用PL-SQL工具在Windows上连接时,系统想要密码。如果我没有写密码(我定义了密码,密码是“sys”),我无法登录我的数据库。
为什么?
我在我的linux服务器上安装了Oracle 11gR2。当我想通过我的数据库上的sys用户登录时,我输入“sys as sysdba”,当系统给出密码时,我推入enter,然后我可以用sqlplus登录到我的数据库。Sqlplus无密码登录
但是,当我尝试使用PL-SQL工具在Windows上连接时,系统想要密码。如果我没有写密码(我定义了密码,密码是“sys”),我无法登录我的数据库。
为什么?
当您安装oracle时,它会创建OSDBA和OSOPER组。该组的任何成员都将拥有操作系统身份验证,并且无需密码即可登录。
从另一台机器连接时,它是远程连接,您必须输入密码。
更多的信息在documentation。
当你在同一台服务器上连接时,你是authenticated by the operating system;您可以提供任何您喜欢的密码,或者使用/ as sysdba
更常见。
当你从PL/SQL连接它是一个远程连接;操作系统认证是不可能的,所以你使用的是password authentication。
我有这样的问题,甚至与我的Linux服务器上的Oracle 12c和我所做的是,每次我打开一个新的终端我第一次键入
“出口TWO_TASK =”
(没有报价)紧接着按
输入。
接下来,我会再继续键入的sqlplus“/ as sysdba已”(现,因为它是与报价)
连接并继续。