【ogg三】日常运维篇:清理归档日志,ogg进程注册服务,定期备份数据库
清理归档日志
ogg使用需要开启归档日志,归档日志会随着时间的推移逐渐增多,占满空间,导致应用无法正常运行。
如果归档日志满了会报错
ORA-00257:archiver error解决办法
检查flash recovery area的使用情况
select * from V$FLASH_RECOVERY_AREA_USAGE;
解决办法:使用rman ,采用定时任务,定时清理。
定时任务脚本:
OracleArchLogClear.bat
D:\app\Administrator\product\11.2.0\dbhome_1\BIN\rman target sys/password@orcl cmdfile=D:\tools\OracleArchLogClear.rman log=D:/app/Administrator/product/11.2.0/dbhome_1/log/OracleArchLog/clear%date:~0,4%%date:~5,2%%date:~8,2%.txt
OracleArchLogClear.rman
保留最近7天的
crosscheck archivelog all;
delete expired archivelog all;
DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7';
最后在windows计划认为中配置定时任务,调用OracleArchLogClear.bat.
ogg注册进程后,可以实现进程自动重启
在windows环境下的配置
- 在OGG安装目录下使用“以管理员身份运行”模式打开cmd提示符,执行命令,激活服务。
install addservice
- 配置成功的返回结果:
C:\OGG\product\12.1.2\oggcore_1>install addservice
Service’GGMGR’ created.
Installprogram terminated normally.
- 在Windows服务找到GGMGR,右键选择启动。

- 配置抽取投递和赋值进程随着mgr进程自动启动
注意别忘记了这一点。
- 在源端配置投放和抽取进程随mgr进程启动
--启动mgr进程启动启动extract进程
AUTOSTART EXTRACT *
--当extract进程异常终止时会自动启动,每5分钟尝试重新启动所有的extract进程,一共尝试3次,5分钟清零
AUTORESTART EXTRACT *,RETRIES 3, WAITMINUTES 5, RESETMINUTES 10
- 在目标端配置复制进程随mgr进程启动
--自动启动replicat进程
AUTOSTART REPLICAT *
--当replicat进程异常终止时会自动启动,每5分钟尝试重新启动所有的replicat进程,一共尝试5次
AUTORESTART REPLICAT *, WAITMINUTES 2, RETRIES 5
定时备份数据库
原理很简单,就是用expdp导出和配置windows定时任务。
用记事本编写以下脚本,示例:
@echo off
echo 设置导出文件名和日志文件名
set Today=%DATE%
set Today=%Today:~0,4%%Today:~5,2%%Today:~8,2%
set dmpname=%Today%_exp
set logname=%Today%_exp_log
echo 输出文件名和日志文件名,验证是否正确命名
echo %dmpname%
echo %logfilename%
echo 开始备份数据库
echo 使用EXPDP命令导出DMP文件
expdp user/psw@oracle客户端服务名 schemas=user directory=DATA_BAK_DIR dumpfile=%dmpname%.dmp logfile=%logfilename%.log
具体可参考:https://jingyan.baidu.com/article/cb5d6105a1bc59005d2fe061.html
最后感叹一句:全栈都是啥都可以干!
【ogg三】日常运维篇:清理归档日志,ogg进程注册服务,定期备份数据库的更多相关文章
- 日常运维中的相关日志切割处理方法总结 [Logrotate、python、shell脚本实现 ]
对于Linux系统安全来说,日志文件是极其重要的工具.不知为何,我发现很多运维同学的服务器上都运行着一些诸如每天切分Nginx日志之类的CRON脚本,大家似乎遗忘了Logrotate,争相发明自己的轮 ...
- zookeeper 用法和日常运维
本文以ZooKeeper3.4.3版本的官方指南为基础:http://zookeeper.apache.org/doc/r3.4.3/zookeeperAdmin.html,补充一些作者运维实践中的要 ...
- Jenkins日常运维笔记-重启数据覆盖问题、迁移、基于java代码发版(maven构建)
之前在公司机房部署了一套jenkins环境,现需要迁移至IDC机房服务器上,迁移过程中记录了一些细节:1)jenkins默认的主目录放在当前用户家目录路径下的.jenkins目录中.如jenkins使 ...
- Docker Swarm 日常运维命令笔记
之前介绍了Docker管理工具-Swarm部署记录,这里简单总结下Docker Swarm的日常维护命令,以作为平时运维笔记. Swarm作为一个管理Docker集群的工具,首先需要将其部署起来,可以 ...
- mysql日常运维与参数调优
日常运维 DBA运维工作 日常 导数据,数据修改,表结构变更 加权限,问题处理 其它 数据库选型部署,设计,监控,备份,优化等 日常运维工作: 导数据及注意事项 数据修改及注意事项 表结构变更及注意事 ...
- Flume实战案例运维篇
Flume实战案例运维篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Flume概述 1>.什么是Flume Flume是一个分布式.可靠.高可用的海量日志聚合系统,支 ...
- linux日常运维工作
Linux的使用环境也日趋成熟,各种开源产品络绎不绝,大有百花齐放的盛景,那么当Linux落地企业,回归工作时,我们还要面对这Linux运维方面的诸多问题,今天我们特意组织一场有关Linux 在企业运 ...
- hadoop日常运维与升级总结
日常运维 升级 问题处理方法 日常运维 进程管理 由于配置文件的更改,需要重启生效, 或者是进程自己因某种致命原因终止, 或者发现进程工作出现异常等情况下,需要进行手动进程的关闭或启动, 或者是增删节 ...
- hadoop记录-hadoop集群日常运维命令
hadoop集群日常运维命令 #1.namenode hadoop namenode -format #格式化,慎用 su hdfs hadoop-daemon.sh start namenode h ...
随机推荐
- LODOP的ADD_PRINT_TABLE中不能总计在最后一页显示在tfoot后面
ADD_PRINT_TABLE有计算功能,还会每页显示tfoot和thead里的内容.相关其他博文:如果一个表格既有需要每页显示的tfoot,还有一个总计功能,想显示在最后一页的tfoot后面,是不行 ...
- require.js的基本用法
一.为什么要用require.js? 最早的时候,所有Javascript代码都写在一个文件里面,只要加载这一个文件就够了.后来,代码越来越多,一个文件不够了,必须分成多个文件,依次加载.下面的网页代 ...
- C++STL位标志、智能指针与异常处理
参考<21天学通C++>第25章节,对STL位标志进行介绍.就是当需要不是像char int long 等整个字节数的数据表示形式,而是使用二进制位表示的时候,通常使用这里讲到的位标志.从 ...
- flask 密钥问题
RuntimeError RuntimeError: The session is unavailable because no secret key was set. Set the secret_ ...
- 2019.12.12 Java的多线程&匿名类
Java基础(深入了解概念为主) 匿名类 定义 Java匿名类很像局部或内联系,只是没有明细.我们可以利用匿名类,同时定义并实例化一个类.只有局部类仅被使用一次时才应该这么做. 匿名类不能有显式定义的 ...
- TCP/IP学习笔记7--TCP/IP模型通信例子学习
"一位如蝴蝶般美丽的女子向我飞来,翩翩的舞姿如同云端轻盈的叶儿." -------------------------------------------------------- ...
- Javascript 闭包何时回收?
定义 闭包是函数和声明该函数的词法环境的组合.闭包是指有权访问另一个函数作用域中的变量的函数,创建闭包的最常见的方式就是在一个函数内创建另一个函数,通过另一个函数访问这个函数的局部变量. 范例 fun ...
- Gulp-构建工具 相关内容整理
Gulp- 简介 Automate and enhance your workflow | 用自动化构建工具增强你的工作流程 Gulp 是什么? gulp是前端开发过程中一种基于流的代码构建工具,是自 ...
- C++ 生成随机数总结 & C++ rand 函数使用方法
1. 产生[0,b]之间的随机数 rand()*b / RAND_MAX; 2. 产生[-a,0]之间的随机数 rand()*(-a) / RAND_MAX; 3. 产生[a,b]之间的随机数 a + ...
- PAT(B) 1054 求平均值(Java)
题目链接:1054 求平均值 (20 point(s)) 题目描述 本题的基本要求非常简单:给定 N 个实数,计算它们的平均值.但复杂的是有些输入数据可能是非法的.一个"合法"的输 ...