oracle中服务器进程是实例的一部分吗 是的。Oracle实例中的进程分为三种:后台进程、服务器进程和客户端进程。后台进程是专注于数据处理的核心进程,服务器进程其实也运行在后台,负责处理客户端和数据库的连接;客户端进程则是为了连接数据库而创建。一个比喻可以用来表示这三个进程的关系:Oracle实例是一个工厂的话,后台进程就是工厂中的工人,从事具体的生产工作,服务器进程是工厂的销售人员,负责和客户打交道,用户进程则是客户,提交任务,向工厂下订单,该订单由销售人员处理后交给工人来完成。Oracle实例的进程中,有5个必须的进程和其余若干可选的进程。在linux下使用命令ps –ef|grep oracle可以查看oracle相关的进程,其中一组进程如下:Oracle的后台进程命名也是比较规范的,形式就如ora_XXX_。五个必须的进程是ora_DBWn_,ora_PMON_,ora_CKPT_,ora_LGWR_,ora_SMON_。其中n表示序号,即多个同类进程存在时,以添加序号命名。Ora_DBWn_<;SID>;:最繁忙的进程,负责将SGA中Database Buffer Cache保存的内容写入到Data Files中去。有多种触发条件,比如检查点、无空闲的缓存、超时等等;Ora_SMON_<;SID>;:系统监控器,进程实例回复,为用户访问打开数据库,回滚未提交的事务,管理空闲空间。
如何查看oracle服务器上正在执行的SQL语句 查询Oracle正在2113执行的sql语句及执行该语句的用户SELECT b.sid oracleID,b.username 登录Oracle用户名,b.serial#,spid 操作5261系统ID,paddr,sql_text 正在执行的SQL,b.machine 计算机名4102FROM v$process a,v$session b,v$sqlarea cWHERE a.addr=b.paddrAND b.sql_hash_value=c.hash_value查看正在执行sql的发起者的发放程序SELECT OSUSER 电脑登录身份,PROGRAM 发起请求的程序,USERNAME 登录系统的用户名,SCHEMANAME,B.Cpu_Time 花费cpu的时间,STATUS,B.SQL_TEXT 执行的sqlFROM V$SESSION ALEFT JOIN V$SQL B ON A.SQL_ADDRESS=B.ADDRESSAND A.SQL_HASH_VALUE=B.HASH_VALUEORDER BY b.cpu_time DESC查出oracle当前的被锁对象SELECT l.session_id sid,s.serial#,l.locked_mode 锁模式,l.oracle_username 登录用1653户,l.os_user_name 登录机器用户名,s.machine 机器名,s.terminal 终端用户名,o.object_name 被锁对象名,s.logon_time 登录数据库时间FROM v$locked_object l,all_objects o,v$session sWHERE l.object_id=o.object_idAND l.session_id=s.sidORDER BY sid,s.serial#;kill掉当前的锁对象可以为alter system 。
简要说明多进程oracle实例进程中各后台进程的作用 1、DBWR进程:该进程执行将缓冲区写入数据文件,是负责缓冲存储区管理的一个Oracle后台进程。当缓冲区中的一缓冲区被修改,它被标志为“弄脏”,DBWR的主要任务是将“弄脏。