DBLOG
» WTF
Toggle navigation
DBLOG
主页
1、用户
2、各种方案
3、备份恢复
4、表空间相关
5、OGG
6、文件管理
7、常见故障分析
8、DG
9、集群相关
About Me
归档
标签
分类 - 7、常见故障分析
2025-08-29 00:10:06
4
0
0
参数b -- 停止备库日志应用进程ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;-- 检查主库的归档日志状态SELECT DEST_NAME, STATUS, ERROR FROM V$ARCHIVE_DEST_STATUS WHERE DEST_NAME='LOG_ARCHIVE_DEST_2';-- 检查备库上的 MRP 进程状态SELECT PROCESS, STATUS, THREAD#, SEQUENCE#, BLOCK#, BLOCKS FROM V$MANAGED_STANDBY;-- 检查备库的归档日志应用状
1、redo问题调整
2025-08-29 00:10:06
2
0
0
故障定义 系统平时运行平稳,在忙时相同sql语句在运行速度很慢,redo Log Switch切换很慢, Oracle数据库性能明显下降,导致数据库压力过大。 预判指标 用户在Buffer Cache中修改数据时,Oracle并不会立即将修改数据写出到数据文件上,因为那样做效率会很低,到目前为止,计算机系统中最繁忙的部分是磁盘的 I/O操作,Oracle这样做的目的是为了减少IO的次数,当修改过的数据达到一定数量之后,可以进行高效地批量写出。Redo Log File也是循环使用的,当一个日志文件写满之后,会切换到另外一个日
2、oracle阻塞问题
2025-08-29 00:10:06
4
0
0
故障定义 一个会话持有某个资源的锁,而另一个会话在请求这个资源,就会出现阻塞(blocking)。也就是说新的会话会被挂起,直到持有锁的会话放弃锁定的资源。大多数情况下,在一个交互式应用中被严重阻塞,即可表明应用逻辑有问题,这才是阻塞的根源。数据库中有5条常见的DML语句可能会阻塞,即:INSERT、UPDATE、DELETE、MERGE 和SELECT FOR UPDATE。 预判指标 1. 唯一性约束引起的阻塞: 该阻塞主要是由于有一个带主键的表,或者表上有惟一的约束,在两个会话试图用同样的值插入一行时引发阻塞。多表通过引用完整性约束相互链接时,在其
3、内存占用过高,缓存不释放
2025-08-29 00:10:06
1
0
0
故障定义 系统平稳运行过程中,oracle数据库服务器内存占用随时间增量较大并且Oracle出现登录数据库不成功现象,甚至导致宕机,服务器重启或者内存清理以后持续一段时间后(再次占满。 预判指标 Oracle服务器上buff/cache占用过高,并且不能自动清理缓存。 预判处理 设定Linux内存参数,始终留出一块空间,以避免缓存不释放导致宕机。 使用root用户备份/etc/sy
4、adg常见故障
2025-08-29 00:10:06
2
0
0
日志传输故障: 故障现象:主数据库的归档日志没有传输到备库。 处理过程: 检查主数据库的归档模式是否开启。 检查网络连接是否正常。 检查备库的 tnsnames.ora 和 listener.ora 配置是否正确。 检查备库的 standby_archive_dest 参数设置是否正确。 检查备库的 log_archive_dest_2 参数设置是否正确。 使用 ALTER SYSTEM ARCHIVE LOG CURRENT; 命令手动归档日志。 日志应用故障: 故障现象:备库无法应用接收到的归档日志。 处理过程: 检查备库的 standby_archive_dest 目录下是否
5、ORA-01555 "snapshot too old"快照过久
2025-08-29 00:10:06
1
0
0
SQL 语句执行时间过长:由于 SQL 语句执行时间过长,或者 undo 表空间过小,或者事务量过大,或者过于频繁的提交,导致执行 SQL 过程中进行一致性读时,SQL 执行后修改的前镜像(即 UNDO 数据)在 UNDO 表空间中已经被覆盖,不能构造一致性读块(CR blocks)。 延迟块清除问题:SQL 语句执行过程中,访问到的块在进行延迟块清除时,不能确定该块的事务提交时间与 SQL 执行开始时间的先后次序。 解决办法 增加 UNDO 表空间大小: 通过增加 UNDO 表空间的大小,可以减少 UNDO 数据被覆盖的可能性。 alter tablespace u
6、ADG常见故障
2025-08-29 00:10:06
2
0
0
ORA-16724: cannot resolve gap for one or more members ORA-16661: the standby database needs to be reinstated ORA-01157 ORA-01111 静默删除实例 TNS-12518、TNS-00517和 Linux Error:32:Broken pipe 主库修改sys密码问题 Failover过程模拟(需要开启Flashback) ORA-16724: cannot resolve gap for one or more members 归档日志有断档
dg中归档缺失
2025-08-29 00:10:06
3
0
0
如果Oracle Data Guard环境中的备库(Standby Database)发现归档日志缺失,可以通过以下步骤来同步备库和主库,确保两者一致: 1. 确认归档日志缺失 首先,确认哪些归档日志缺失。可以使用以下SQL查询来检查备库上的归档日志间隙: SELECT THREAD#, LOW_SEQUENCE#, HIGH_SEQUENCE# FROM V$ARCHIVE_GAP; 2. 从主库复制缺失的归档日志 从主库复制缺失的归档日志到备库。可以使用以下步骤: 在主库上找到缺失的归档日志文件: SELECT NAME FROM V$ARC