`
ruyi574812039
  • 浏览: 45228 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

oracle中的connect,session和processes的区别

阅读更多
需要先了解oracle一个概念:shared server模式和dedicated server模式
在创建数据库时,可以选择创建哪种模式的数据库。

简单描述2种模式的区别:
专用服务器模式 (dedicated server): 每次访问oracle服务时,创建一个新的进程。
共享服务器模式(shared server): 类似于数据库连接池的概念,初始化的时候就会创建一批服务器连接.

1. 如果是dedicated server,则客户端只能创建dedicated connection进行连接
2. 如果是shared server,则客户端能创建dedicated server connection和shared server connection,只要在service name中指定server=dedicated or server=shared.(可通过修改tnsnames.ora文件测试)

关于2种模式的详解:
推荐几篇文章,如下:
http://blog.csdn.net/kellyseeme/article/details/8959980
http://blog.itpub.net/7724693/viewspace-1026681/


connect(连接):使用plsql连接到oracle后,就是建立了一个连接(一次login)
session(会话):决定同时登陆到数据库的并发用户数(数据库层面)
processes:也决定同时登陆到数据库的并发用户数(操作系统层面)

session的设置和processes的设置共同决定了数据库允许的最大并发用户数。

connect与session的关系: 一个connect对应0或多个会话。
测试方式:
使用plsql连接oracle数据库后,每新增一个查询窗口执行查询后,使用语句:
select * from v$session where username is not null
就可以查看到多了一个会话session
固:使用plsql存在大量未关闭的执行窗口,就会占用大量的session数。所以说,仅需一个连接就可以达到所谓的最大并发用户数。


session与processes的关系如下:

1.当dedicated server模式下:
关系为一一对应。一个session对应一个processes。

2.当shared server模式下:
一个processes可以对应多个session.


常用查询sql记录:


允许最大进程数processes:
select value from v$parameter where name = 'processes' ;

当前已用进程数processes:
select count(*) from v$process  ;


最大允许会话数session:
show parameter sessions

当前已用会话数session:
select count(1) from v$session;


查看当前数据库使用的模式:
select count(*) from v$shared_server;(结果不为0,表示共享模式)

使用共享模式连接示例:

ORCL_146 =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.146)(PORT = 1521))
    )
    (CONNECT_DATA =
    (server = shared )
      (sid = orcl)
    )
  )

使用专用服务器模式连接示例:
ORCL_146 =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.146)(PORT = 1521))
    )
    (CONNECT_DATA =
    (server = dedicated )
      (sid = orcl)
    )
  )
















分享到:
评论

相关推荐

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

    在Oracle数据库系统中,了解Connect、Session和Process的概念及其相互关系对于有效管理和优化数据库性能至关重要。下面我们将深入探讨这三个术语的定义以及它们之间的差异和联系。 1. Connect(连接): Connect...

    oracle 客户端不支持中文解决办法

    - 输入`connect / as sysdba`以管理员身份连接到Oracle数据库。 3. **关闭并启动数据库**: - 执行`shutdown immediate`关闭数据库。 - 接着使用`startup mount`启动数据库至挂载状态。 4. **启用受限会话**: -...

    Oracle 12c r2优化参数设置.docx

    Oracle 12c Release 2 (12.2.0.1) 是一款先进的关系型数据库管理系统,提供了诸多性能优化和管理功能。在RHEL 7.4操作系统环境下,为了确保Oracle数据库高效运行,需要对一系列系统参数进行适当的配置。以下是一些...

    解决Oracle XE中文乱码问题

    connect system/oracle9ias sysdba ``` 2. **关闭数据库**: - 在进行任何更改之前,需要先关闭数据库。 ```sql shutdown immediate ``` 3. **启动数据库到mount状态**: - 数据库处于mount状态时,可以...

    Oracle数据库面试题及答案

    知识点:V$SESSION 和 V$SESSION_WAIT 是 Oracle 数据库中的两种视图,用于查看当前的会话信息。 12. 描述什么是 redo logs 答案:Redo Logs 是用于存放数据库数据改动状况的物理和逻辑结构。可以用来修复数据库。 ...

    spotlight on oracle性能监控教程

    2. 在“Connect to Oracle”对话框中输入Oracle服务器的相关信息,如服务器名称、端口号、服务名等。 3. 输入登录凭证,通常是数据库管理员的用户名和密码。 4. 点击“Connect”按钮完成连接。 #### 三、Spotlight...

    Oracle 主要配置文件介绍

    - **定义**: `/etc/oratab` 文件描述当前系统中创建的所有 Oracle 数据库实例及其启动与关闭的控制情况。 - **示例内容**: ```bash cams:/u01/app/oracle/product/8.1.7:Y ``` - **解释**: - `cams`: 实例 ID。 ...

    oracle基础命令总结.docx

    Oracle数据库是世界上最流行的数据库管理系统之一,它提供了丰富的命令和功能来管理数据库。以下是对文档中提到的Oracle基础命令的详细解释: 1. **数据泵语句**:Oracle数据泵(Data Pump)是一种高速数据传输机制...

    LINUX下修改ORACLE的字符集[文].pdf

    6. 设置JOB_QUEUE_PROCESSES和AQ_TM_PROCESSES参数为0。 alter system set JOB_QUEUE_PROCESSES=0; alter system set AQ_TM_PROCESSES=0; 7. 修改数据库字符集为ZHS16GBK。 alter database character set ...

    oracle标准语法速查表

    Oracle标准语法是数据库管理员(DBA)和开发人员日常工作中不可或缺的一部分。本篇基于一份Oracle 8i的快速参考指南,旨在帮助用户理解并掌握Oracle的核心概念与常用语法。 #### 二、实例(Instance)相关视图 在...

    oracle 11g 命令

    Oracle 11g 是一款广泛使用的数据库管理系统,其命令行工具是进行数据库管理和维护的重要手段。以下是一些关于Oracle 11g常用命令的详细解释: 1. 监听器管理: - 启动监听器:`lsnrctl start` - 停止监听器:`...

    Oracle11g 字符集 AL32UTF8 修改为ZHS16GBK

    2. **切换为SYSDBA身份:** 在SQL Plus中执行`connect sys/123456 as sysdba`命令,这里请使用自己的密码替换示例中的“123456”。 3. **关闭数据库服务:** 如果当前数据库服务器已经启动,首先需要执行`SHUTDOWN ...

    Oracle10G常用维护语句

    Oracle 10G 是一款广泛使用的数据库管理系统,其强大的功能和稳定性使得它在企业级应用中占据了重要地位。本文将详细介绍Oracle 10G中的一些常用维护语句,这些语句对于数据库管理员(DBA)来说是日常管理工作的基石...

    oracle11g安装.docx

    在安装 Oracle 11g 之前,需要从官方网站下载 Oracle 11g 的客户端和服务端软件,并将其解压缩到本地目录中。 安装 Oracle 11g 1. 解压缩下载的软件包,得到两个压缩包,分别命名为 database,互相覆盖以获取最终...

    Oracle常用傻瓜问题1000问

    ### Oracle常用傻瓜问题解析 #### 1. Oracle裝置如何開始? 对于Oracle裝置的启动,这通常指的是Oracle数据库的安装与初始化过程。...以上是对题目中提及的部分Oracle基础知识和操作命令的解析,希望对你有所帮助。

    oracle实施/维护人员常用语句

    以上SQL语句和命令涵盖了Oracle实施和维护过程中常见的任务和需求,包括表空间管理、用户管理、权限管理、数据导入导出以及系统监控等方面。掌握这些操作可以帮助数据库管理员更高效地管理Oracle数据库。

    Oracle 经典 1000 问

    - **位数的区别**:Oracle数据库支持32位和64位的操作系统环境。32位版本限制了单个进程可使用的内存大小,而64位版本则消除了这一限制,允许数据库利用更多的物理内存。 - **启动命令**:可以通过以下命令检查当前...

    oracle基本命令整理

    Oracle数据库是世界上最流行的数据库管理系统之一,它提供了丰富的命令和功能来管理和操作数据库。以下是一些基本的Oracle命令,这些命令涵盖了从创建用户、表空间到查看数据库信息、管理权限以及数据操作等多个方面...

    oracle10g笔记DBA

    在 Oracle 10g 数据库管理中,服务名(Service Name)和系统标识符(System Identifier, SID)是两个重要的概念。服务名用于客户端连接到数据库实例时指定的目标名称,而 SID 是数据库实例在操作系统层面的唯一标识...

    ORACLE常用傻瓜问题1000问

    - `svrmgrl`(Server Manager)是早期版本的Oracle数据库中用于启动、停止数据库以及执行其他管理任务的工具。 - 随着版本的发展,Oracle 9i 及之后的版本已经不再使用 SVRMGRL,取而代之的是 SQL*PLUS。 9. **...

Global site tag (gtag.js) - Google Analytics