服务器开启oracle。远程navicat连接服务器报错:
listener does not currently know of service requested in connect descriptor
仔细查看lsnrctl start,发现报错:
The listener supports no services
The command completed successfully
1.首先查看ip配置
hosts文件里面的配置
listener.ora文件里面的ip配置
tnsnames.ora文件中ip配置
2.查看数据库中servicename
@ubuntu-db:~/tools/oracle11g/product/11.2.0/dbhome_1/network/admin$ sqlplus /nolog
SQL*Plus: Release 11.2.0.1.0 Production on Wed Feb 20 23:19:30 2019
Copyright (c) 1982, 2009, Oracle. All rights reserved.
SQL> conn/as sysdba
Connected.
SQL> show parameter name;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_file_name_convert string
db_name string orcl
db_unique_name string orcl
global_names boolean FALSE
instance_name string orcl
lock_name_space string
log_file_name_convert string
service_names string orcl
看db_name,db_unique_name,service_names是否一致
3.修改listenrer.ora(我看有的资料可以ORACLE_HOME不写)
# listener.ora Network Configuration File: /home/ekanet/tools/oracle11g/product/11.2.0/dbhome_1/network/admin/listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = orcl)
(ORACLE_HOME = /home/wang/tools/oracle11g/product/11.2.0/dbhome_1)
(SID_NAME = orcl)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.100.134)(PORT = 1521))
)
)
ADR_BASE_LISTENER = /home/wang/tools/oracle11g
4.查看修改tnsnames.ora
# Generated by Oracle configuration tools.
LISTENER_ORCL =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.100.134)(PORT = 1521))
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.100.134)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)