oracle包如何进入编辑,修改 Oracle 的process和Session
1.process 和session的概念:
process:這個參數限制了能夠連接到SGA的操作系統進程數(或者是Windows 系統中的線程數),這個總數必須足夠大,從而能夠適用于后臺進程與所有的專用服務器進程,此外,共享服務器進程與調度進程的數目也被計算在內.此外,共享 服務器進程與調度進程的數目也被計算在內.因此,在專用服務器環境中,這是一種限制并發連接數的方法.
疑點一:能夠連接到SGA的操作系統進程數,這種進程包括哪些進程? Windows系統中的線程數,是指所有與oracle相關的進程的線程數之和?
疑點二:在共享服務器和專用服務器環境中,算法有什么不同?
哪位兄弟了解比較透徹,請指點一下,拜謝!
Sessions:是被應用于oracle層次而非操作系統層次.在不考慮通過專用服務器或共享服務器進行登錄的情況下,這個參數限制了對指定實例的并發登陸數.
疑問:在C/架構中,是指Oracle用戶登陸建立的會話數?在B/S架構中又怎么算呢?
2,盡管概念不是很明白,遇到這種問題還得干活先:
2.1 ?查看session:
select * from v$session where username is not null
select username,count(username) from v$session where username is not null group by username
2.2 ?當前連接數:
select count(*) from v$process
2.3 ?查看連接數參數的設置情況
select value from v$parameter where name = 'processes'
2.4 ?Select count(*) from v$session where status='ACTIVE' #并發連接數
1).通過SQLPlus修改
Oracle的sessions和processes的關系是
sessions=1.1*processes + 5
使用sys,以sysdba權限登錄:
SQL> show parameter processes;
NAME TYPE VALUE
------------------------------------ ----------- ---------------------------------------
aq_tm_processes integer 1
db_writer_processes integer 1
job_queue_processes integer 10
log_archive_max_processes integer 1
processes integer 150
SQL> alter system set processes=400 scope = spfile;
系統已更改。
SQL> show parameter processes;
NAME TYPE VALUE
------------------------------------ ----------- -----------------------------------------
aq_tm_processes integer 1
db_writer_processes integer 1
job_queue_processes integer 10
log_archive_max_processes integer 1
processes integer 150
SQL> create pfile from spfile;
文件已創建。
重啟數據庫,OK!
SQL> shutdown immediate;
數據庫已經關閉。
已經卸載數據庫。
ORACLE 例程已經關閉。
SQL> startup
ORACLE 例程已經啟動。
Total System Global Area? 171966464 bytes
Fixed Size?????????????????? 787988 bytes
Variable Size???????????? 145488364 bytes
Database Buffers?????????? 25165824 bytes
Redo Buffers???????????????? 524288 bytes
數據庫裝載完畢。
數據庫已經打開。
SQL> show parameter processes;
NAME???????????????????????????????? TYPE??????? VALUE
------------------------------------ ----------- ----------------
aq_tm_processes????????????????????? integer???? 0
db_writer_processes????????????????? integer???? 1
gcs_server_processes???????????????? integer???? 0
job_queue_processes????????????????? integer???? 10
log_archive_max_processes??????????? integer???? 2
processes??????????????????????????? integer???? 400
SQL> show parameter session;
NAME???????????????????????????????? TYPE??????? VALUE
------------------------------------ ----------- ----------------
java_max_sessionspace_size?????????? integer???? 0
java_soft_sessionspace_limit???????? integer???? 0
license_max_sessions???????????????? integer???? 0
license_sessions_warning???????????? integer???? 0
logmnr_max_persistent_sessions?????? integer???? 1
session_cached_cursors?????????????? integer???? 0
session_max_open_files?????????????? integer???? 10
sessions???????????????????????????? integer???? 445
shared_server_sessions?????????????? integer
SQL>
【注:sessions是個派生值,由processes的值決定,公式sessions=1.1*process + 5】
2).通過修改oracle配置文件進行修改
修改SPFILEORCL.ORA文件中的processes的值。8.1.5中是init.ora文件,在9i中修改init.ora文件是無效的,這個文件由于是一個二進制的文件,不能直接使用notepad此類的編輯器打開。
否則會報錯誤ORA-27101 Shared memory realm does not exist。使用UltraEdit或者EditPlus之類的可以編輯二進制文件的編輯器打開此文件(直接編輯二進制文件),然后在Windows服務中重新啟動Oracle服務器即可。
3).通過Oracle Enterprise Manager Console在圖形化管理器中修改
a.以系統管理員的身份登入
b.進入數據庫的例程-配置-一般信息-所有初始化參數
c.修改processes的值
d.Sessions的值由公式sessions=1.1*process + 5派生得到
總結
以上是生活随笔為你收集整理的oracle包如何进入编辑,修改 Oracle 的process和Session的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Delphi获得计算机系统配置,用Del
- 下一篇: 八皇后问题c语言循环,八皇后问题的12组