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.密码文件、警告文件、跟踪文件
oracle 学习day01的更多相关文章
- Oracle学习笔记三 SQL命令
SQL简介 SQL 支持下列类别的命令: 1.数据定义语言(DDL) 2.数据操纵语言(DML) 3.事务控制语言(TCL) 4.数据控制语言(DCL)
- Oracle学习线路
出自huyangg的博客,地址是:oracle学习路线图 1.sql.pl/sql(网上有很多的视频,可以做一个简单的入手,然后看几本书,多做实验) 作为oracle的基本功,需要大家对sql和 ...
- Oracle学习指南
Oracle学习指南 你走的那天,我决定不落泪,迎着风撑着眼帘用力不眨眼 创建数据库.创建用户.创建表空间.创建表.插入数据..... 1.用系统用户登录,任选系统用户 代码: >>sql ...
- Oracle学习系列1-7
Oracle学习系列1 两个服务必须启动: OracleOraDb10g*TNListener 和 OracleService*** 使用sqlplusw先进行环境的设置 set linesize 3 ...
- Oracle学习系列7
Oracle学习系列7 ************************************************************************************ 关联表 ...
- Oracle学习系列6
Oracle学习系列6 ************************************************************************************ 删除约 ...
- Oracle学习系列5
Oracle学习系列5 ************************************************************************************ ,掌握 ...
- Oracle学习系列4
Oracle学习系列4 ************************************************************************************ 数据库 ...
- Oracle学习系列3
Oracle学习系列3 ************************************************************************************ 多表查 ...
随机推荐
- 20135202闫佳歆--week4 两种方式使用同一个系统调用--实验及总结
实验四 使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用 在这里我选择的是第20号系统调用,getpid. 1.使用库函数API: 代码如下: /* getpid.c */ #incl ...
- 第二个Sprint冲刺第三天(燃尽图)
- 完善好的web项目(校园包车)
- 20190215面试-C#操作外设-多线程-shocket
百度了下,ic卡读卡器 文章;C# 读IC卡程序这个文章还不错. 从北京金木雨电子有限公司下载了,兼容IC卡 身份证阅读器的SDK资料,里面有介绍如何连接ic读卡器,对卡进行一些操作. MasterR ...
- 关于java中指针的概念
今天寡人遇到一个问题,扫描非关系数据库中的图(由node和rel组成),将其转化成由寡人自定义的gnode和gedge组成的图. gnode类包含结点的id,label和包含此gnode的gedge的 ...
- WBS功能分解及甘特图
产品 一级子功能 二级子功能 三级子功能 时间(小时) 食物链教学工具 属性面板 功能按键 选择环境 1 自定义生物 2 生物连线与删除 5 显示食物链 1 ...
- Docker(十一)-Docker commit创建镜像
创建镜像有很多方法,用户可以从 Docker Hub 获取已有镜像并更新,也可以利用本地文件系统创建一个. 修改已有的镜像 查看已有的镜像: $ sudo docker images REPOSITO ...
- C++ STL 整理
一.一般介绍 STL(Standard Template Library),即标准模板库,是一个具有工业强度的,高效的C++程序库.它被容纳于C++标准程序库(C++ Standard Library ...
- MT【183】借力打力
(2011安徽省赛)设$f(x)=ax^3+bx+c(a,b,c\in R)$,当$0\le x \le1$时,$0\le f(x)\le1$,求$b$的可能的最大值. 分析:$f(0)=c,f(1) ...
- SSH & Git
SSH基本用法 SSH服务详解 work with git branch some tips for git setup and git config git and github ssh servi ...