2022-09-25
日志切换会造成数据库卡住吗?
10M环境如下:
1.win 2008 r2+oracle 11.2.0.0,服务器是一台虚拟机
2.因为业务需要,数据库上运行了一个5分钟刷新的物化视图,目前数据量比较大,大约是100w条。
3.近期发现zabbix频繁提示磁盘负载超95%,但是过一会就好。事后我停掉了物化视图就不报错了,所以应该就是物化视图刷新造成的。
4.业务主要包括一个oa(jsp写的)应用,和一个etl接口(大约10分钟一次运行select)
现象如下:
- 业务反馈经常性卡死打不开,查看业务日志,有这个报错:
java.sql.SQLRecoverableException: IO 错误: The Network Adapter could not establish the connection
2.etl接口卡死,有时候啥报错都没有,偶尔也报ORA-12518, TNS:listener could not hand off client connection
-
在数据库服务器上tnsping或者lsnrctl status反应都很慢。
-
重启服务器(shutdown immedieate;startup)后可以恢复。但是过段时间又抽了。
-
listener.log报这个错误
25-9月 -2022 18:55:11 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=JDBC Thin Client)(HOST=__jdbc__)(USER=APP$))) * (ADDRESS=(PROTOCOL=tcp)(HOST=1.1.1.1)(PORT=55230)) * establish * orcl * 12560
TNS-12560: TNS: 协议适配器错误
TNS-00530: 协议适配器错误
64-bit Windows Error: 53: Unknown error
TNS-12518: TNS: 监听程序无法分发客户机连接
TNS-12571: TNS: 包写入程序失败
TNS-12560: TNS: 协议适配器错误
TNS-00530: 协议适配器错误
64-bit Windows Error: 54: Unknown error
- alert_orcl.log报这个:
Sun Sep 25 20:16:37 2022
Shutting down archive processes
ARCH shutting down
ARC4: Archival stopped
Thread 1 cannot allocate new log, sequence 2169395
Checkpoint not complete
Current log# 1 seq# 2169394 mem# 0: C:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO01.LOG
Archived Log entry 2193186 added for thread 1 sequence 2169393 ID 0x59a7be8c dest 1:
Thread 1 advanced to log sequence 2169395 (LGWR switch)
Current log# 2 seq# 2169395 mem# 0: C:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO02.LOG
Sun Sep 25 20:16:40 2022
Archived Log entry 2193187 added for thread 1 sequence 2169394 ID 0x59a7be8c dest 1:
Thread 1 cannot allocate new log, sequence 2169396
Checkpoint not complete
Current log# 2 seq# 2169395 mem# 0: C:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO02.LOG
Thread 1 advanced to log sequence 2169396 (LGWR switch)
Current log# 3 seq# 2169396 mem# 0: C:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO03.LOG
我自己查了一些资料,猜测如下(但是不太确定,请各位指点)
- 由于有5分钟100w条左右的写入,造成磁盘负载较高,从zabbix的报警就可以看到
- 由于磁盘负载高,造成日志切换失败,从而数据库卡死
- Oracle卡死,也就产生了前述的
ORA-12518, TNS:listener could not hand off client connection和java.sql.SQLRecoverableException: IO 错误: The Network Adapter could not establish the connection错误
不知道我这个理解是否正确?目前,我已经把物化视图停掉了,至少目前zabbix不再报警了,数据库我还需要观察,也请大家多指教,谢谢!
我来答
添加附件
收藏
分享
问题补充
6条回答
默认
最新
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
墨值悬赏

评论

