ITPub博客

首页 > 数据库 > Oracle > sqlplus sys/oracle@orcl as sysdba无法登录

sqlplus sys/oracle@orcl as sysdba无法登录

原创 Oracle 作者:zhenghaishu 时间:2015-03-30 20:56:37 0 删除 编辑


(1)现象
$ sqlplus sys/oracle@orcl as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on 星期一 3月 30 20:50:08 2015

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

ERROR:
ORA-01031: insufficient privileges


请输入用户名: 


(2)原因分析
查看一下listener.ora
$ cd /u01/app/oracle/product/11.2.0/db_1/network/admin
$ cat listener.ora
# listener.ora Network Configuration File: /u01/app/oracle/product/11.2.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (GLOBAL_DBNAME = ORCL)
      (ORACLE_HOME = /u01/app/oracle/product/11.2.0/db_1)
      (SID_NAME = ORCL)
    )
  )

LISTENER =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = oracleServer)(PORT = 1521))
  )

ADR_BASE_LISTENER = /u01/app/oracle

这里有两个ORCL。第一个表示服务名,大小写无所谓;第二个表示实例名,要跟数据库的名称(或SID)一样,严格区分大小写。
数据库名为orcl,而这里的SID_NAME为ORCL。原因就在这里。


(3)改正方法
把listener.ora中的SID_NAME改为orcl。


(4)拓展
$ cat tnsnames.ora
# tnsnames.ora Network Configuration File: /u01/app/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.
ORCL =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = OracleServer)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = ORCL)
    )
  )
tnsname.ora中也有两个ORCL,大小写都可以。


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29485627/viewspace-1479370/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2014-02-14

  • 博文量
    112
  • 访问量
    1057348