第1章oreacle数据库基本概念

第一章oreacle数据库基本概念

  1. Oracle发展史
    1977年6月 SDL—-软件开发实验室
    1979年 SDL更名为RSI—-关系型有限公司
    1979年 发布第一个商用SQL关系型数据库管理系统(不稳定,缺少很多重要功能)
    1983年3月 Oracle 第3版 (具有了“可移植性”的功能)
    1984年10月 Oracle 第4版 (稳定性得到增强)
    1985年 Oracle 第5版 (可以在C/S模式下运行的RDBMS产品)
    1988年 Oracle 第6版 (BUG众多、不稳定、差点破产)
    1992年6月 Oracle 第7版 (真正出色的传品,取得重大成功,引入一种新的优化器)
    1997年6月 Oracle 第8版 (为支持INRERNET,网络计算机奠定了基础)
    1998年9月 Oracle 第8i版 (为数据库用户提供了全方位的JAVA支持)
    2001年6月 Oracle 第9i版(最重要应用集群服务器)
    2003年9月 Oracle 第10g (加入了网格计算的功能)
    2007年7月 Oracle 第11g (在性能、可升级性、可管理性以及可诊断性上有了提升)
    2.PL/SQL
    PL/SQL新功能
    1. 变量定义
    2. 控制结构
    3. 自定义的子程序
    4. 对象类型
      PL/SQL优点
      1、提高应用程序性能 ()
      2、提供模块化程序开发能力(可以将业务逻辑集成到PL/SQL命名块(存储工程、函数、触发器、包)中)
      3、具有良好的兼容性(不同的Oracle工具都可以用相同的PL/SQL脚本)
      4、允许定义标识符(可以在PL/SQL中定义变量、常量、游标、异常等各种标识符)
      5、提供了程序控制结构(可以在PL/SQL中使用选择语句、循环语句等结构化编程语言的控制结构)
      6、提供了异常处理(通过PL/SQL提供的异常处理机制,可以处理各种Oracle和PL/SQL异常)
  2. Oracle数据库体系架构
    指Oracle数据库管理系统的组成部分和这些组成部分之间的相互关系,包括内存结构、后台进程、物理与逻辑结构等。
    1、 Oracle内存结构

    1、共享内存区(主要由SGA (System Global Area)组成)
    SGA:(划定一个区域,存储每个用户所需要存取的数据,以及ORACLE运行时所必备的系统信息 此区域称为系统全局区)
        a、数据库缓存区 (database buffer cache)
           用来存放读取自数据文件的数据块副本,或者用户曾经处理过的数据
    
        b、重做日志缓冲区(redo log buffer)
          记录数据库内所有数据修改的内存区域
        c、共享池(shared pool)
           a、库缓存 (library cache)
           b、数据词典缓存(dictionary cache)
        d、其他区域
    
    2、非共享内存区(主要由PGA(Program Global Area)组成)
    PGA:(用户存放服务器进程的数据和控制信息)
        a、排序区(sort area)
           用于存放排序操作所产生的临时数据
         b、会话信息(session informatio)
           存放会话所具有的的权限、角色以及会话的性能统计信息
        c、游标状态(cursor state)
           运行SQL语句在共享池中为SQL语句分配上下文区,该上下文区的指针就是指游标
        d、堆栈空间(stack space)
           用户存放会话的变量信息
    
    1. Oracle 后台进程
      a、数据写进程(DBWR)
          将数据库缓存区内改动过的数据块写入到硬盘内的数据文件
      b、日志写进程(LGW仄R)
          将冲工作日志缓冲区中的更改写入重做日志文件
      c、系统监控(SMON)
           数据库不正常关闭,下一次开启数据库时由系统监控修复数据库
      d、进程监控(PMON) 
          进程失败时清理资源
      e、检查点进程(CKPT)
          告诉缓存中的更改永久的巨鹿在数据库中,更新控制文件和数据文件中的数据库状态信息
      f、归档进程(ARCH)
           把已满的日志组进行备份或归档
      
    2. Oracle逻辑和物理结构
      1. Oracle数据库逻辑结构
        a、表空间
        存放不同类型的数据与数据库对象
        
        b、块
        数据库中最小的存储单元
        
        c、段
        在数据表空间能划分出不同区域,存放不同数据,此区域就称为段
        
        d、区
        连续的数据块
        
        1. Oracle物理逻辑结构
          a、数据文件(data file)
          数据表、索引
          
          b、重做日志文件(redo log file)
          1. 联机重做日志文件
            数据库正常运行所必须的
          2. 归档重做日志文件
            只有在数据库运行在归档方式下才生成
            c、控制文件(control file)
            记录与描述数据库试题结构
            d、初始化参数文件(initialization parameter file)
            e、口令文件(password file)

序列的创建
create sequence 序列名 increment by 增加 start with 起始数字