天天看點

修改Oracle資料庫的連接配接數

測試了這個,不錯。

  摘(一)

  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

  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"

  startup mount;

  alter database open;