Oracle学习笔记(一)

来源:互联网 发布:java微信授权登陆示例 编辑:程序博客网 时间:2024/06/08 19:57

1 ORACLE的体系结构 :实例,文件和进程

1.1 实例(INSTANCE ):是存取和控制数据库的软件机制,它由系统全局区(System Global Area,简称SGA)和后台进程组成。即OracleServiceXXX+后台进程。

1.1.1系统全局区(System Global Area)------共享池、数据缓冲区、日志缓冲区

      由Oracle分配的共享的内存结构,包含一个数据库实例的数据和控制信息,又称共享全局区。

-共享池(Shared Pool)

        由共享SQL区和数据字典区组成。参数SHARED_POOL_SIZE 确定共享池的大小。

-数据缓冲存储区(Database Buffer Cache)

        用于存储从数据文件中读的数据的备份。
DB_BLOCK_SIZE
        确定数据块的大小,一般为2K或4K,对于大数据块的数据库,此参数值为物理块的倍数。

DB_BLOCK_BUFFERS
        确定数据块的数目。

数据缓冲存储区分为
脏列表
        包括被修改过但尚未写到数据文件的缓冲块。
LRU(Least Recently Used)列表
        包括空闲缓冲块、正在存取的缓冲块、已被修改但尚未移到脏列表的缓冲块。

-日志缓冲存储区(Log Buffer)

        以记录项的形式备份数据库缓冲区中被修改的缓冲块,这些记录将被写到日志文件中。

LOG_BUFFER
        确定日志缓冲区的大小

1.1.2 程序全局区(PGA)

         与实例有关联的进程的私有内存区,包含单个进程的数据和控制信息,故又名进程全局区。

1.2 Oracle的物理结构: 数据文件、日志文件、控制文件

-数据文件(Data File)是物理存储ORACLE、数据库数据的文件。

-日志文件(Log File)记录所有对数据库数据的修改,以备恢复数据时使用。

-控制文件(Control File)是一个较小的二进制文件,用于描述数据库结构。

1.3 Oracle的逻辑结构

Oracle的逻辑结构是由一个或多个表空间组成。

 一个表空间由一组分类段组成
 一个段由一组范围组成
 一个范围由一批数据库块组成
 一个数据库块对应一个或多个物理块

-数据库块(Database Block)是数据库使用的I/O最小单元,又称逻辑块或ORACLE块。

-范围(Extent)是数据库存储空间分配的逻辑单位,一个范围由一组数据库块组成,范围是由段分配的,分配的第一个范围称初始范围,以后分配的范围称增量范围。

-段(Segment)是表空间中一个指定类型的逻辑存储结构,它由一个或多个范围组成,段将占用并增长存储空间。类型:数据段, 索引段, 回滚段, 临时段。

-表空间(Tablespace)是数据库中物理编组的数据仓库,对应一个或多个数据文件,表空间的大小是它所对应的数据文件大小的总和。

关联:ORACLE数据库中的数据逻辑存储在表空间中,物理存储在数据文件中。

1.4 Oracle实例的进程结构

       ORACLE实例分为单进程实例和多进程实例两种。多进程实例中,分为用户进程和Oracle进程。Oracle进程分为服务器进程和后台进程。后台进程:为使性能最好和协调多个用户。

主要的后台进程有:
 DBWR    数据库写进程
 LGWR    日志写进程
 CKPT      检查点写进程
 SMON     系统监控进程
 PMON     进程监控进程
 ARCH      归档进程
 RECO       恢复进程
 LCKn       封锁进程

DBWR(Data Base Writer)
    将数据缓冲区中所有修改过的缓冲块数据写到数据文件中,并使用LRU算法来保持缓冲区中的数据块为最近经常使用的,以减少I/O次数。自动启动。
LGWR(Log Writer)
    将日志缓冲区中的所有记录项写到日志文件中。自动启动。
CKPT(Checkpointer)
    在控制文件中记录检查点。参数CHECKPOINT_PROCESS确定了检查点的启动/不启动状态。
ARCH(Archiver)
    在日志文件组出现切换时,将旧日志文件的内容拷贝到脱机存储介质上,出现介质失败时用于恢复数据。
SMON(System Monitor)
    负责完成自动实例恢复。该进程在启动实例时自动启动。
PMON(Process Monitor)
    撤消异常中断的用户进程,并释放该进程已获得的系统资源或锁。
RECO(Recover)
    在分布式操作的情况下,恢复一个事务的失败。
LCKn(Lock)
    在并行服务器系统间加锁,最多可加10个锁,分别为LCK0,LCK1,...,LCK9。

1.5 关闭方式 shutdown -?

-Normal  等所有用户退出连接

-Immediate 等用户完成语句(安全)

-Transactional 等完成当前执行

-Abort 不等

1.6 模式和模式对象(P162)

       模式是模式对象的一个集合,一个数据库用户对应一个模式。模式对象包括如下:

表(table):数据存储的基本单位,按行,列存储。

视图(view):由一个或多个表(或其他视图)中数据的一种定制的表示,用查询定义。可认为是存储的查询或虚表。

聚集(cluster):存储表数据的可选择的方法。

索引(index):与表和聚集相关的一种选择结构。

序列生成器(sequence generator):产生序列号,多用户环境。

同义词(synonym):任何表、视图、快照、序列、过程、函数或包的别名,存储在数据字典中。

杂凑(hashing):存储表数据一种可选的方法,用于改进数据检索性能。

程序单元(program unit):指存储过程、函数和包。

数据库链:一个命名的对象,说明从一数据库到另一数据库的一路径(PATH)。

2 其它

2.1 SQL*plus

启动方式 cmd->sqlplus

-网络方式  sqlplus system/orcl @ db01

-本机方式 sqlplus system/orcl

2.2 Select * from dual语句

       dual是二元表,在每个Oracle数据库中(不要修改),用作取系统参数。

2.3 控制监听器

启动方式 cmd->lsnrctl

查看状态 status

2.4 三层的客户/服务器结构

      Oracle提供中层(middle-tier)方法调用Oracle应用程序服务器(OAS),中间层连接器如WebSphere。
 

原创粉丝点击