oracle 学习day01

1.关系型数据库的设计范式
    范式:是关系型数据库关系模型规范化的标准。范式是建立在函数依赖的基础上。
    函数依赖:如果表中某一个字段Y的值是有另外一个字段或一组字段X的值来确定,就称作Y函数依赖于X。
                函数依赖应该是通过理解数据项和企业的规则来决定的,根据表的内容得出的函数依赖可能是不正确的。
1.1第一范式(1NF):
    如果关系模式R每个关系的属性都是不可分割的数据项,那么就称R是第一范式。每个属性都是原子项,不可分割。第一范式是关系模式应具备的最起码的条件,如果数据库设计不能满足第一范式,就不能称为关系型数据库。
    


1.2第二范式(2NF):
    如果关系模式R是1NF,且每个非主属性是由整个主键函数决定的,而不能由主键的一部分来决定。
     例如,这里以“员工工资信息表”为例,若以(员工编码、岗位)为组合关键字(即复合主键),就会存在如下决定关系。
        (员工编码,岗位)→(决定)(姓名、年龄、学历、基本工资、绩效工资、奖金)
        在上面的决定关系中,还可以进一步拆分为如下两种决定关系。
        (员工编码)→(决定)(姓名、年龄、学历)
        (岗位)→(决定)(基本工资)


1.3第三范式(3NF):
    如果关系模型是2NF,且非主属性之间不存在函数依赖。
      例如,这里以员工信息表(EMPLOYEE)为例,该表中包含员工编号、员工姓名、年龄、部门编码、部门经理等信息,该关系    表的关键字为“员工编      号”,因此存在如下决定关系:
      (员工编码)→(决定)(员工姓名、年龄、部门编码、部门经理)
       上面的这个关系表是符合第二范式的,但它不符合第三范式,因为该关系表内部隐含着如下决定关系:
      (员工编码)→(决定)(部门编码)→(决定)(部门经理)
——————————————————————————————————————————————————————————

2.数据库实例的启动(STARTUP)
    要启动和关闭数据库,必须要以具有oracle管理员权限的用户登录,通常也就是以具有sysdba权限的用户登录。一般就以sys用户以sysdba权限启动和关闭数据库。
    oracle数据库实例的启动过程分为3步骤,分别是启动实例、加载数据库、打开数据库。
STARTUP [NOMOUNT | MOUNT | OPEN | FORCE | RESTRICT ] [pfile=filename]



3.数据库实例的关闭(SHUTDOWN)
    
    与打开数据库类似,关闭数据库实例,分为3个步骤,分别是关闭数据库、卸载数据库、关闭数据库实例
SHUTDOWN [normal | transactional | immediate | abort]

详情参考:http://www.cnblogs.com/guohu/p/4253418.html#top

===========================================

4.数据库的几个概念(实例、数据库、数据库服务器)
    实例:一组Oracle后台进程以及在服务器中分配的共享内存区域;
    数据库:是由基于磁盘的数据文件、控制文件、日志文件、参数文件、和归档日志文件等组成的物理文件集合。
    数据库服务器:管理数据库的各种软件工具(sqlplus、OEM等)和实例及数据库三个部分。

======================================================

5.oracle逻辑存储结构
    数据块:是oracle逻辑存储结构中最小的逻辑单位,也是执行数据库输入输出的最小存储单位。oracle数据是存放在"oracl        e数据块"中的,Oracle数据块有一定的标准大小,其大小被写入初始化参数DB_BLOCK_SIZE.

    


    数据区:是由一组连续的数据块所构成的存储结构,数据区是oracle存储分配的最小单位。一个或多个数据区组成段。保存            特定数据类型的数据,也是表中数据增长的单位
    段:当一个段完成之后自动分配一个新的数据区;
    表空间:将相关的逻辑结构(比如段、数据区)组合在一起,表空间是数据库最大的逻辑划分区域,通常用来存放数据表、索引、回滚段等数据对象(Segment),任何数据对象在创建时都必须被指定存储在某个表空间中。一个表空间是由一个或多个数据文件组成,一个数据文件只属于一个表空间。
   

==================================================

6.oracle物理存储结构
    数据文件:用于保存用户应用程序数据和Oracle系统内部数据的文件。
    控制文件:
        控制文件是一个二进制文件,它记录了数据库的物理结构,其中主要包含数据库名、数据文件、与日志文件的名字和位置、数据库建立日期等信息。控制文件一般在ORACLE系统安装的时候或者创建数据库的时候自动创建,控制文件所存放的路径由服务器参数文件spfileorcl.ora的control_files参数值来指定。
        由于控制文件存放有数据文件、日志文件等的相关信息,因此,Oracle实例在启动时必须访问控制文件。如果控制文件正常,实例才能加载并打开数据库;但若控制文件中记录了错误的信息,或者实例无法找到一个可用的控制文件,则实例无法正常启动。
    日志文件:
        日志文件的主要功能是记录对数据所作的修改,对数据库所作的修改几乎都记录在日志文件中。在出现问题时,可以通过日志文件得到原始数据,从而保障不丢失已有操作成果。Oracle的日志文件包括重做日志文件(RedoLogFile)和归档日志文件(ArchiveLogFile),它们是Oracle系统的主要文件之一,尤其是重做日志文件,它是Oracle数据库系统正常运行所不可或缺的。下面将介绍这两种日志文件。

    重做日志文件http://www.cnblogs.com/kerrycode/archive/2012/08/09/2631035.html

    若要了解Oracle系统的日志文件信息,可以通过查阅v$logfile 视图来实现

    select * from v$logfile;

    

    归档日志文件

    可以通过v$database视图来查看当前Oracle系统是否采用归档模式

    

============================================================

7.服务器参数文件

   服务器参数文件SPFILE(Server parameter File)是二进制文件,用来记录了Oracle数据库的基本参数信息(如,数据库名、控制文件所在路径、日志缓冲大小等)。数据库实例在启动之前,Oracle系统首先会读取SPFILE参数文件中设置的这些参数,并根据这些初始化参数来配置和启动实例。比如,设置标准数据块的大小(即参数db_block_size的值)、设置日志缓冲区的大小(即参数log_buffer的值)等等,所以SPFILE参数文件非常重要。服务器参数文件在安装Oracle数据库系统时由系统自动创建,文件的名称为SPFILEsid.ora,sid为所创建的数据库实例名。
      与早期版本的初始化参数文件INITsid.ora不同的是,SPFILE中的参数由Oracle系统自动维护,如果要对某些参数进行修改,则尽可能不要直接对SPFILE进行编辑,最好通过企业管理器(OEM)或ALTER SYSTEM命令来修改,所修改过的参数会自动写到SPFILE中。

  查看服务器参数:1)查询视图v$parameter,可利用该动态性能视图来确定参数的默认值是否被修改过,以及是否可以使用ALTER SYSTEM 和 ALTER SESSION 命令修改。

  

  2)修改服务器参数

    alter system set db_block_size=4096;

 =================================================

8.密码文件、警告文件、跟踪文件

  

原文地址:https://www.cnblogs.com/jycjy/p/6931750.html