OracleOraDb11g_home1TNSListener 有啥作用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OracleOraDb11g_home1TNSListener 有啥作用相关的知识,希望对你有一定的参考价值。

楼主:下面是我的看法。
1.TNSListener服务起什么作用呢?
简单来说,其功能是查找服务实例。若对“实例”的概念不清楚的话,可以搜一下。它是通过TNS NAME来进行查找的。若TNS NAME是无效的,当你用它连接时就会出现错误。
2.那么,什么是TNS NAME呢?
你可以用命令行窗口(cmd),使用“lsnrctl services”命令进行查阅。下面是在我的PC查阅的结果:
G:\tempdata>lsnrctl services
LSNRCTL for 32-bit Windows: Version 11.2.0.1.0 - Production on 24-12月-2012 11:1
3:22
Copyright (c) 1991, 2010, Oracle. All rights reserved.
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
服务摘要..
服务 "CLRExtProc" 包含 1 个实例。
实例 "CLRExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
处理程序:
"DEDICATED" 已建立:0 已被拒绝:0
LOCAL SERVER
服务 "orcl" 包含 1 个实例。
实例 "orcl", 状态 READY, 包含此服务的 1 个处理程序...
处理程序:
"DEDICATED" 已建立:0 已拒绝:0 状态:ready
LOCAL SERVER
服务 "orclXDB" 包含 1 个实例。
实例 "orcl", 状态 READY, 包含此服务的 1 个处理程序...
处理程序:
"D000" 已建立:0 已被拒绝:0 当前: 0 最大: 1022 状态: ready
DISPATCHER <machine: PC-201012261431, pid: 4136>
(ADDRESS=(PROTOCOL=tcp)(HOST=PC-201012261431)(PORT=1234))
命令执行成功

看到实例“ORCL”了吗?一般安装Oracle时自动生成的实例。
3. 该命令读取那个文件呢?
默认是,%ORACLE_HOME%\NETWORK\ADMIN\tnsnames.ora。可以打开看一下。
我的是如下内容:
# tnsnames.ora Network Configuration File: D:\ProgramFiles\Oracle11g\product\11.2.0\dbhome_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
LISTENER_ORCL =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
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)
)
)

4.注意:用本地系统的SQL PLUS连接数据库时,不需要用TNS LISTENER服务。
参考技术A 是启动ORACLE实例的服务,实现客户端和服务器通信

C++ 打印杨辉三角

 1 #include <iostream>
 2 #include  <iomanip>
 3 using namespace std;
 4 #define N 100
 5 
 6 int main()
 7 
 8     int a[N][N] = 0;
 9     int i, j, n = 6;
10     cin>>n;
11      
12     for(i=1;i<=n;i++)
13         a[i][1] = a[i][i] = 1;  /*1.第一列和对角线的数都是1*/
14     
15         
16     for(i=3;i<=n;i++)
17     
18         for(j=2;j<=i-1;j++)
19             a[i][j]=a[i-1][j-1]+a[i-1][j];  /*2.除两边的数, 等于左上/上两数之和*/ 
20                   
21     
22         
23     for(i=1;i<=n;i++)
24     
25         cout<<setw((n-i)*3)<< ;
26         
27         for(j=1;j<=i;j++)  
28         
29             cout<<setw(6)<<a[i][j];  
30         
31               
32         cout<<endl;
33     
34     
35     return 0;
36 

 

以上是关于OracleOraDb11g_home1TNSListener 有啥作用的主要内容,如果未能解决你的问题,请参考以下文章

Oracle_本地计算机上的OracleOraDb11g_home1TNSListener 服务启动后停止

OracleOraDb11g_home1TNSListener 有啥作用

oracleoradb10g_home1isql*plus无法启动错误1067

转 Oracle监听器启动出错:本地计算机上的OracleOraDb11g_home1TNSListener服务启动后又停止了解决方案

本地计算机上的OracleOraDb10g_home1TNSListener服务启动后又停止了..........解决办法

Oracle服务无法启动,报:Windows无法启动OracleOraDb10g_home1TNSListener服务,错误 1067:进程意外终止。