错误:ORA-28009: connection as SYS should be as SYSDBA or SYSOPER 的解决办法--转载但验证过后可以用
Posted 相心
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了错误:ORA-28009: connection as SYS should be as SYSDBA or SYSOPER 的解决办法--转载但验证过后可以用相关的知识,希望对你有一定的参考价值。
今天,用iSQL*Plus 以sys用户连接数据库的时候报ORA-28009:connection as sys should be as sysdba or sysoper的错误,不知道是怎么回事,记得以前的时候连接的时候什么错误没报就过去了。有可能是用DBCA又建了一个新库,所以连接不上。从网上找了一下,原文如下:http://linli.blogbus.com/logs/13337529.html
用 SQL*Plus 连接数据库的时候,出现一个对话框,要求填入用户名、密码、主机字符串信息。前两者不用说,自己会填对的,但是这个主机字符串好象没见过呀,其实这里的这个字符串就是我门在安装oracle的时候自动生成,它是配置的数据库连接服务名,与数据库系统标识符一致,但是两者是不同的概念不能混淆。一般与你在安装时设置的全局数据库名一致。我设置的全局数据库名为orcl,所以连接的时候,应该填写主机字符串为orcl as sysdba. 要是不加后面的 as sysdba,则会出现ERROR:ORA-28009: connection to sys should be as sysdba or sysoper 例如,以sys为用户名,password为密码,sysdba为连接身份登录或连接到sql*plus,则输入用户名称:sys,口令:password,主机字符串:orcl as sysdba
这里没看到主机字符串 直接在口令那里输入:sys as sysdba ------到这里我连接上了
上面已经说的很清楚了,不过我还没想明白为什么我以sysoper用还有sys用户在sqlplus里也连不上呢?也是报错,而且提示信息还不一样,sysoper报的错误没有记下来。明天回学校试试。
(自己添加java连接数据库时的解决办法)
java代码:
String userName = "sys as sysdba"; //此处的sys为你安装oracle时设置的全局数据库名称
String userPass = "tp"; //此处为自己的密码
String driverName = "oracle.jdbc.driver.OracleDriver"; //Oracle的驱动
String dataBaseUrl = "jdbc:oracle:thin:@localhost:1521:ORCL"; //数据库连接地址,此处为本地连接
以上是关于错误:ORA-28009: connection as SYS should be as SYSDBA or SYSOPER 的解决办法--转载但验证过后可以用的主要内容,如果未能解决你的问题,请参考以下文章
Oracle用sys登陆报:ORA-28009:connection as sys should be as sysdba
sqlplus连接登录数据库时,出现 ORA-28009错误(转)
sqlplus sys 登录提示ora-28009 大神帮帮忙