`

ORACLE查看并修改最大连接数

 
阅读更多
文章来源http://hi.baidu.com/jinyingfu2005/blog/item/1af47b2b8c70c3e2e7cd4019.html

1. 查看processes和sessions参数

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     150


SQL> show parameter sessions

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
java_max_sessionspace_size           integer     0
java_soft_sessionspace_limit         integer     0
license_max_sessions                 integer     0
license_sessions_warning             integer     0
logmnr_max_persistent_sessions       integer     1
mts_sessions                         integer     165
sessions                             integer     170
shared_server_sessions               integer     165
SQL>


2. 修改processes和sessions值

SQL> alter system set processes=300 scope=spfile;

系统已更改。

SQL> alter system set sessions=335 scope=spfile;

系统已更改。

3. 修改processes和sessions值必须重启oracle服务器才能生效

ORACLE的连接数(sessions)与其参数文件中的进程数(process)有关,它们的关系如下:

sessions=(1.1*process+5)

 

 查询数据库当前进程的连接数:

 select count(*) from v$process;

  查看数据库当前会话的连接数:

  select count(*) from v$session;

  查看数据库的并发连接数:

  select count(*) from v$session where status='ACTIVE';

  查看当前数据库建立的会话情况:

  select sid,serial#,username,program,machine,status from v$session;

 查询数据库允许的最大连接数:

  select value from v$parameter where name = 'processes';

  或者:show parameter processes;

  修改数据库允许的最大连接数:

  alter system set processes = 300 scope = spfile;

  (需要重启数据库才能实现连接数的修改)

  重启数据库:

  shutdown immediate;

  startup;

  查看当前有哪些用户正在使用数据:

  select osuser,a.username,cpu_time/executions/1000000||'s',sql_fulltext,machine

  from v$session a,v$sqlarea b

  where a.sql_address = b.address

  order by cpu_time/executions desc;

  备注:UNIX 1个用户session对应一个操作系统process,而Windows体现在线程。

  启动oracle

  su - oracle

  sqlplus system/pwd as sysdba   //进入sql

  startup                                      //启动数据库

  lsnrctl start                               //启动监听

  sqlplus "/as sysdba"

  shutdown immediate;

  startup mount;

  alter database open;



核心主要相关的参数的调整如下:


SHMMAX    1000000000


SHMMIN    1


SHMMNI    200


SHMSEG    15


SEMMNI    1000


SEMMSL    300


SEMMNS    230


SEMOPM    20


其中semmni,semmns,semmsl要加大,至少要比processes大18 ;


SEMMNI(10,10000;150):指定在核心中信号识别的数量。这是可以在任意给定时间被激活的唯一信号设置数量。缺省值是150。最大值由系统自动调整产生。


SEMMSL(25,300;150):指定每个信号识别中信号量的最大值。缺省值是25。
SEMMNS 除最大db外的所有db 的PROCESSES之和+2*最大db的PROCESSES+10*


实例数。如3个实例进程数分别为100、100、200,则=(100+100)+2*200+10*3=630


    SEMOPM(10,20;10):指定在每个系统调用semop中能够被执行的信号操作量的最大值。缺省值是10。


    SHMMAX(131072,1073741824;524288):指定了共享内存部分大小的最大值。等于0.5


× 物理内存字节数


SHMMNI(10,1000;100):指定了系统范围内共享内存标识的最大值。


SHMSEG(6,15;6):指定了与每个进程相关连的共享内存块(或标识)的数量。缺省值是6。与每个进程相关连的共享内存块的最大值与进程拥有的未使用空间有关。因此,尽管一个进程拥有少于SHMSEG数值的共享内存块,它也有可能因为其有限的空间而不能与其它进程相联系。

分享到:
评论

相关推荐

    oracle修改最大连接数

    本篇将详细探讨如何通过Oracle参数来修改最大连接数,包括理解相关参数的意义、查看当前设置、以及实际操作步骤等内容。 #### 相关参数解读 1. **`processes` 参数**: - **定义**:该参数用来设置Oracle实例可以...

    修改oracle最大连接数

    #### 三、修改最大连接数 假设我们需要将最大连接数增加到1000: 1. **修改参数**:执行以下命令来更改`processes`参数的值。 ```sql alter system set processes=1000 scope=spfile; ``` 这里需要注意的是`...

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

    下面是修改最大连接数的步骤: 1. 查看当前连接数:select count(*) from v$process; 2. 查看当前数据库允许的最大连接数:select value from v$parameter where name = 'processes'; 3. 修改最大连接数:alter ...

    oracle 最大连接数问题

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

    ORACLE查看并修改最大连接数的具体步骤

    本文将详细阐述如何查看和修改Oracle数据库的最大连接数。 首先,Oracle的最大连接数涉及到两个主要参数:`processes`和`sessions`。`processes`参数定义了数据库能够同时运行的后台进程数,包括用户进程、数据库...

    oracle连接数修改

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

    Oracle最大连接数

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

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

    3. 修改最大连接数:使用alter system set processes = 600 scope = spfile语句可以修改数据库的最大连接数。 4. 重启数据库:修改完成后,需要重启数据库,以便生效新的参数设置。 二、Oracle数据库启动多实例 ...

    如何修改Oracle连接数

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

    修改Oracle数据库连接数

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

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

    在Oracle数据库中,控制用户最大连接数的关键参数是`processes`。这个参数定义了Oracle实例可以同时处理的最大进程数,其中包括了后台进程。因此,调整`processes`参数的值可以直接影响到用户能够同时建立的最大连接...

    oracle连接数问题

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

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

    ### 修改最大远程链接数 如果发现当前的`open_links`值低于业务需求,可以通过以下步骤增加最大远程链接数: #### 步骤1:登录到Oracle数据库 首先,以`SYSDBA`身份登录到Oracle数据库,使用PL/SQL Worksheet或...

    怎样查看oracle当前的连接数

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

    强制释放Oracle数据连接方案

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

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

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

    Oracle查看和修改连接数(进程/会话/并发等等)

    5. **查询数据库允许的最大连接数**: `select value from v$parameter where name = ‘processes’;` 或者 `show parameter processes;` 这些命令显示了Oracle实例配置的最大允许进程数,即同时连接的用户会话和...

Global site tag (gtag.js) - Google Analytics