• /var/tmp/.oracle 和 oracle listener (监听)的一点理解


    关于 /var/tmp/.oracle 的作用測试

    ~---查看 /var/tmp 的权限

    [root@lixora var]# ll
    total 164
    。。。
    drwxrwxrwt  3 root root 4096 Oct 31 13:16 tmp

    [root@lixora .oracle]# ll
    total 0
    srwxrwxrwx 1 oracle10g oinstall 0 Oct 31 14:11 s#12569.1
    srwxrwxrwx 1 oracle10g oinstall 0 Oct 31 14:11 s#12569.2
    srwxrwxrwx 1 oracle10g oinstall 0 Oct 31 14:11 sEXTPROC0

    -----改动/var/tmp 的权限

    [root@lixora var]# chmod 444 tmp
    [root@lixora var]# ll
    。。。
    dr--r--r--  3 root root 4096 Oct 31 13:16 tmp
    。。。

    -----尝试启动监听

    [oracle10g@lixora ~]$ lsnrctl start

    LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 31-OCT-2014 14:13:31

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

    Starting /u02/app/oracle/product/10.2.0/db_1/bin/tnslsnr: please wait...

    TNSLSNR for Linux: Version 10.2.0.1.0 - Production
    System parameter file is /u02/app/oracle/product/10.2.0/db_1/network/admin/listener.ora
    Log messages written to /u02/app/oracle/product/10.2.0/db_1/network/log/listener.log
    Error listening on: (ADDRESS=(PROTOCOL=ipc)(PARTIAL=yes)(QUEUESIZE=1))
    No longer listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=lixora)(PORT=1521)))
    TNS-12557: TNS:protocol adapter not loadable
     TNS-12560: TNS:protocol adapter error
      TNS-00527: Protocol Adapter not loadable


    Listener failed to start. See the error message(s) above...

    ----再次改动 /var/tmp 的权限

    [root@lixora var]# chmod 777 tmp
    [root@lixora var]# ll
    。。。
    drwxrwxrwx  3 root root 4096 Oct 31 13:16 tmp
    。。。

    再次去启动监听,能够正常启动

    关于错误

    ORA-12557: TNS:protocol adapter not loadable
    Cause: On some platforms (such as OS/2) protocol adapters are loaded at run-time. If the shared library (or DLL) for the protocol adapter is missing or one of its supporting libraries is missing then this error is returned.
    Action: For further details, turn on tracing and reexecute the operation. The trace file will include the name of the shared library (or DLL) that could not be loaded.

    1. Make sure the %ORACLE_HOME%/bin directory is in your PATH.
    2. Make sure the protocol is typed/specified correctly in your tnsnames.ora file or whatever source you're using to resolve servicenames.
    3. TCP is the default protocol and is installed by default. Ifyou're using something different (like SPX) make sure you installed the protocol adapter.
    4. Make sure TOAD is using the correct oracle home if you have multiple homes installed

    貌似也没有涉及到相关的错误描写叙述啊!可是究竟 /var/tmp/.oracle 下的文件是啥呢? 依据文件的描写叙述:

    [root@lixora .oracle]# ll
    total 0
    srwxrwxrwx 1 oracle10g oinstall 0 Oct 31 14:08 s#12538.1
    srwxrwxrwx 1 oracle10g oinstall 0 Oct 31 14:08 s#12538.2
    srwxrwxrwx 1 oracle10g oinstall 0 Oct 31 14:08 sEXTPROC0
    [root@lixora .oracle]# ps -ef|grep 12538
    54322    12538     1  0 14:08 ?        00:00:00 /u02/app/oracle/product/10.2.0/db_1/bin/tnslsnr LISTENER -inherit

    这些文件均是 socket 文件, 且s#12368.1 中的12568 为进程号,经查证是 监听的进程号

    那么这些scoket 是用来干嘛的呢?

    ODM find:

    The hidden directory  '/var/tmp/.oracle' (or /tmp/.oracle on some platforms) or its content was removed while instances & the CRS stack were up and running. Typically this directory contains a number of "special" socket files that are used by local clients to connect via the IPC protocol (sqlnet) to various Oracle processes including the TNS listener, the CSS, CRS & EVM daemons or even  database or ASM instances. These files are created when the "listening" process starts. 

     

    就是说:这些socket 文被用作 本地client使用进程间通信协议(ipc)和不同的oracle的进程通信,而这些进程包含:tns 监听,css ,crs,evm 守护进程;甚至数据库和asm 实例。这些socket 由‘主动监听’的进程创建。在这里oracle tns listener 创建这些socket 文件主要使用用作pmon 和 tnslsnr  通信从报错信息里就能够看出问题:

    Error listening on: (ADDRESS=(PROTOCOL=ipc)(PARTIAL=yes)(QUEUESIZE=1))

     

     

    不知道以上分析是否确切,不当之处请拍砖:-)

     

  • 相关阅读:
    树状数组求区间最大值
    ABP Zero最新版源码
    abp zero mysql版正式发布
    基于ABP的Easyui admin framework正式开放源代码
    【推荐】ImageProcessor.Web,再也不用自己生成缩略图了
    ABP教程(四)- 开始一个简单的任务管理系统
    Abp Framework中文文档上线
    【开源】基于EF6+MVC5+API2+Easyui1.4.5+Easyui管理模板开发的管理系统
    web+ admin template,spa管理应用后台,easyui后台正式发布
    ABP教程(三)- 开始一个简单的任务管理系统 – 后端编码
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/4384466.html
Copyright © 2020-2023  润新知