临光富远久越间时的去离子日苦:念一作化感百昔追今抚运思当耻国忘xyOIzB勿fwkW
fOracle实例和后台进程(i
sta
ce图)在分布情况下,为使不同的数据库系统的名字不致混淆,Oracle使用了一个SID(SystemIde
tifer)来标识每个OracleServer的名字,在UNIX环境中以变量Oracle_Sid来区分。§29多线程服务器(MTS)Oracle多线程服务器(MultithreaderServer)允许对数据库进行多个连接以充分共享内存和资源,这使得可以用较少的内存来支持较多的用户。连接到Oracle数据库的进程都需要占用一定的内存空间,这样如果有过多的进程连接到Oracle,则出现了一个性能瓶颈。Oracle8可以允许一万个以上用户同时连接到Oracle,但并不是所有的用户都使用MTS目前的一些4GL工具并不支持MTS,象VB,PB等不支持MTS,象VCC可以支持MTSOracle多线程服务器有自己的连接池(即共享服务器进程)。由于用户共享开放连接,这比原来的专用方法快的多(消除瓶颈)。多线程对于一些专用的应用系统来说是非常合适的,比如订单登记系统,顾客提交订单,录入员该订单的数据;另外的录入员在与顾客交涉,并不都在录入数据(专用服务器进程闲着)。单这些终端被迫与系统连着,占据了其他用户的资源。多线程服务器则消除这些缺点。多线程服务器只维护一个连接池,当某个终端需和系统对话则给其分配一个连接即可。不需要则可以去掉。这样系统的资源被多个用户平摊。改变参数文件中的相关参数来达到使系统成为多线程服务器配置(重新启动即可有效)。另外,数据库实例必须提供用户数目与所放置的一样才行。§210Oracle事务处理流程银行取款业务处理流程:1发出查询余款的SQL语句,如:Selectaccou
t_bala
ceaccou
t_
umberA
daccou
t_typeSAVINGS;ll备运行;l缓冲区;lFromba
ktableWhere
SQL语句通过SGA得到服务器进程;服务器进程检查共享池中有无该条语句,无该条语句则将放置共享池中并准执行SQL语句,把存放有余款的数据块从数据文件中读到SGA的数据高速显示结果,比如余款为325setaccou
t_bala
ct300Where
2取款25:SQL语句为:UpdateBa
k_tableaccou
t_
umberA
daccou
t_typeSAVINGS;l
客户进程通过SGA把SQL语句传给服务器进程;
ACkNxIzBdirco
f90°18wugplbySvqOWthesam命族民、家系心们我匆急临光富远久越间时的去离子日苦:念一作化感百昔追今抚运思当耻国忘勿
fllllllllllll
服务器进程查找有无该条语句,有执行(;分析SQL语句并存入共享池;执行SQL语r