在这种配置下,oracle运行过程如下:数据库服务器计算机当前正在运行oracle(后台进程)……
在这种配置下,oracle运行过程如下:
(1)数据库服务器计算机当前正在运行oracle(后台进程)。
(2)在一客户工作站运行一个数据库应用(为用户进程),如sql*plus。客户应用使用sql*net driver建立对服务器的连接。
(3)数据库服务器计算机当前正运行合适的sql*net driver,该机上接收器进程检出客户数据库应用的连接请求,并在该机上为用户进程建立专用服务器进程。
(4)用户发出单个sql语句。
(5)专用服务器进程接收该语句,在此处有两种方法处理sql语句:
◆如果在共享池一共享sql区中包含有相同sql语句时,该服务器进程可利用已存在的共享sql区执行客户的sql语句。
◆如果在共享池中没有一个sql区包含有相同的sql语句时,在共享池中为该语句分配一新的共享sql区。
在每一种情况,在会话的pga中建立一个专用sql区,专用服务器进程检查用户对查询数据的存取权限。
(6) 如果需要,服务器进程从数据文件中检索数据块,或者可使用已存储在实例sga中的缓冲存储区的数据块。
(7) 服务器进程执行存储在共享sql区中的sql语句。数据首先在sga中修改,由dbwr进程在最有效时将它写入磁盘。lgwr进程在在线日志文件中记录用户提交请求的事务。
(8)如果请求成功,服务器将通过网络发送一信息。如果请求不成功,将发送相应的错误信息。
(9)在整个过程中,其它的后台进程是运行的,同时注意需要干预的条件。另外,oracle管理其它事务,防止不同事务之间请求同一数据的竞争。
闽公网安备 35060202000074号