归档日志大小造成程序报错
一、现象
二、临时解决方式
搜了一圈有的说归档日志写满,需要删除归档日志。有的说闪回日志写满,关闭闪存日志。想想从来没设置过归档日志大小,因此
首先查看归档日志设定的大小。
1 | show parameter db_recovery_file_dest; |
结果显示db_recovery_file_dest_size big integer很小很小,可能就是这个问题了,先删删归档日志吧,删除后数据库可以正常使用。删除方式如下:
归档日志删除方式:https://blog.csdn.net/ctypyb2002/article/details/78241947(归档日志是oracle灾难恢复的必要数据,不要全部删除)
归档日志太小了,即使删除也只会临时解决以恢复数据库正常运行,将归档日志使用空间大小调大,根据磁盘大小适当调节,命令如下:
1 2 | alter system set db_recovery_file_dest_size=214748364800; 这里调成200g(200*1024*1024*1024) |
三、永久解决方式
仔细想想即使扩容到200g也总会满的,只是时间问题而已,搜了一些文档归档日志无法设置自动删除,只能靠系统来帮助解决了,主要步骤如下:
1.创建一个删除归档日志的脚本,linux系统参考如下两个地址:
https://blog.csdn.net/javaee_ssh/article/details/36906413
https://blog.csdn.net/jaune161/article/details/50453868
windows系统参考如下地址:
https://blog.csdn.net/killvoon/article/details/49023335
http://blog.itpub.net/8196567/viewspace-1118670/
2.linux中赋予执行权限,windows改成可执行文件。
3.添加到定时任务中。
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步