ups机制下停电提前关闭oracle数据库
思路:在一个受ups保护的机器A1上写脚本,几分钟(如半分钟)ping不在ups保护的机器B,如果几次(如5次)ping不同,这时我们认为将要停电,此时脚本执行正常关闭受ups保护的机器上数据库的命令。注意,1-要保证在有电时A1和B的连通性,2-停电来电后,最好先开启B机器,然后开启其他机器。
check_ping.sh
#!/bin/bash #检测主机
Server=172.18.88.11 #ping不通时临时结果保存位置
Ping_Result=/root/ping_result.tmp #检测日志
LOG=/root/ping.log #连续检测不通次数
CheckNum= #检查间隔时间
CheckInterval=30s #当前已连续检测不通次数
Count= while true
do
ping -w $Server > $Ping_Result
[ `grep 'time=' $Ping_Result|wc -l` -ge ]
Result=$? if [ $Result -eq ]
then
Count=
echo >> $LOG
echo `date +%Y-%m-%d_%H:%M:%S` 'check OK'>> $LOG
echo >> $LOG
else
((Count=$Count+)) echo >> $LOG
echo `date +%Y-%m-%d_%H:%M:%S` 'ping error' >> $LOG
echo 'ping result:'>> $LOG
echo ' consecutive '$Count' times' >> $LOG
echo ' 连续第' $Count '次未ping通' >> $LOG
echo 'ping detail:' >> $LOG
cat $Ping_Result |xargs -i echo ' '{} >> $LOG
echo >> $LOG if [ $Count -eq $CheckNum ]
then
echo 'shutdown oracle ...' >> $LOG
su - oracle -c '/home/oracle/stop.sh' >> $LOG
echo 'shutdown oracle complete' >> $LOG
echo >> $LOG
echo >> $LOG Count=
fi
fi sleep $CheckInterval
done
stop.sh
#!/bin/sh lsnrctl stop sqlplus /nolog <<EOF
connect / as sysdba
shutdown abort
exit
exit echo "oracle stop"
ups机制下停电提前关闭oracle数据库的更多相关文章
- 转载“启动\关闭Oracle数据库的多种方法”--来自百度#Oracle
启动\关闭Oracle数据库的多种方法 启动和关闭oracle有很多种方法. 这里只给出3种方法: l Sql*plus l OEM控制台 l Wind ...
- Linux平台下使用rman进行oracle数据库迁移
实验目的:将oracle数据库从一台机器迁移到另外的一台机器(同为linux平台),设置为不同的路径,不同的实例名 源端: ORACLE_BASE=/u01/app/oracle ORACLE ...
- Oracle使用——Linux系统下使用命令实现oracle数据库数据导入
背景 在工作当中,数据库的备份及数据导入是必不可少的操作,在完全无界面的Linux操作系统中,我们应该怎样实现oracle数据库的导入呢 前提 服务器已配置ftp 模拟环境 一台linux应用服务器上 ...
- Windows 7下通过Excel2007连接Oracle数据库并对表查询
http://blog.csdn.net/pan_tian/article/details/8133668 1. 环境变量的设置 1.1 ORACLE_HOME环境变量的设置,我这里指向了我的Ora ...
- 在不重装系统的情况下撤底删除oracle数据库及oralce的相关软件
先从控制面板删除oracle的相关应用及数据库, 删除系统变量 ORACLE_OEM_CLASSPATH=%JAVA_HOME%\lib\ext\access-bridge-64.jar;%JAVA_ ...
- windows 10 下使用Navicat for oracle 数据库还原
一.前期准备 1.安装windows 10系统 2.安装oracle 11g 数据库 3.安装PLsql(也不需要) 4.安装sqlplus(这个必须有) 5.使用下面这个东西新建数据库(不懂创建的话 ...
- Lunx下 怎样启动和关闭oracle数据库
1.因为oracle运行在Linux系统下,首先,要连接Linux系统 2.切换到oracle安装用户下. 我的是 ora12. 3.运行oracle的环境变量, 以便输入相关命令. 4.进入orac ...
- [转]关闭ORACLE数据库
SQL> shutdown immediateORA-24324: 未初始化服务句柄ORA-24323: 不允许此值ORA-01090: 正在关闭 - 不允许连接 SQL> shutdow ...
- 手动开启/关闭Oracle数据库
@echo off@echo 启动/关闭数据库set /p flag=您是否要启动数据库?(是按Y启动,否按N关闭) goto answer%flag% goto end :answery echo ...
随机推荐
- iOS - iOS 适配
前言 什么是适配: 适应.兼容各种不同的情况. iOS 开发中,适配的常见种类: 1)系统适配, 针对不同版本的操作系统进行适配. 2)屏幕适配,针对不同大小的屏幕尺寸进行适配. iPhone 的尺寸 ...
- php总结 --- 2.字符串
字符串 恩聪 正则表达式 恩聪 中文验证 if (preg_match("/[\x{4e00}-\x{9fa5}]{2,4}\s{0,}\w{8,15}/u", $keyword) ...
- JQuery_简单选择器
jQuery 最核心的组成部分就是:选择器引擎.它继承了 CSS 的语法,可以对 DOM 元素的标签名.属性名.状态等进行快速准确的选择,并且不必担心浏览器的兼容性. jQuery选择器实现了 CSS ...
- 通过java输出当前系统时间
获取当前系统时间和日期并格式化输出: import java.util.Date; import java.text.SimpleDateFormat; public class NowString ...
- PetShop的系统架构设计
<解剖PetShop>系列 一.PetShop的系统架构设计 http://www.cnblogs.com/wayfarer/archive/2007/03/23/375382.html ...
- Linux平台下快速搭建FTP服务器
FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为"文传协议".用于Internet上的控制文件的双向传输.同时,它也是一个应用程序 ...
- CentOS7下ifconfig command not found
执行命令 yum install net-tools
- JDE Client开发端 左侧边栏设置
- F2工作流引擎模型
工作流引擎(Workflow Engine ) [编辑] 工作流引擎概述 工作流引擎是指workflow(工作流)作为应用系统的一部分,并为之提供对各应用系统有决定作用的根据角色.分工和条件的不同决定 ...
- 把DataTable中的数据拼接成XML时遇到的问题
错误信息:System.Web.Services.Protocols.SoapException: System.Web.Services.Protocols.SoapException: Serve ...