DBA数据库管理必备认证:OCP 19C(最新版)
被踢了-来吧,IT人:合集| 超级详细的安装步骤
1、数据库启动使用身份登录数据库启动命令:【启动选项】
数据库启动分为三个阶段:
2.关闭数据库
以身份登录关闭数据库命令:【启动选项】数据库关闭分为三个阶段:
:提供数据库访问,默认端口1521
为了让客户端用户连接到实例,开始监听
1. 开始监视 开始(START)监视是用户在操作系统下执行的命令。 可以直接在后面添加参数,也可以在命令提示符后进行操作。
2.关闭监听
注意:先启动监听,再启动数据库。
1、创建表空间
参数说明: 表空间名称:指定组成表空间的一个或多个数据文件。 当有多个数据文件时,用逗号分隔:数据文件在表空间中的路径和名称 SIZE:指定文件的大小,用K指定千字节大小,用M指定兆字节大小:用于启用或禁用数据文件的自动扩展
例子:
2.表空间管理 (1)调整表空间的大小。 当表空间已满时,可以通过ALTER语句调整表空间的大小。方法一:更改数据文件的大小并指定数据文件的存储路径。 使用关键字指定调整后的表空间的大小。
方法二:向表空间添加数据文件。向表空间添加新的数据文件
(2)改变表空间的读写状态。
DROP 表空间名称 [ ] ; 这是可选的。 如果删除了仍然包含数据的表空间,则需要添加此选项。
1.创建用户
例子:
2、更改用户的密码 ALTER USER BY ;
3. 删除用户。 可以使用 DROP USER 命令删除用户。 当用户拥有架构对象时,无法删除该用户。 相反,必须使用选项来删除用户和用户模式对象。
DROP USER 用户名;
创建用户前的准备工作:
1) 选择用户名和密码
2)确定用户需要用来存储对象的表空间
3)确定每个表空间的配额
4)分配默认表空间和临时表空间
5)创建用户
6) 为用户授予权限和角色
1.系统权限
系统权限是指对数据库执行某些系统级操作,或者对某些类型的对象执行某些操作的权限。
常用的系统权限如下: :连接数据库 TABLE:创建表 VIEW:创建视图:创建序列
2. 对象权限 对象权限是指对特定模式对象执行操作的权限。 只能为模式对象设置管理对象权限,包括:表、视图、序列、存储过程等。
数据用户有两种方式获取权限:
(1)直接给用户授予权限
(2) 为角色授予权限,然后将角色授予一个或多个用户。 使用角色可以更加方便、高效地管理权限,因此数据库管理员通常使用角色来向用户授予权限,而不是直接向用户授予权限。
常用的系统预定义角色如下:
(1):有连接数据库的权限
(2):有创建表、触发器、过程等的权限。
(3)DBA:数据库管理员角色,具有管理数据库的最高权限
3、新创建的用户必须被授予一定的权限才能执行相关的数据库操作。
授权是通过GRANT语句,取消授权是通过该语句。 授予权限的语法如下:
授予权限 | 角色 TO 用户名;
撤销权限的语法如下: 权限 | 角色来自用户名;
:提交事务,即将事务中对数据库的修改永久保存。 :回滚事务,即取消对数据库所做的任何修改。 自动提交:设置为开。 关闭自动提交:关闭。
索引是一个对象,是与表关联的可选结构,它提供了一种快速访问数据并提高数据库检索性能的方法。 索引使数据库程序能够找到所需的数据,而无需扫描整个表。 就像书籍的目录一样,您可以使用目录快速查找所需的信息,而无需阅读整本书。
1、指数特点
适当使用索引可以提高查询速度。 您可以为表的一列或多列建立索引。 索引的数量没有限制。 索引需要磁盘存储。 您可以指定表空间。 该索引是自动维护的并且对用户透明。 检索期间是否使用索引由您决定。
数据库管理系统在访问数据时使用以下三种方法:
当没有索引或者不选择使用索引时,使用全表扫描。
2、指标分类
(1)创建普通索引(B树索引)
参数解释::创建的索引名称
:创建索引的表的名称:创建索引的列名列表。 索引可以基于多列创建,用逗号分隔:指定索引的表空间
(2) 创建唯一索引,确保定义索引的列中没有两行有重复值。 唯一索引中的索引键只能指向表中的一行。
(3) 创建反向键索引。 与常规 B 树索引相反,反向键索引会反转索引列的字节,同时保持列顺序。 倒排键索引通过倒排索引键的数据值,将索引修改均匀分布在整个索引树上。 主要用于多个实例同时访问数据库的场景。
(4) 创建位图索引
优点:与B树索引相比,基于位图索引列的查询可以减少响应时间。 与其他索引技术相比,位图索引占用的空间要少得多。
(五)其他指标
复合索引:在表中的多个列上创建。 索引中的列不必与表中的列的顺序相同,也不必彼此相邻。
基于函数的索引:需要创建的索引需要使用表中一列或多列的函数或表达式。 基于函数的索引也可以创建为 B 树索引或位图索引。
3. 创建索引的原则
经常搜索的列可以作为索引列进行频繁排序,分组列可以作为索引。 经常用于连接的列(主键/外键)可以用作索引。 将索引放置在单独的表空间中,并且不要将其放置在回滚段中。 对于大型索引、临时段和表空间,请考虑使用该子句创建大型索引。
根据业务数据出现的频率定期重新生成或重组索引并进行碎片整理
4.查看索引
与索引相关的数据字典::用户创建的索引信息:与索引相关的表列信息
5. 维护索引
(1)重建索引
需要维护索引。 如果索引表中有大量的删除和插入操作,索引就会很大,因为删除操作后,被删除值的索引空间无法自动重用。 对于大表和频繁的DML操作,表和索引的维护非常重要。
提供了重建索引的说明。 允许索引空间重用已删除值占用的空间,使索引更加紧凑。
(2) 合并索引碎片 合并索引碎片可以释放部分磁盘空间。 它是索引维护的重要方式,也是维护磁盘空间的方式。 它类似于磁盘碎片整理,释放未使用的空间以供重复使用。
(3) 重命名索引
(4)删除索引
视图是一种不占用物理空间的虚拟表,因为视图本身的定义语句存储在数据字典中,而视图中的数据是从一个或多个实际表中获取的。 用于生成视图的表称为视图的基表。 一个视图也可以从另一个视图生成。
1.视图的优点: 1)提供另一个级别的表安全性
2)隐藏的数据复杂性:视图可以使用多表连接来定义,但用户不需要知道多表连接的语句来查询数据。
3)简化用户SQL命令:查询视图时,不需要编写复杂的查询语句,只需要查询视图名称。
4)隔离基表结构的变化:视图创建后,如果修改表结构,不会影响视图。
5)通过重命名列,提供另一个角度的数据:例如,在销售系统中,每天下班前必须汇总当天的数据。 在销售人员眼里,汇总表就成了每天的销售统计表。 在财务人眼里,销售报表变成了销售日报
2. 创建视图
参数解释:
OR :如果视图已存在,此选项将重新创建视图。
FORCE:如果使用该关键字,则无论基表是否存在,都会创建视图。
:这是默认值,如果使用该关键字,则只有基表存在时才会创建视图。
:要创建的视图的名称 别名:指定视图的查询所选择的列的表达式或别名。 别名的数量必须与视图选择的表达式的数量相匹配。
:语句WITH CHECK:此选项指定仅可以插入或更新视图可访问的行。
该术语表示分配给 CHECK 约束的名称。
WITH READ ONLY:此选项保证不能对此视图执行任何修改操作。
3.DML语句和复杂视图
DML 语句是指用于修改数据的 、 和 语句。 由于视图是虚拟表,因此这些语句也可以与视图一起使用。 一般情况下,不通过视图修改数据,而是直接修改基表,因为这样规则更清晰。
在视图(相对于表)上使用 DML 语句有以下限制。
1)DML语句只能修改视图中的一张基表。
2)如果记录的修改违反了基表的约束,视图将不会被更新。
3)如果创建的视图包含连接运算符、运算符、集合运算符、聚合函数和子句,则视图不会更新。
4) 如果创建的视图包含伪列表达式,则视图不会被更新。 简单视图基于单个基表,不包含函数和分组函数。 然后就可以在该视图中进行、、、等操作。 这些操作实际上是在基表中插入、更新和删除行。
复杂视图从多个表中提取数据并包含功能分组功能。 复杂的视图不一定能够执行DML操作。
4.查询视图来自;
5、删除视图下拉视图;
6、物化视图的含义:是一种具有物理存储的特殊视图,占用物理空间,就像表一样,是远程数据的本地副本,或者用来根据数据表的总和生成汇总表。
物化视图中两个重要的概念:查询重写和物化视图同步
(1)查询重写:重写sql语句。 当用户使用sql语句查询基表时,如果已经建立了基于这些表的物化视图,则会自动计算并使用该物化视图来完成查询。 在某些情况下,可以节省查询时间并减少系统 I/O。 将此查询优化技术称为查询重写。 参数D决定是否使用重写查询,为类型。 创建物化视图时,需要启用查询重写功能。 该参数的值可以通过SHOW指令查看。
(2)物化视图的同步:物化视图是基于表创建的,因此当基表发生变化时,需要同步数据来更新物化视图中的数据,从而保持物化视图中数据之间的数据一致性和基表。 物化视图提供了两种刷新方法来决定何时刷新,即ON模式和ON模式。
ON模式:表示在提交基表的DML操作事务的同时刷新物化视图。
ON模式:表示物化视图在用户需要时更新。 可以通过手动刷新。 等方法,也可以通过JOB定期刷新。
选择刷新方式后,还需要选择刷新类型。 刷新类型指定刷新时基表和物化视图之间如何同步数据。 提供了以下四种刷新类型。
:对整个物化视图执行完全刷新。 FAST:使用增量刷新,并且仅刷新自上次刷新以来的修改。 FORCE:刷新时判断是否可以进行快速刷新。 如果是,将使用FAST方法,否则将使用FAST方法。 NEVER:物化视图不执行任何刷新。 默认值为强制刷新类型。
创建物化视图(1)授予创建物化视图的权限、QUERY权限、创建物化视图涉及的表的访问权限、创建表权限。 SCOTT用户演示
(2)创建物化视图日志
(3)创建物化视图语句
其中: bulid:该参数的含义是立即创建物化视图。 您还可以选择构建。 该参数表示物化视图设置后不会立即执行,而是延迟使用视图时再次创建。
fast:刷新数据类型选择FAST类型。
ON:基表更新时,提交后立即更新物化视图。
QUERY:启动查询重写功能。 创建物化视图时显式启用查询重写。
As:定义如下查询语句。
查询体:物化视图的查询内容。 SQL语句的查询结果集输出到物化视图并存储在自动创建的表中。
(4)删除物化视图
下拉视图;
序列用于生成唯一的、连续的整数数据库对象。 序列通常用于自动生成主键或唯一键值。 序列可以按升序或降序排序。
1. 创建序列
参数解释:
2. 访问序列创建序列后,可以通过和伪列访问序列的值。 您可以从伪列中选择值。 但他们的价值观是无法被操纵的。
:创建序列后第一次使用时,将返回序列的初始值。 在后续引用中,BY 子句的值用于增加序列值并返回该新值。 :返回序列的当前值,即最后一次引用时返回的值
示例:创建一个序列
创建表
插入数据
查看数据
查看序列的当前值
返回序列的当前值,即最后一次引用时返回的值
测试
重启实例后发现再次写入数据是从40开始的,因为根据创建序列的要求,每次会放入30个序列号到缓存中。 实例重启后,缓存中的序列将会消失。
3、改变序列 Alter命令用于修改序列的定义。 如果执行以下操作,序列将被修改。设置或删除或修改增量值。 修改缓存中的序列号数量。 您无法修改序列的 START WITH 参数。
4.删除序列
同义词是对象的别名,不占用任何实际存储空间。 它只在数据字典中保存其定义描述。 当使用同义词时,它将被翻译成相应对象的名称。
1。目的:
创建数据库链接的语法:LINK 数据库链接名称 TO 用户名 BY 密码 USING '链接字符串';
2. 同义词的分类
(1) 私有同义词 私有同义词只能被当前模式下的用户访问,并且私有同义词的名称不能与当前模式的对象名称相同。 要在自己的架构中创建私有同义词,用户必须具有系统权限。 要在其他用户模式下创建私有同义词,用户必须具有any 系统权限。
语法:
CREATE [OR REPLACE] SYNONYM [schema.]synonym_name FOR [schema.]object_name ;
参数解释:
(2) 共享同义词 公共同义词可供所有数据库访问。 公共同义词可以隐藏基表的身份,降低SQL语句的复杂度。 要创建公共公共同义词,用户必须具有系统权限。 语法:
CREATE [OR REPLACE] PUBLIC SYNONYM [schema.]synonym_name FOR [schema.]object_name ;
(3)删除同义词
DROP [PUBLIC] SYNONYM [schema.]synonym_name;
1、含义:允许将一个表的所有行分成几部分,存放在不同的表空间中。 每个划分的部分成为一个分区,分区表成为分区表。
分区对于包含大量数据的表很有用。 优点包括:
1)提高表的查询性能。 表分区后,用户在执行SQL查询时只能访问表中的特定分区,而不能访问整个表。
2)表格更容易管理。 由于分区表的数据存储在多个部分中,因此按分区加载和删除数据比在表内加载和删除数据更容易。
3)方便备份和恢复。 每个分区都可以独立备份和恢复。
4)提高数据安全性。 将不同的分区分布在不同的磁盘上可以减少所有分区中数据同时损坏的可能性。