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 ...
随机推荐
- 如何设置WIN10任务栏
1.鼠标右键点击任务栏 然后点击锁定任务栏,去掉前面的钩 2.然后鼠标右击任务栏 选择工具栏 点击新建工具栏 3.打开后点击新建文件夹,可以重命名,然后选择刚才新建的文件夹 4.此时任务栏就有了 5. ...
- [linux] Upgrading glibc for the GHOST Vulnerability
1> Test if the problem exists, code: #include <netdb.h> #include <stdio.h> #include & ...
- exception
SQL> -- 例外 exceptionSQL> -- 1/0SQL> ed已写入 file afiedt.buf 1 declare 2 pnum number := 0; ...
- Java命令提示符编译
Java利用命令提示符编译 1:最简单的方式:直接编译 /** 文件路径:G:\测试项目\java\src 文件名称:JacaText.java 编写时间:2016/6/2 作 者:郑晨辉 编写说明: ...
- 20161028__严工笔记本安装Win2003
1.Win2003的PE(不太明白 这里的PE指什么...)不支持 AHCI (会造成 安装的时候 出现 蓝屏) 到 BIOS 里面 把"AHCI"改成"兼容模式(com ...
- Oracle新增客户端网络配置使用scott出现错误
错误一 测试提示用户密码过期 解决方法:使用sys用户登录数据库 sqlplus sys/密码 as sysdba; 修改scott用户密码 alter user scott identifie ...
- 23.APR/Native
Apache Portable Runtime (APR) based Native library for Tomcat Table of Contents Introduction Install ...
- 读javascript高级程序设计06-面向对象之继承
原型链是实现继承的主要方法,通过原型能让一个引用类型继承另一个引用类型. 1.原型链实现继承 function SuperType(){ this.superprop=1; } SuperType.p ...
- PHP基础示例:用PHP+Mysql编写简易新闻管理系统[转]
实现目标:使用php和mysql操作函数实现一个新闻信息的发布.浏览.修改和删除操作 实现步骤: 一.创建数据库和表 1.创建数据库和表:newsdb 2.创建表格:news 字段:新闻id,标题,关 ...
- NetworkComms V3 之支持TCP连接和UDP连接
NetworkComms V3 无缝的支持TCP连接和UDP连接. 您可以很容易的创建这两种连接 //创建一个连接信息对象 ConnectionInfo connInfo = ); //创建一个TCP ...