PLSQL连接oracle数据库失败

使用PLSQL连接虚拟机上的oracle时,报错显示ORA-12154,随后用在当前电脑使用SQLplus连接时也报错,打开虚拟机使用sqlplus ssm/itcast时也报错。

解决方式是通过在虚拟机中的DOS命令符中启动oracle监听:cmd命令行窗口下,输入lsnrctl start。创建数据库的时候,实例名叫“orcl”随后手工设置一下oralce的sid,cmd命令窗口中,set ORACLE_SID=orcl,再输入sqlplus  /nolog,回车

再输入 conn / as sysdba;回车

再输入startup,回车,启动oracle服务。如果startup启动被告知已经启动了,可以先输入shutdown immediate;等shutdown结束之后,再输入startup。

即可解决。

 

补充:sqlplus /nolog,conn /as sysdba 之所以能够登录,在于oracle登录时的身份认证方式。可以试一下这个:sqlplus /nolog,conn abcd/sss as sysdba,你发现也能够登录成功。
2 oracle在登录时,有三种身份认证方式:操作系统身份认证、密码文件认证、数据库认证。而conn /as sysdba是属于操作系统认证。
为什么这样说呢?你当前电脑开机时登录的用户,也就是进入操作系统的用户,例如是gooooal,它在你电脑的ora_dba组中。
可以在“我的电脑”单击右键,找到“管理”,选择“本地用户和组”,发现有一个组叫“ora_dba”,双击它,看到成员列表中有“gooooal”。
也就是在conn /as sysdba,oracle会进行操作系统验证,发现你当前登录的用户就属于ora_dba组,因此才可以登录成功。
你可以把ora_dba组中的“gooooal”用户删除,再conn /as sysdba,就发现进不去了。sqlplus zhangsan/123,是以用户名为zhangsan,密码为123的用户登录。而sqlplus /nolog则是不以任何用户登录。相当于只是打开一个登录窗口而已,用户名跟密码是接下来才输入。一般这样做的目的是防止别人看到你的用户密码

sqlplus /nolog一般都是登上去启动/停止数据库用的来着。
/nolog是不登陆到数据库服务器的意思
如果没有/nolog参数,sqlplus会提示你输入用户名和密码

sqlplus /nolog一般是启动sqlplus但不进行连接操作

/nolog 选项会启动sqlplus, 但不连接数据库

sqlplus / as sysdba是一种简化写法,其实是省略了用户名和密码,完整的写法是sqlplus  sys/password  as  sysdba而sqlplus  /nolog是另外的用法了,nolog表示不进行登录,仅仅是进入sqlplus软件而已

 

(后面的补充内容是摘录的,一年多了,忘了摘录的是哪个帅哥的博客)

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值