Oracle 复习大纲及样题 2024
(一)数据库概念
数据库(DB)是“按照数据结构来组织、存储和管理数据的仓库”。是一个长期存储在计算机内的、有组织的、有共享的、统一管理的数据集合。
数据库管理系统(DBMS)是指数据库系统中对数据进行管理的软件系统,是数据库系统的核心组成部分。包括对数据库的定义、查询、更新及各种控制,都是通过DBMS进行的。
数据库系统(DBS)是实现有组织地、动态地存储大量关联数据、方便多用户访问的计算机软件、硬件和数据资源组成的系统,是采用数据库技术的计算机系统。
数据库系统组成 :数据库;硬件; 软件; 数据库管理员 关系数据库E-R模型和设计范式理论 E-R模型:实体,属性,联系
F-范式:第一范式:属性唯一,第二范式:不存在部分函数依赖,第三范式:不存在传递函数依赖。
(二)Oracle11g体系结构
Oracle服务器包括Oracle实例和Oracle数据库。
实例:一组Oracle后台进程以及在服务器中分配的共享内存区域 。
数据库:存储在磁盘上的数据文件、控制文件、日志文件、参数文件、归档日志文件等组成的物理文件集合 。 实例用于管理控制数据库;数据库为实例提供数据。一个数据库可以被多个实例装载和打开;一个实例在生存期内只能装载和打开一个数据库。 用户操作数据库的过程实质上是与数据库实例建立连接,然后通过实例来连接、操作数据库的过程。
物理存储结构是指从物理角度分析Oracle数据库创建后所使用的一系列操作系统文件:
数据文件:用于存储数据库中的所有数据;
控制文件:用于记录和描述数据库的物理存储结构信息;
重做日志文件:用于记录外部程序(用户)对数据库的改变操作; 归档文件:用于保存已经写满的重做日志文件;
初始化参数文件:用于设置数据库启动时的参数初始值;
跟踪文件:用于记录用户进程、数据库后台进程等的运行情况;
口令文件:用于保存具有SYSDBA,SYSOPER权限的用户名和SYS用户口令; 警告文件:用于记录数据库的重要活动以及发生的错误; 备份文件:用于存放数据库备份所产生的文件。
逻辑存储结构(表空间-段-区-块、最小的I/O单位、最小的分配回收单位、段的类型、最大的逻辑存储结构、系统表空间)
内存结构(SGA、PGA、SGA包含的内存结构及其作用)
进程结构(用户进程、服务器进程、后台进程及各种进程的作用)
(三)Oracle数据库的安装与配置
Oracle安装卸载(注意默认用户和安装后的服务) 常见工具使用(DBCA、netca、netmgr、sqlplus) 启动startup数据库步骤
1创建并启动实例 / 2装载数据库 /3打开数据库 Startup NOMOUNT/ MOUNT/ OPEN
NOMOUNT 创建并启动数据库实例,对应数据库启动的第一个步骤 MOUNT 启动实例并装载数据库,对应数据库启动的第二个步骤
OPEN 启动实例、装载并打开数据库,对应数据库启动的第三个步骤 关闭shutdown数据库步骤
1关闭数据库 /2卸载数据库 /3关闭实例
SHUTDOWN NORMAL /TRANSACTION / IMMEDIATE / ABORT
(四) SQL*Plus命令
连接命令:sqlplus/exit/quit/conn/disc 编辑命令:
显示缓冲区l/编辑缓冲区 a c del n input edit/执行缓冲区run/清除缓冲区clear buffer 文件操作命令:save/get/@/ed/spool 交互命令: &/&&/define/accept/var 显示与设置环境变量: show/set 格式化命令: col/btitle/ttitle/break
(五)SQL语言基础及调优
简单查询 select ..from..where
select ..from..where..group by …having ..order by每个子句熟练使用
函数使用 聚合函数、数值函数、字符函数、时间函数、转换函数(注意dual表) 复杂查询 连接查询(内连接包括等值连接、自身连接和非等值连接、外连接包括左外连接、右外连接和全外连接) 子查询(相关子查询和不相关子查询 注意exits的用法)集合查询(intersect union minus) DML insert update delete
事务 commit rollback savepoint
(六)PL/SQL编程
PL/SQL块结构(声明部分,执行部分,异常处理部分)
基本数据类型、特殊数据类型的定义(%type,%rowtype,record),变量常量的赋值方法 PLSQL中的SQL语句(select ..into.. ,update/insert/delete..returning.. into..) 控制结构(if ,case ,loop ,while, for)
游标的属性(%ISOPEN/%FOUND/%NOTFOUND/%ROWCOUNT),显式游标(定义、打开、读取、关闭)、隐式游标 异常处理
(七)过程、函数、触发器和包
存储过程、函数、触发器和程序包的概念 存储过程创建修改删除及调用 函数创建修改删除及调用 各类触发器的创建修改执行 包头包体创建、调用
(八)数据表对象
create table创建表两种方式 一种通过列定义创建 一种通过子查询创建 常见的数据类型 数字、字符、时间
约束的定义 primary key\\foreign key\\not null\\default\\check\%unique 修改表修改约束的语法 (九)视图、索引、序列、同义词
视图的含义、作用、创建、修改、删除
索引的含义、作用、分类、创建、删除和使用原则 序列的含义、创建、修改、删除和使用
(十)管理表空间和数据文件
表空间创建、调整与撤销
创建撤销表空间、创建临时表空间、创建大文件表空间及维护
(十三)用户管理和权限分配 用户账号权限角色概念
用户账号创建修改删除(create/alter/drop user)
系统权限及对象权限,掌握用户权限的授予及回收(grant…to…/revoke…from…)
掌握新角色的创建、修改、使用及删除(create/alter/drop role) 资源配置文件PROFILE (十四)数据导入和导出
数据库物理备份和逻辑备份
EXPDP数据表、模式、表空间和全库的导出备份方法 IMPDP数据表、模式、表空间和全库的导入还原方法 EXP、IMP逻辑备份及还原操作
(十五) 闪回技术与系统调优 闪回查询操作 闪回数据库 闪回表 闪回丢弃