Oracle部分参数接触记录
块跟踪
问题背景:
一个业务大库进行迁移后,数据库增量备份变得异常缓慢,甚至一天无法完成,影响业务安全性,提出开启块跟踪加快增备。
开启(如需手动指定,rac需要在asm存储,文件系统可设置为本地)
alter database enable block change tracking using file '+DATA';
或
alter database enable block change tracking;
关闭
alter database disable block change tracking;
查看快跟踪开启
select * from v$block_change_tracking;
相关资料:
关于块跟踪:
块跟踪会记录数据文件里每个块的更新信息,这些跟新信息保存在跟踪文件里,当启动块跟踪后,RMAN使用跟踪文件里的信息,只读取改变的块的信息,而不用对整个数据库进行扫描,从而提高了RMAN备份的性能。
块跟踪默认是禁用的,如果启用了增量备份,建议开启块跟踪,启用块跟踪后,不需要其他的维护的操作。第一个0级的增量备份扫描整个数据库。随后的增量备份使用块跟踪文件的信息,只扫描自上次备份以来被标记为change 的块。
在备份期间,跟踪文件会维护已经标记为change 的块的bitmap 信息。Oracle 会自动管理块跟踪文件的大小,只保留最近最近8次块的变化信息。超过8次,那么最前面的块的bitmap 信息会被覆盖。
注释:
要考虑块跟踪文件的8次限制与备份策略的关系。如果在0级备份之后又进行了7次不同的增量备份,那么这时的块跟踪文件就包含了8个bitmaps信息。如果再进行1级的增量备份,那么此时的增量就不是最优的,还是会扫描整个数据库。因为之前0级的bitmap信息被当前的bitmap 信息覆盖掉了,这样就没有了参考的依据。所以RMAN的备份策略要考虑到这个8次bitmap 的影响。
parallel_force_local
问题背景:
大佬排查数据库性能后,要求开启该参数
参数资料详解:
PARALLEL_FORCE_LOCAL参数指定是否在可以执行并行查询的情况下,是否在本地进行查询。
Oracle默认的行为,当设置参数PARALLEL_FORCE_LOCAL为真时,Oracle解析器将会尝试将“select”和“update/delete/ insert”查询拆分成本地可执行的查询,但是不会将拆分查询发送到其他数据库服务器执行。
这将会强制Oracle在本地服务器上进行查询拆分,而不是在可用的远程服务器上执行。
参数设置
alter system set PARALLEL_FORCE_LOCAL = true;
附加日志
问题背景:
数据同步需要开启附加日志,保证数据正常同步,具体开启级别需要相互确定各
最小附加日志开启:
alter database {add|drop} supplemental log data;
开启表级别的pkukfk附加日志(表级table,数据库级database)
alter table table_name
add supplemental log data(all,primary key,unique,foreign key) columns;
网络相关资料:
Oracle将生成无条件或有条件日志组。对于无条件日志组,日志中将记录该日志组中的所有列;对于有条件日志组,只有日志组中的列有变化时,才会记录日志组中的所有列。
如果指定“ALL”列,日志中将包含所有最大大小固定长度的列。这种日志是系统创建的无条件日志组。
如果指定“PRIMARY KEY”列,只要有更新,组成主键的所有列都会记录在日志中。这种日志是系统创建的无条件日志组。Oracle使用如下顺序确定附加记录哪些列:
*组成主键的列(主键有效,或rely且非DISABLED or INITIALLY DEFERRED状态)
*最小的、至少有一个非空列的唯一索引
*记录所有标量列
如果指定“UNIQUE”列,如果任何组成唯一键或位图索引的列被修改,组成该唯一键或位图索引的其他列都会记录在日志中。这种日志是系统创建的有条件日志组。
如果指定“FOREIGN KEY”列,如果任何组成外键的列被修改,组成该外键的其他列都会记录在日志中。这种日志是系统创建的有条件日志组。
弊端:
第一,附加日志需要消耗一定的系统资源,包括CPU、I/O、内存等,会导致数据库的性能下降。当附加日志中存在大量的语句时,会增加系统的负担,影响数据库的响应时间和吞吐量。
第二,开启附加日志也会增加数据库的存储需求。附加日志中记录了所有的DDL语句和部分DML语句,随着时间的推移,附加日志的容量也会不断增长,导致数据库的存储空间越来越紧张。在这种情况下,需要定期对附加日志进行清理和归档,否则会占用过多的磁盘空间,严重影响数据库的运行。
标签:oralce,数据库,附加,跟踪,备份,Oracle,日志,parallel From: https://blog.51cto.com/u_16082244/6318685