zoukankan      html  css  js  c++  java
  • TNS12516及ORA12516错误解决

    在客户端进行sqlplus连接报错如下:

    ORA-12516: TNS: 监听程序找不到符合协议堆栈要求的可用处理程序

    在/home/oracle/product/10.2.0/db_1/network/log/listener.log中查看到错误如下:

    TNS-12516: TNS:listener could not find available handler with matching protocol stack


    sqlplus连接之后报错:

    [oracle@kel ~]$ sqlplus / as sysdba
    
    SQL*Plus: Release 10.2.0.1.0 - Production on Thu May 16 00:06:17 2013
    
    Copyright (c) 1982, 2005, Oracle.  All rights reserved.
    
    Connected.
    SQL> show parameter session
    ORA-01012: not logged on
    
    
    SQL> shutdown immediate
    ORA-24324: service handle not initialized
    ORA-24323: value not allowed
    ORA-00020: maximum number of processes (%s) exceeded


    alterlog中报错:

    Wed May 15 23:59:26 2013
    Process m000 died, see its trace file
    Wed May 15 23:59:26 2013
    ksvcreate: Process(m000) creation failed
    Thu May 16 00:00:26 2013
    Process m000 died, see its trace file
    Thu May 16 00:00:26 2013
    ksvcreate: Process(m000) creation failed
    Process m000 died, see its trace file
    Thu May 16 00:00:27 2013
    ksvcreate: Process(m000) creation failed
    Thu May 16 00:01:27 2013
    Process m000 died, see its trace file
    Thu May 16 00:01:27 2013
    ksvcreate: Process(m000) creation failed
    Process m000 died, see its trace file
    Thu May 16 00:01:27 2013
    ksvcreate: Process(m000) creation failed


    1、无法登陆数据库的情况下使用以下方法:

    a、找到数据库的关键进程,然后杀死,此时数据库实例会自动进行关闭

    	[oracle@kel ~]$ ps -ef|grep dbw
    	oracle   16107     1  0 00:04 ?        00:00:00 ora_dbw0_orcl
    	oracle   16755 15946  0 00:19 pts/0    00:00:00 grep dbw
    	[oracle@kel ~]$ kill -9 16107
    2、公用的方法,当能登陆进数据库之后

    b、sqlplus登录进数据库,启动数据库

    [oracle@kel ~]$ sqlplus / as sysdba
    
    SQL*Plus: Release 10.2.0.1.0 - Production on Thu May 16 00:20:11 2013
    
    Copyright (c) 1982, 2005, Oracle.  All rights reserved.
    
    Connected to an idle instance.
    
    SQL> startup
    ORACLE instance started.
    
    Total System Global Area  176160768 bytes
    Fixed Size		    2019384 bytes
    Variable Size		  100667336 bytes
    Database Buffers	   71303168 bytes
    Redo Buffers		    2170880 bytes
    Database mounted.
    Database opened.
    c、查看系统,发现process的值已经接近上限,修改processes的值

    SQL> show parameter process
    
    NAME				     TYPE	 VALUE
    ------------------------------------ ----------- ------------------------------
    aq_tm_processes 		     integer	 0
    db_writer_processes		     integer	 1
    gcs_server_processes		     integer	 0
    job_queue_processes		     integer	 10
    log_archive_max_processes	     integer	 2
    processes			     integer	 20
    SQL> alter system set processes=1150 scope=spfile;
    
    System altered.

    d、重新启动oracle数据库

    SQL> startup force
    ORACLE instance started.
    
    Total System Global Area  176160768 bytes
    Fixed Size		    2019384 bytes
    Variable Size		  100667336 bytes
    Database Buffers	   71303168 bytes
    Redo Buffers		    2170880 bytes
    Database mounted.
    Database opened.
    SQL> show parameter process;
    
    NAME				     TYPE	 VALUE
    ------------------------------------ ----------- ------------------------------
    aq_tm_processes 		     integer	 0
    db_writer_processes		     integer	 1
    gcs_server_processes		     integer	 0
    job_queue_processes		     integer	 10
    log_archive_max_processes	     integer	 2
    processes			     integer	 150

    连接不上数据库的时候,可能会是processes值已经达到了上限,从而修改processes的值,加大即可。


    for linux and python
  • 相关阅读:
    LeetCode 222.完全二叉树的节点个数(C++)
    LeetCode 704.二分查找(C++)
    LeetCode 441.排列硬币(C++)
    LeetCode 981.基于时间的键值存储(C++)
    LeetCode 167.两数之和(C++)
    LeetCode 367.有效的完全平方数(C++)
    LeetCode 881.救生艇(C++)
    LeetCode 860.柠檬水找零(C++)
    LeetCode 870.优势洗牌(C++)
    bootstrap
  • 原文地址:https://www.cnblogs.com/kellyseeme/p/5525199.html
Copyright © 2011-2022 走看看