oracle查看和修改最大串連數,oracle查看最大

來源:互聯網
上載者:User

oracle查看和修改最大串連數,oracle查看最大
第一步,在cmd命令列,輸入sqlplus 或者直接在plsql中開啟command window

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

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;


但是:我更改最大為1200,java中356就又報錯


問ORACLE怎查看更改串連數,進程數及使用者數,三者之間有什關係?

SQL> select count(*) from v$session #串連數
SQL> Select count(*) from v$session where status='ACTIVE' #並發串連數
SQL> show parameter processes #最大串連

process:這個參數限制了能夠串連到SGA的作業系統進程數(或者是Windows 系統中的線程數),這個總數必須足夠大,從而能夠適用於後台進程與所有的專用伺服器處理序,此外,共用伺服器處理序與調度進程的數目也被計算在內.因此,在專用伺服器環境中,這是一種限制並發串連數的方法.

Sessions:是被應用於oracle層次而非作業系統層次.在不考慮通過專用伺服器或共用伺服器進行登入的情況下,這個參數限制了對指定執行個體的並發登陸數.
 
oracle老提示限制串連數,怎讓oracle無限串連

只能設定很大,不能無限
當前的串連數
select count(*) from v$process;
設定的最大串連數(預設值為150)
select value from v$parameter where name = 'processes';
修改最大串連數
alter system set processes = 300 scope = spfile;
當資料庫最大串連數不夠時會出現用戶端串連間歇性失敗,報錯ORA-12519。

修改Oracle最大串連數的方法
1、 進入“SQL*Plus Worksheet”,如所示。
2、 點擊“改變資料庫連接…”按鈕,如所示。
3、 進入“資料庫連接資訊”介面,輸入使用者名稱、口令、需要修改最大串連數的資料庫服務名,串連身份選擇“SYSDBA”,點擊“確定”,如所示。
4、 輸入指令“show parameter processes;”並執行,查看目前最大串連數,如所示。
5、 輸入指令“alter system set processes=600 scope=spfile;”並執行,修改最大串連數為600,如所示。
6、 輸入指令“create pfile from spfile;”並執行,建立Profile,如所示。
7、 關閉“Enterprise Manager Console”,重啟Oracle服務或重啟Oracle資料庫伺服器
8、 重複操作1、2、3、4步,確認最大串連數修改成功。
 

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.