`
yhq1212
  • 浏览: 81926 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

修改ORACLE最大连接数

 
阅读更多

Oracle连接超限修改,ORA-00064,ORA-12571,ORA-24324及用户连接查看

[日期:2012-11-09] 来源:Linux社区  作者:cswggod [字体: ]
 
(一)Oracle连接超限修改
我们需要调整oracle数据库的最大链接数,而这个链接数的调整是在oacle下的dbs目录下init.ora文件中调整的。
ORACLE的连接数(sessions)与其参数文件中的进程数(process)有关,它们的关系如下:
sessions=(1.1*process+5)
但 是我们增加process数时,往往数据库不能启动了。这因为我们还漏调了一个unix系统参数:它是核心参数中的semmns,这是unix系统的信号 量参数。每个process会占用一个信号量。semmns调整后,需要重新启动unix操作系统,参数才能生效。不过它的大小会受制于硬件的内存或 ORACLE SGA。范围可从200——2000不等。
但是,Processes的修改不仅应该调整init<sid>.ora文件中的参数,而且应 该调整OS的内核参数,象AIX,HPUX,Solaris,SCO,UNIXWare都是这样,OS的调整是需要重新启动的,而且这个参数的设置不能简 单按照多少个终端要连到这个服务器上而定,最关键是考虑会有多少同时连上的session(在使用一些共享连接的中间件时,一般就不需要太大),当然还要 考虑一些Oracle的后台进程,还有一些系统维护工作需要多一些连接等。
 
1.数据库连接超限时,新的连接会失败,查看数据库允许连接数
SQL> show parameter processes
NAME TYPE
------------------------------------ ----------------------
VALUE
------------------------------
aq_tm_processes integer
1
db_writer_processes integer
1
job_queue_processes integer
10
log_archive_max_processes integer
2
processes integer
NAME TYPE
------------------------------------ ----------------------
VALUE
------------------------------
150
#--------------数据库连接数是150,修改连接数
SQL>
SQL> alter system set processes=5000 scope=spfile;
系统已更改。
SQL> alter system set sessions=5000 scope=spfile;
系统已更改。
SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORA-00064: object is too large to allocate on this O/S (1,4800000)
SQL> startup
ORA-00064: object is too large to allocate on this O/S (1,4800000)
#-----------------------------以上修改最大连接数失败,最大连接数与OS有关、
#-----------------------------不考虑OS是最大连接数可能修改失败
linux
 
 
 
 
2.修改最大连接数错误ORA-00064,数据库启动不了
 
#----------------------(1)Oracle SYS DBA连接,此时因为ORA-12571错误,其他用户无法连接
SQL> conn sys/oracle@orcl as sysdba
已连接到空闲例程。
 
#----------------------(2)以pfile 启动数据库
 
SQL> startup pfile='D:\oracle\admin\orcl\pfile\init.ora.105201216493' open
ORACLE 例程已经启动。
 
Total System Global Area  135338868 bytes
Fixed Size                  453492 bytes
Variable Size            109051904 bytes
Database Buffers          25165824 bytes
Redo Buffers                667648 bytes
数据库装载完毕。
数据库已经打开。
 
#----------------------(3)重建spfile,是oracle正常启动
SQL> create spfile from pfile='D:\oracle\admin\orcl\pfile\init.ora.105201216493';
 
文件已创建。
 
#----------------------最大连接数为修改
 
SQL> show parameter processes;
 
NAME                                TYPE
------------------------------------ ----------------------
VALUE
------------------------------
aq_tm_processes                      integer
1
db_writer_processes                  integer
1
job_queue_processes                  integer
10
log_archive_max_processes            integer
2
processes                            integer
 
NAME                                TYPE
------------------------------------ ----------------------
VALUE
------------------------------
150
SQL>
/*------------------3. 修改processes和sessions值必须重启oracle服务器才能生效
 
ORACLE的连接数(sessions)与其参数文件中的进程数(process)有关,它们的关系如下:
 
sessions=(1.1*process+5)
 
----------------------*/
 
#----------------------(4)重启数据库,使重建的SPFILE生效
 
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。
 
Total System Global Area  135338868 bytes
Fixed Size                  453492 bytes
Variable Size            109051904 bytes
Database Buffers          25165824 bytes
Redo Buffers                667648 bytes
数据库装载完毕。
数据库已经打开。
 
#----------------------(5)修改最大连接数与spfile,重启生效;若连接生效scope=both
SQL> alter system set processes=300 scope=spfile;
 
系统已更改。
 
SQL>
SQL> alter system set sessions=335 scope=spfile;
 
系统已更改。
 
SQL>
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。
 
Total System Global Area  139533192 bytes
Fixed Size                  453512 bytes
Variable Size            113246208 bytes
Database Buffers          25165824 bytes
Redo Buffers                667648 bytes
数据库装载完毕。
数据库已经打开。
 
#----------------------(6)查看最大连接数
 
SQL> show parameter processes
 
NAME                                TYPE
------------------------------------ ----------------------
VALUE
------------------------------
aq_tm_processes                      integer
1
db_writer_processes                  integer
1
job_queue_processes                  integer
10
log_archive_max_processes            integer
2
processes                            integer
 
NAME                                TYPE
------------------------------------ ----------------------
VALUE
------------------------------
300
SQL>
 
#------------------数据库连接数是300
分享到:
评论

相关推荐

    修改oracle最大连接数

    ### 修改Oracle最大连接数 在Oracle数据库环境中,最大连接数是指系统可以同时处理的最大并发用户连接数量。这一参数对于确保数据库性能稳定、响应快速至关重要。本文将详细介绍如何修改Oracle数据库中的最大连接数...

    oracle修改最大连接数

    ### Oracle 修改最大连接数 在Oracle数据库环境中,调整最大连接数是一项重要的系统管理任务,它直接影响到数据库能够同时处理的会话数量。本篇将详细探讨如何通过Oracle参数来修改最大连接数,包括理解相关参数的...

    修改数据库最大连接数以及linux系统下ORACLE数据库启动多实例参照.pdf

    数据库最大连接数修改与 Oracle 多实例启动在 Linux 系统下 一、修改 Oracle 数据库允许的最大连接数 Oracle 数据库的最大连接数可以通过修改参数文件或使用 alter system 语句来实现。下面是修改最大连接数的步骤...

    oracle 最大连接数问题

    ### Oracle 最大连接数问题详解 #### 一、问题背景 在实际的部署环境中,Oracle 数据库经常会遇到连接数受限的问题。特别是在使用如 WebLogic 或 WebSphere 这类中间件时,通过连接池的方式虽然可以有效提升数据源...

    Oracle最大连接数

    ### Oracle 最大连接数 #### 知识点一:Oracle 数据库连接参数 在 Oracle 数据库管理系统中,数据库实例能够处理的最大并发用户连接数量是由 `processes` 参数控制的。此参数定义了数据库实例可以同时支持的最大...

    更改Oracle数据库的用户连接数

    因此,合理配置数据库的最大连接数对于保障系统的稳定运行至关重要。 #### 一、理解Oracle数据库连接参数 在Oracle数据库中,控制用户最大连接数的关键参数是`processes`。这个参数定义了Oracle实例可以同时处理的...

    ORACLE查看并修改最大连接数

    本篇文章将深入探讨如何查看和修改Oracle数据库的最大连接数。 首先,我们来看如何查看当前的最大连接数。在Oracle中,这个参数通常由`PROCESSES`初始化参数控制。你可以通过SQL查询来获取这个值: ```sql SELECT ...

    修改Oracle数据库连接数

    当数据库用户无法连接,或者在连接后被意外断开,这往往是因为Oracle数据库在创建时,最大连接数被设置得较小。这样的设置虽然能够满足一般轻量级的使用,但在多用户并发访问时,就会显得捉襟见肘。由于数据库重启...

    如何修改Oracle连接数

    本文将详细介绍如何修改Oracle数据库的连接数,以及解决过程中可能遇到的问题。 1. **查看当前会话和参数值**: 在Oracle环境中,可以使用`SELECT`语句从`v$session`视图获取当前的会话数。`SHOW PARAMETER`命令则...

    修改数据库最大连接数以及linux系统下ORACLE数据库启动多实例借鉴.pdf

    Oracle数据库最大连接数修改和Linux系统下Oracle数据库多实例启动 一、修改Oracle数据库最大连接数 Oracle数据库的最大连接数是指数据库允许的最大并发连接数,该数值可以通过修改数据库参数来实现。下面是修改...

    oracle连接数修改

    oracle 连接数查看 修改 设置 最大连接数 回话连接数 查看修改

    oracle连接数问题

    Oracle数据库的连接数问题主要表现为当并发用户数量超过系统预设的最大值时,新的连接请求将被拒绝,导致业务中断或响应延迟。这种现象通常与Oracle数据库的内存管理和进程控制有关。为了解决这个问题,我们需要对...

    强制释放Oracle数据连接方案

    首先,我们需要了解当前数据库的最大连接数限制。可以通过以下SQL语句查询当前系统参数`processes`的值来获得这一信息: ```sql SELECT COUNT(*) FROM v$process; ``` 这条命令返回的结果表示的是当前活动进程的...

    修改Oracle最大远程链接数的方法

    ### Oracle最大远程链接数概述 Oracle数据库的远程链接数是指从远程客户端(如应用程序服务器、其他数据库等)连接到Oracle实例的连接数量。这一参数对于确保数据库能够有效处理来自不同地理位置或不同服务的并发...

    用Java类来测试Oracle最大连接数的程序

    1. **增加最大连接数**:检查并修改Oracle实例的`init.ora`或`spfile`文件中的`OPEN_CURSORS`和`SESSIONS_MAX`参数。 2. **调整后台进程**:适当增加`DBWR_PROCESSES`、`LGWR_IO_SLAVES`等参数,以确保有足够的后台...

    怎样查看oracle当前的连接数

    `processes`参数指定了Oracle实例可以支持的最大进程数,这间接反映了最大连接数的限制。 2. **查看`sessions`参数**: ```sql SHOW PARAMETERS sessions; ``` `sessions`参数定义了可以同时打开的最大会话数...

    ORACLE 最大连接数的问题

    然后 更改系统连接数 alter system set processes=1000 scope=spfile; 下面是具体的操作步骤与说明问题描述:客户端连接数据库报错 ORA-12516: TNS: 监听程序无法找到匹配协议栈的可用句柄 解决过程: 1。查看当前...

    数据库创建spfile及修改最大连接数

    本文详细介绍了如何在Oracle数据库中创建spfile以及如何修改最大连接数的过程。通过创建spfile,可以提高数据库的安全性和性能;而通过调整最大连接数,可以根据业务需求合理分配资源,避免不必要的性能瓶颈。这些...

Global site tag (gtag.js) - Google Analytics