ORACLE檢視並修改最大連線數

47328983發表於2011-08-09
       第一步,在cmd命令列,輸入sqlplus

  第二步,根據提示輸入使用者名稱與密碼

  1. 檢視processes和sessions引數

  SQL> show parameter processes

  NAME TYPE VALUE

  db_writer_processes integer 1

  gcs_server_processes integer 0

  job_queue_processes integer 10

  log_archive_max_processes integer 2

  processes integer 50

  SQL> show parameter sessions

  NAME TYPE VALUE

  license_max_sessions integer 0

  license_sessions_warning integer 0

  logmnr_max_persistent_sessions integer 1

  sessions integer 60

  shared_server_sessions integer

  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;

  檢視資料庫當前會話的連線數:

  elect 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;
------------------------------------------------------------------------
select sum(pga_used_mem)/1024 total_used, sum(pga_used_mem)/count(1)/1024 used_avg, sum(pga_alloc_mem)/1024 total_alloc, sum(pga_alloc_mem)/count(1)/1024 alloc_avg from v$process;

TOTAL_USED USED_AVG TOTAL_ALLOC ALLOC_AVG
---------- ---------- ----------- ----------
60971.5898 1847.62393 142401.8125 4315.20643

這裡可以看到,大概一個分配5M左右,每個使用2M

這裡我的記錄數是32,通過這裡可以看到已經使用了60M,分配了140M,所以如果process是150的話,我們的PGA應該要至少設定到500M以上才能支援我們的系統

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/241379/viewspace-704499/,如需轉載,請註明出處,否則將追究法律責任。

相關文章