SQL Developer连接问题

时间:2013-12-24 14:17:48

标签: sql oracle plsql oracle11g

任何人都可以帮助我解决来自 SQL Oracle Developer 的Oracle连接问题。我已经安装 jdk 1.6.0_45 Oracle 11g ,并且可以使用<正确连接到Oracle数据库strong> sqlplus 使用sqldba凭据,但是当我尝试使用sql developer连接到此db时,我收到错误“Listener doe当前不知道在连接描述符中给出的SID”。我尝试将“SERVICE_NAME”改为“SERVICE_NAME as SYSDBA”和一些anather的东西,但它没有帮助。如何让 sql developer 连接到服务器?这是tnsname.ora文件,带有连接设置的img和init.ora文件,以及来自 sqlplus cmd 提示>

玛丽圣诞节给大家; - )

# tnsnames.ora Network Configuration File: C:\app\Andriy\product\11.2.0\dbhome_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.

ORACLR_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
    (CONNECT_DATA =
      (SID = CLRExtProc)
      (PRESENTATION = RO)
    )
  )

ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME as SYSDBA = orcl.adobe.com)
    )
  )

enter image description here

# 
# $Header: rdbms/admin/init.ora /main/23 2009/05/15 13:35:38 ysarig Exp $ 
# 
# Copyright (c) 1991, 1997, 1998 by Oracle Corporation
# NAME
#   init.ora
# FUNCTION
# NOTES
# MODIFIED
#     ysarig     05/14/09  - Updating compatible to 11.2
#     ysarig     08/13/07  - Fixing the sample for 11g
#     atsukerm   08/06/98 -  fix for 8.1.
#     hpiao      06/05/97 -  fix for 803
#     glavash    05/12/97 -  add oracle_trace_enable comment
#     hpiao      04/22/97 -  remove ifile=, events=, etc.
#     alingelb   09/19/94 -  remove vms-specific stuff
#     dpawson    07/07/93 -  add more comments regarded archive start
#     maporter   10/29/92 -  Add vms_sga_use_gblpagfile=TRUE 
#     jloaiza    03/07/92 -  change ALPHA to BETA 
#     danderso   02/26/92 -  change db_block_cache_protect to _db_block_cache_p
#     ghallmar   02/03/92 -  db_directory -> db_domain 
#     maporter   01/12/92 -  merge changes from branch 1.8.308.1 
#     maporter   12/21/91 -  bug 76493: Add control_files parameter 
#     wbridge    12/03/91 -  use of %c in archive format is discouraged 
#     ghallmar   12/02/91 -  add global_names=true, db_directory=us.acme.com 
#     thayes     11/27/91 -  Change default for cache_clone 
#     jloaiza    08/13/91 -         merge changes from branch 1.7.100.1 
#     jloaiza    07/31/91 -         add debug stuff 
#     rlim       04/29/91 -         removal of char_is_varchar2 
#   Bridge     03/12/91 - log_allocation no longer exists
#   Wijaya     02/05/91 - remove obsolete parameters
#
##############################################################################
# Example INIT.ORA file
#
# This file is provided by Oracle Corporation to help you start by providing
# a starting point to customize your RDBMS installation for your site. 
# 
# NOTE: The values that are used in this file are only intended to be used
# as a starting point. You may want to adjust/tune those values to your
# specific hardware and needs. You may also consider using Database
# Configuration Assistant tool (DBCA) to create INIT file and to size your
# initial set of tablespaces based on the user input.
###############################################################################

# Change '<ORACLE_BASE>' to point to the oracle base (the one you specify at
# install time)

db_name='ORCL'
memory_target=1G
processes = 150
audit_file_dest='<ORACLE_BASE>/admin/orcl/adump'
audit_trail ='db'
db_block_size=8192
db_domain=''
db_recovery_file_dest='<ORACLE_BASE>/flash_recovery_area'
db_recovery_file_dest_size=2G
diagnostic_dest='<ORACLE_BASE>'
dispatchers='(PROTOCOL=TCP) (SERVICE=ORCLXDB)'
open_cursors=300 
remote_login_passwordfile='EXCLUSIVE'
undo_tablespace='UNDOTBS1'
# You may want to ensure that control files are created on separate physical
# devices
control_files = (ora_control1, ora_control2)
compatible ='11.2.0'

C:\>sqlplus

SQL*Plus: Release 11.2.0.1.0 Production on ┬Є. ├Ёє 24 16:26:28 2013

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

Enter user-name: sys as sysdba
Enter password:

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL>

C:\>lsnrctl status

LSNRCTL for 32-bit Windows: Version 11.2.0.1.0 - Production on 24-├╨╙-2013 17:00:25

Copyright (c) 1991, 2010, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for 32-bit Windows: Version 11.2.0.1.0 - Production
Start Date                24-├╨╙-2013 09:24:44
Uptime                    0 days 7 hr. 35 min. 43 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   C:\app\Andriy\product\11.2.0\dbhome_1\network\admin\listener.ora
Listener Log File         c:\app\andriy\diag\tnslsnr\andriypc\listener\alert\log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
Services Summary...
Service "CLRExtProc" has 1 instance(s).
  Instance "CLRExtProc", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully

1 个答案:

答案 0 :(得分:2)

您的侦听器配置为仅侦听localhost127.0.0.1)。默认情况下,数据库将尝试注册服务器的外部主机名(the default when local_listener is blank),因此注册似乎失败。

可以修改listener.ora以侦听外部地址:

LISTENER = 
(DESCRIPTION_LIST = 
(DESCRIPTION = 
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)) 
(ADDRESS = (PROTOCOL = TCP)(HOST = ANDRIYPC)(PORT = 1521)) 
) 
) 

...或IP地址而不是主机名,如果它不可解析,例如192.168.1.134;但是,如果您使用DHCP来获取您的IP地址,当您获得不同的IP时,该IP地址将会中断。如果您使用的是静态地址,那么使用该IP就可以了。

或者,如果您只是从这台PC访问此数据库并且不需要它在网络上可见,您可以将监听器留在localhost并告诉数据库在那里注册:< / p>

alter system set local_listener = '127.0.0.1:1521' scope=both;
alter system register;

无论哪种方式,lsnrctl services现在应该显示orcl.adobe.com。从SQL Developer连接时,您可以选择“服务名称”单选按钮而不是SID,并将orcl.adobe.com放在那里。

如果您以SYS身份进行连接,则需要从下拉列表中选择SYSDBA角色;但你要做的第一件事就是为自己创建一个新用户,然后才使用它。仅使用SYS(以及SYSTEM和其他内置帐户)来执行实际的DBA任务,而不是创建自己的表等。