SQL 开发者未连接 tnsnames.ora 中定义的 SID
SQL Developer does not connect with SID as defined in tnsnames.ora
我的 tnsnames.ora 看起来像这样:
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 = orcl)
)
)**
但是当我尝试使用 SQL Developer 进行连接时,我收到错误消息:没有更多数据可从套接字读取。
角色:SYSDBA
连接类型:基本
主机名:localhost
端口:1521
SID:CLRExtProc
你能告诉我我做错了什么吗?我可以使用 service_name 连接,或者在 SID 中使用服务名称时,但为什么当我使用 tnsnames.ora.
中定义的 SID 时它不起作用
据我了解,SID 对应于数据库的实例名称。是不是连接不上了?
此致,
刺耳
tnsnames.ora 中的 CLRExtProc 条目用于 external processes。那不是您用于普通客户端连接的数据库 SID。
ORCL 条目定义为使用服务名称orcl
。服务名称和 SID 可能相同也可能不同。数据库实例有一个 SID,而它可以有多个服务名称,其中可能包括一个域。
您的情况似乎没有域,SID 和服务名称相同。如果您想使用 SID 从 SQL 开发人员连接,请使用 orcl
。我不确定您为什么要使用它而不是服务名称。 Read more about accessing the database.
您还以 SYSDBA 身份连接,可能以 SYS 身份连接,这不是您应该经常做的事情。希望您不是在内置模式下创建对象;创建您自己的 user/schema 并在其下执行所有操作。
我的 tnsnames.ora 看起来像这样:
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 = orcl)
)
)**
但是当我尝试使用 SQL Developer 进行连接时,我收到错误消息:没有更多数据可从套接字读取。
角色:SYSDBA 连接类型:基本
主机名:localhost 端口:1521 SID:CLRExtProc
你能告诉我我做错了什么吗?我可以使用 service_name 连接,或者在 SID 中使用服务名称时,但为什么当我使用 tnsnames.ora.
中定义的 SID 时它不起作用据我了解,SID 对应于数据库的实例名称。是不是连接不上了?
此致, 刺耳
tnsnames.ora 中的 CLRExtProc 条目用于 external processes。那不是您用于普通客户端连接的数据库 SID。
ORCL 条目定义为使用服务名称orcl
。服务名称和 SID 可能相同也可能不同。数据库实例有一个 SID,而它可以有多个服务名称,其中可能包括一个域。
您的情况似乎没有域,SID 和服务名称相同。如果您想使用 SID 从 SQL 开发人员连接,请使用 orcl
。我不确定您为什么要使用它而不是服务名称。 Read more about accessing the database.
您还以 SYSDBA 身份连接,可能以 SYS 身份连接,这不是您应该经常做的事情。希望您不是在内置模式下创建对象;创建您自己的 user/schema 并在其下执行所有操作。