linuxoracle监听服务
A. linux oracle 监听是干嘛用的
linux oracle 监听 是2个不同的东西。
前面是操作系统,后面是oracle的一个服务程序。可以在windows,linux各种平台下运行的。
其实你的问题就是oracle监听。
客户端对oracle的访问请求都要通过oracle监听服务。如果没有它就无法连接oracle。
B. linux操作系统下,如何启动oracle服务与监听命令
1、切换到oracle用户
su - oracle
2、startdb.sh命令脚本
#!/bin/sh
lsnrctl start
sqlplus "/as sysdba" << EOF
startup
EOF
3、netstat -ntlp或ps -ef |grep ora检查
4、shutdb.sh命令脚本
#!/bin/bash
lsnrctl stop
sqlplus "/as sysdba" << EOF
shutdown immediate
EOF
C. linux下如何用命令来配置oracle11g的监听
这个不是命令配置的,是改文件
如果是服务端:
$ORACLE_HOME/network/ADMIN目录,修改LISTENER.ORA
到$ORACLE_HOME/bin下,通过lnsrctl start启动监听 lnsrctl stop | lnsrctl status 分别是停止监听和查看监听状态
如果是客户端:
$ORACLE_HOME/network/ADMIN目录,修改tnsnames.ora
==========================================================
配置LISTENER.ORA的demo:
LISTENER =
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))
(ADDRESS=(PROTOCOL=ipc)(KEY=PNPKEY)))
SID_LIST_LISTENER=
(SID_LIST=
(SID_DESC=
#BEQUEATH CONFIG
(GLOBAL_DBNAME=salesdb.mycompany)
(SID_NAME=sid1)
(ORACLE_HOME=/private/app/oracle/proct/8.0.3)
#PRESPAWN CONFIG
(PRESPAWN_MAX=20)
(PRESPAWN_LIST=
(PRESPAWN_DESC=(PROTOCOL=tcp)(POOL_SIZE=2)(TIMEOUT=1))
)
)
)
配置tnsnames.ora的demo:
ora_xxx =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = xx.xx.xx.xx)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ora11g) <-----这个地方填SID_NAME也行
)
)
D. Linux 操作系统无法启动oracle的监听服务 咋整
查看环境变量是否配置过了--使用安装oracle的用户执行lsnrctl stop,lsnrctl start,lsnrctl status查看监听状况
E. linux oracle下的 服务与监听是两个进程程序吗
方法没有错,是这样的
问题是,你的标题是【是两个进程吗】
监听是一个进程,可以看见,Oracle的Instance就不是了,是一组进程
这个建议你看看Oracle的1z0-046课程,或者直接在Linux上 先启动instance
然后ps -ex 看一下,有一堆的ora开头的进程
F. oracle如何配置监听
一、监听器(LISTENER)
监听器是Oracle基于服务器端的一种网络服务,主要用于监听客户端向数据库服务器端提出的连接请求。既然是基于服务器端的服务,那么它也只存在于数据库服务器端,进行监听器的设置也是在数据库服务器端完成的。
二、本地服务名(Tnsname)
Oracle客户端与服务器端的连接是通过客户端发出连接请求,由服务器端监听器对客户端连接请求进行合法检查,如果连接请求有效,则进行连接,否则拒绝该连接。
本地服务名是Oracle客户端网络配置的一种,另外还有Oracle名字服务器(Oracle Names Server)等。Oracle常用的客户端配置就是采用的本地服务名,本文中介绍的也主要是基于本地服务名的配置。
三、Oracle网络连接配置方法
配置Oracle服务器端与客户端都可以在其自带的图形化Oracle网络管理器(Oracle Net Manager)里完成(强烈建议在这个图形化的工具下完成Oracle服务端或客户端的配置)。在Windows下,点击“开始/程序/Oracle - OraHome92/Configuration and Migration Tools/Net Manager”启动Oracle网络管理器工具,在Linux/Unix下,利用netmgr命令来启动图形化Oracle网络管理器,如:
$ netmgr
Windows下启动Net Manager图形窗口如下图示:
树形目录下的服务命名可以通过编辑菜单里的重命名菜单更改成任意合法字符组成的服务名称,注意服务名称前不能有空格字符,否则可能无法连接数据库服务器。
3、连接数据库服务器
(1)启动服务器端监听器与数据库服务
Linux/Unix下,启动监听器:
$ lsnrctl start
关闭监听器:
$ lsnrctl stop
查看监听状态:
$ lsnrctl status
启动数据库:
$ sqlplus /nolog
SQL>conn sys@myoracle as sysdba --这里的myoracle是前面配置的客户端本地服务名
或
SQL>conn / as sysdba
SQL>startup
Windows下,启动监听器:
C:lsnrctl start
启动Oracle实例服务:
C:oradim ?a href="http://game.pchome.net/pcgame" class="none" title="cs" rel="external">cstartup –sid myoracle
关闭Oracle实例服务:
C:oradim –shutdown –sid myoracle
以上服务必须同时启动,客户端才能连接数据库。由于默认配置的监听器名称是Listener,上述命令可以正常启动监听器,如果监听器名称是其它名称,如aListener,则需要用下列方式才能启动:
Linux/Unix下:
$ lsnrctl start aListener
Windows下:
C:lsnrctl start aListener
(2)测试连接数据库服务器
测试的方法多种多样,可以在上面配置本地服务名时进行测试,也可以是第三方客户端工具,如PL/SQL Developer,最方便的是用Oracle自带的sqlplus工具,以下利用sqlplus进行测试:
C:sqlplus /nolog
SQL>conn zgh@myoracle
已连接。
G. Linux下的Oracle11g 监听和数据库实例均启动了但是客户端无法连接
有两种情况
1、有防火墙
vi /etc/sysconfig/iptables
-A INPUT -p tcp -m tcp --dport 1521 -j ACCEPT添加1521端口访问策略
/etc/init.d/iptables restart重启防火墙
或者关闭防火墙
/etc/init.d/iptables stop
2、只监听的本地访问
netstat -ntlp检查
vi $ORACLE_HOME/network/admin/listener.ora
(ADDRESS = (PROTOCOL = TCP)(HOST = HOSTNAME)(PORT = 1521))
检查一下
/etc/hosts主机名配置对了没
H. Linux下Oracle监听服务启动失败,高人进来帮忙解决一下~
错误提示是没有权限,网上搜了下看到:
The Unix permissions for the hidden directory /tmp/.oracle should be:
Owner = the Oracle user who performed the database install,
Group = the dba group of the Oracle user,
and the directory's Unix permissions should be drwxrwxrwx
试试:
1) 进入/tmp目录
# cd /var/tmp(on Solaris Linux)
或者
# cd /tmp(on Hp and IBM)
2) 修改权限
# chown -R oracle10:dba .oracle
或者
# chmod 777 .oracle
I. Linux如何设置Oracle实例和监听自启动
设置Oracle 实例和监听服务自启动 1. 增加启动脚本 touch /etc/init.d/orcl vi orcl # !/bin/bash # whoami # root # chkconfig: 345 51 49 # /etc/init.d/orcl # description: starts the oracle dabase deamons # ORA_HOME=/home/oracle/proct/10.2.0/db_1/ ORA_OWNER=oracle case "{GetProperty(Content)}" in start) echo -n "Starting orcl: " su - $ORA_OWNER -c "$ORA_HOME/bin/dbstart" & su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl start" touch /var/lock/subsys/orcl echo ;; stop) echo -n "shutting down orcl: " su - $ORA_OWNER -c "$ORA_HOME/bin/dbshut" & su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl stop" rm -f /var/lock/subsys/orcl echo ;; restart) echo -n "restarting orcl: " {GetProperty(Content)} stop {GetProperty(Content)} start echo ;; *) echo "Usage: `basename {GetProperty(Content)}` start|stop|restart" exit 1 esac exit 0 保存orcl 并退出 2. 增加配置服务 /sbin/chkconfig --add orcl 3. 修改 /etc/oratab 文件 vi /etc/oratab ORACLE_SID:ORACLE_HOME:Y -- 是否自启动 4. 重启测试一下 或者简单的配置 /etc/rc.d/rc.local 增加两条启动命令 su - oracle -c /home/oracle/proct/10.2.0/db_1/bin/dbstart su - oracle -c /home/oracle/proct/10.2.0/db_1/bin/lsnrctl start