Update Bank_table set account_balanct=300
Where account_number='111222333'
And account_type='SAVINGS';
客户进程通过SGA把SQL语句传给服务器进程;
服务器进程查找有无该条语句,有执行(;
分析SQL语句并存入共享池;
执行SQL语句;
要处理的数据在数据高速缓冲区吗?是转7;
从数据文件中读数据块到数据高速缓冲区;
在回滚段中记录原来的数值($325);
在重做日志中生成该事务的一个拷贝;
将数据高速缓冲区中的余额改为$300;
银行柜员机通过SGA发出工作完成信号(提交):
在重做日志中记录已完成事务;
清除回滚段中的恢复信息(Undo Information);
顾客取钱完成。
11 ORACLE系统的SYS和SYSTEM模式
SYS和SYSTEM 是每个ORACLE 数据库系统缺省安装的两个帐户。SYS 是所有内部数据库表、结构、过程包、等拥有者,此外它还拥有 V$ 和数据字典视图,并创建所有封装的数据库角色(DBA,CONNECT,RESOURCE)。 Sys是一个唯一能访问特定内部数据字典的用户。 System 也是在安装ORACLE 时创建的用户,用于 DBA 任务的管理。
SYS 安装后的缺省口令为 change_on_install; SYSTEM 缺省口令为 manager。 为了安全,可在安装完成后。 用 ALTER USER sys IDENTIFIED BY password; 命令修改这两个特权帐户的口令。
12 ORACLE系统跟踪文件
所有ORACLE 数据库都至少有一个文件用于记录系统信息,错误及主要事件.这个文件叫做ALERTsid.log(这里的sid 为 oracle 的系统标识),存储位置由INITsid.ORA 文件的 BACKGROUND_DUMP_DEST 参数给出。
后台进程和用户进程都可以建立各自的跟踪文件,后台进程跟踪文件位置由BACKGROUND_DUMP_DEST 参数给出, 而用户跟踪文件位置由 USER_DUMP_DEST 参数给出. 如参数文件 initora8.ora 中给出:
# define directories to store trace and alert files
background_dump_dest=d:\oracle\admin\ora8\bdump
user_dump_dest=d:\oracle\admin\ora8\udump
后台跟踪文件被命名为 sidPROC.TRC
13 ORACLE系统数据字典
数据字典(data dictionary)是存储在数据库中的所有对象信息的知识库,ORACLE数据库系统使用数据字典获取对象信息和安全信息,而用户和DBA用它来查阅数据库信息。数据字典保存数据对象和段的信息。如表、视图、索引、包、过程以及用户、权限、角色、审计等的信息。数据字典是只读对象,不允许任何人对其进行修改。
14 其它数据对象
ORACLE 除前面给出的数据对象外,还有包括视图,序列,同义词,触发器,数据库链及程序包,过程和函数。下面是必要介绍。
A 视图
视图是存储在数据库中的查询的SQL 语句,它主要出于两种主要原因:
安全原因, 视图可以隐藏一些数据,如:社会保险基金表,可以用视图只显示姓名,地址,而不显示社会保险号和工资数等,另一原因是可使复杂的查询易于理解和使用.
B 序列
序列是用于产生唯一数码的数据库对象,序列创建时带有 初始值,增量值,最大值等,最大可达38 位整数。
C 触发器
触发器(trigger)是个特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由个事件来触发,比如当对一个表进行操作( insert,delete, update)时就会激活它执行。触发器经常用于加强数据的完整性约束和业务规则等。 触发器可以从 DBA_TRIGGERS ,USER_TRIGGERS 数据字典中查到。
D 同义词
同义词(synonym)是指向其它数据库表的数据库指针。同义词有两种类型:私有(private)和公共(public)。私有的同义词是在指定的模式中创建并且只创建者使用的模式访问。公共同义词是由public 指定的模式访问,所有数据库模式(用户)都可以访问它。
E 数据库链
数据库链( database link )是与远程数据库连接的存储定义, 它们用于查询分布数据库环境的远程者。 由于存储在 DBA_DB_LINKS 数据字典中,所以可以把它们看作一种数据库对象类型。