`

Oracle 的process和Session

阅读更多
Oracle 的process和Session

1.process 和session的概念:
process:这个参数限制了能够连接到SGA的操作系统进程数(或者是Windows 系统中的线程数),这个总数必须足够大,从而能够适用于后台进程与所有的专用服务器进程,此外,共享服务器进程与调度进程的数目也被计算在内.此外,共享 服务器进程与调度进程的数目也被计算在内.因此,在专用服务器环境中,这是一种限制并发连接数的方法.

疑点一:能够连接到SGA的操作系统进程数,这种进程包括哪些进程? Windows系统中的线程数,是指所有与oracle相关的进程的线程数之和?

疑点二:在共享服务器和专用服务器环境中,算法有什么不同?

哪位兄弟了解比较透彻,请指点一下,拜谢!

Sessions:是被应用于oracle层次而非操作系统层次.在不考虑通过专用服务器或共享服务器进行登录的情况下,这个参数限制了对指定实例的并发登陆数.

疑问:在C/架构中,是指Oracle用户登陆建立的会话数?在B/S架构中又怎么算呢?

2,尽管概念不是很明白,遇到这种问题还得干活先:

 

2.1  查看session:

select * from v$session where username is not null

select username,count(username) from v$session where username is not null group by username

 2.2  当前连接数:

select count(*) from v$process

 2.3  查看连接数参数的设置情况

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

 

 

2.4  Select count(*) from v$session where status='ACTIVE' #并发连接数

 


1).通过SQLPlus修改
Oracle的sessions和processes的关系是
sessions=1.1*processes + 5

使用sys,以sysdba权限登录:
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 1
processes integer 150
SQL> alter system set processes=400 scope = spfile;
系统已更改。
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 1
processes integer 150
SQL> create pfile from spfile;
文件已创建。


重启数据库,OK!

SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。

Total System Global Area  171966464 bytes
Fixed Size                   787988 bytes
Variable Size             145488364 bytes
Database Buffers           25165824 bytes
Redo Buffers                 524288 bytes
数据库装载完毕。
数据库已经打开。
SQL> show parameter processes;

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     400
SQL> show parameter session;

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
session_cached_cursors               integer     0
session_max_open_files               integer     10
sessions                             integer     445
shared_server_sessions               integer
SQL>


【注:sessions是个派生值,由processes的值决定,公式sessions=1.1*process + 5】


2).通过修改oracle配置文件进行修改
修改SPFILEORCL.ORA文件中的processes的值。8.1.5中是init.ora文件,在9i中修改init.ora文件是无效的,这个文件由于是一个二进制的文件,不能直接使用notepad此类的编辑器打开。
否则会报错误ORA-27101 Shared memory realm does not exist。使用UltraEdit或者EditPlus之类的可以编辑二进制文件的编辑器打开此文件(直接编辑二进制文件),然后在Windows服务中重新启动Oracle服务器即可。
3).通过Oracle Enterprise Manager Console在图形化管理器中修改
a.以系统管理员的身份登入
b.进入数据库的例程-配置-一般信息-所有初始化参数
c.修改processes的值
d.Sessions的值由公式sessions=1.1*process + 5派生得到

本文出自 “蓝天--大海--” 博客,请务必保留此出处http://sunwayle.blog.51cto.com/114995/88870

分享到:
评论

相关推荐

    修改oracle process session 初始化参数

    在Oracle数据库管理中,对`process`与`session`的管理和优化至关重要。本文将从查询、设定以及二者之间的关系等方面详细介绍如何修改Oracle的`process`与`session`初始化参数。 #### 一、查询Process与Session ...

    oracle中session和processes的设置

    ### Oracle中Session与Processes参数的设置详解 #### 一、引言 在Oracle数据库管理过程中,合理设置系统参数对于确保数据库稳定运行至关重要。其中,“session”与“processes”两个参数直接影响到数据库能够同时...

    修改oracle初始化参数,包括Process,Session,SGA,PGA

    ### 修改Oracle初始化参数:Process, Session, SGA, PGA 在Oracle数据库管理中,正确配置初始化参数对于确保系统的稳定性和性能至关重要。本文将详细介绍如何修改与监控`Process`, `Session`, `SGA`, 和 `PGA` 相关...

    快速杀死oracle的session

    ### 快速杀死Oracle的Session方法详解 在Oracle数据库管理中,有时会遇到需要迅速终止某个或某些Session的情况。...通过上述步骤,我们可以有效地快速杀死Oracle中的Session,确保数据库的高效运行和管理。

    oracle中已killed session的处理

    - 由于被Killed的进程的物理地址(PADDR)发生了变化,因此无法通过`v$session`和`v$process`视图之间的关联来查找SPID。 - 可以通过以下SQL语句找出存在于`v$process`中但不在`v$session`中的进程: ```sql ...

    oracle_v$session_v$session_wait用途详解

    ### Oracle V$SESSION 和 V$SESSION_WAIT 的详细解析 #### 概述 Oracle 数据库提供了大量的动态性能视图(Dynamic Performance Views),其中 `V$SESSION` 和 `V$SESSION_WAIT` 是两个非常重要的视图,它们能够帮助...

    Oracle_Kill_Session_终极篇

    ### Oracle_Kill_Session_终极篇:...当遇到难以通过常规手段终止的session时,通过深入理解Oracle内部机制,结合数据库视图和操作系统命令,可以采取一系列措施来确保session的彻底关闭,从而保障数据库的健康运行。

    oracle Session与lock 解除

    ### Oracle Session与Lock解除 在Oracle数据库环境中,锁机制是一种重要的资源管理手段,它能够确保数据的一致性和并发性处理。锁(Lock)是数据库管理系统为了控制多个用户对同一数据资源的同时访问而采取的一种...

    Oracle Session Monitor v1.0

    Oracle Session Monitor v1.0 是一个专为Oracle数据库设计的进程管理工具,它允许管理员设置特定的时间条件,以便自动监控并处理数据库中的会话。在Oracle数据库系统中,"会话"指的是用户与数据库之间的连接,它包含...

    Oracle中的Connect/session和process的区别及关系介绍

    Connect、session、process的区别: 一个数据库的Connect可以有一个或多个session,同时connect也可以有一个或多个process. 在专业服务器连接方式中,一个session对应一个process,在共享服务器方式中,一个process...

    oracle参数设置查询

    查看processes和sessions参数 第一步,在cmd命令行,输入sqlplus 第二步,根据提示输入用户名与密码

    oracle_db_process.zip_linux oracle_oracle

    在这个“oracle_db_process.zip_linux oracle_oracle”压缩包中,包含的“dbprocess.c”和“dbprocess.h”文件可能是一个C语言编写的程序,用于与Oracle数据库进行交互,执行数据处理任务。现在,我们将深入探讨在...

    如何安全快速的批量删除Oracle数据库外部会话session

    首先,你需要查询`gv$session`和`gv$process`视图获取对应进程的SPID,确保不会误杀,然后执行相应的操作系统命令。 批量删除会话时,可以编写PL/SQL代码,利用游标遍历`gv$session`视图,找到要终止的会话。以下是...

    远程登录并启动oracle数据库 解决ORA-01031

    ### 远程登录并启动Oracle数据库及解决ORA-01031问题 #### 引言 在Oracle数据库管理过程中,远程...遵循本文所述步骤,可以有效避免因权限不足而导致的连接失败问题,从而确保远程管理Oracle数据库的安全性和稳定性。

    ora-01033 oracle initialization or shutdown in progress

    这一步可以避免打开数据文件,从而有助于诊断和修复潜在的问题。 - 在mount状态下,可以执行一些管理任务,比如恢复控制文件或离线数据文件等。 4. **处理数据文件问题**: - 在mount状态下,如果遇到类似ORA-...

    plsql_session.docx

    在Oracle数据库管理中,理解和掌握`V$SESSION`视图是非常重要的。这个视图提供了关于当前活动会话(session)的详细信息,包括用户的SID(会话标识符)、执行的SQL语句等关键数据。本文将详细介绍`V$SESSION`中的...

    Oracle的锁表与解锁

    本文将深入探讨Oracle中的锁机制,特别是如何锁表与解锁,以及相关的SQL查询语句,帮助数据库管理员和开发人员更好地理解和管理Oracle数据库的锁状态。 #### 锁的类型 在Oracle中,锁主要分为两种类型: 1. **TX...

    oracle ORA-00031:session marked for kill(标记要终止的会话)解决方法

    Oracle数据库在操作过程中,有时会遇到ORA-00031错误,这个错误提示是“会话标记为kill(session marked for kill)”。这通常发生在使用ALTER SYSTEM KILL SESSION命令企图终止某个会话时,但由于会话正在执行无法...

Global site tag (gtag.js) - Google Analytics