数据库定时导出和互备一例

环境:内网中有三台服务器做测试用,两台SUSE LINUX 10 和一台RHEL 5.5,都安装有ORACLE11G

需求:测试环境搭建完毕,因没有外部存储进行统一备份而修改和更新又比较频繁,所以需要在三台服务器间搭建互备以实现数据的安全。

实现:

1、首先在三台服务器间设置互信访问(互信访问跟帐户是结合的),实现SSH无密码访问
(参见http://xjsunjie.blog.51cto.com/999372/605365

2、在每台机器上用ORACLE帐户做EXP的数据导出,利用crontab设置root帐户的定时拷贝。
oracle@linux-250:/data/orabak> cat exp250.sh
source ~/.profile
a=$(date +%Y%m%d)
exp "'sys/password  as sysdba'" owner=nmsdb,nsmsengine01,nms1,nms2 statistics=none file=/data/orabak/250bak/exp250_$a.dmp log=/data/orabak/250log/exp250_$a.log
 

oracle@linux-250:/data/orabak> crontab -l
0 1 * * * /data/orabak/exp250.sh
注:设置250服务器在每晚1点导出数据备份并生成日志。

[oracle@linux-251 jiaoben]$ cat exp.sh
source ~/.bash_profile
a=$(date +%Y%m%d)
exp "'sys/password as sysdba'" owner=nmsdb,wificity,smsdb,nsmsengine01,smzy file=/home/oracle1/251expbak/full/exp251_$a.dmp log=/home/oracle1/251expbak/fulllog/exp251_$a.log

[oracle@linux-251 jiaoben]$ cat scp.sh
a=$(date +%Y%m%d)
scp /home/oracle1/251expbak/full/exp251_$a.dmp 192.168.1.250:/data/orabak/251bak/
 

[oracle@linux-251 ~]$ crontab -l
0 1 * * * /home/oracle1/251expbak/jiaoben/exp.sh
[root@linux-251 ~]$ crontab -l
0 3 * * * /home/oracle1/251expbak/jiaoben/scp.sh
注:设置251服务器每晚1点进行数据导出并生成日志,每晚3点将导出的DMP备份到250服务器上。

oracle@linux-252:/bak/orabak # cat exp252.sh
source ~/.profile
a=$(date +%Y%m%d)
exp "'sys/password as sysdba'" owner=smsdb statistics=none file=/bak/orabak/252bak/exp252_$a.dmp log=/bak/orabak/252log/exp252_$a.log

oracle@linux-252:/bak/orabak # cat scp.sh
a=$(date +%Y%m%d)
scp 192.168.1.250:/data/orabak/250bak/exp250_$a.dmp /bak/orabak/250bak/
scp /bak/orabak/252bak/exp252_$a.dmp 192.168.1.250:/data/orabak/252bak/

oracle@linux-252:~> crontab -l
0 1 * * * /bak/orabak/exp252.sh

root@linux-252:~ # crontab -l
0 3 * * * /bak/orabak/scp.sh

linux-252:/bak/orabak # ll
total 20
drwxr-xr-x 2 oracle oinstall 4096 Jul  8 11:56 250bak
drwxr-xr-x 2 oracle oinstall 4096 Jul  8 11:39 252bak
drwxr-xr-x 2 oracle oinstall 4096 Jul  8 11:05 252log
-rwxrwxr-x 1 oracle oinstall  170 Jul  8 11:15 exp252.sh
-rwxrwxr-x 1 root   root      162 Jul  8 11:47 scp.sh
注:设置252服务器每晚1点导出数据备份并生成日志,每晚3点把250上的导出数据备份到本机,再把本机的数据备份另存一份到250上。

注:在配置过程中一定要注意脚本的属主和权限。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/464846.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

芯片公司急聘嵌入式软件精英人才

薪酬待遇及联系方式薪酬待遇:40~150万不等,另有股票期权等,待遇丰厚,详细面议工作地点:北京市朝阳区联系人:杨先生微信:MichaelYao7PS:推荐成功入职者有推荐费嵌入式软件工程师岗位职…

Python进程学习笔记-multiprocessing模块

如果你打算编写多进程的服务程序,Unix/Linux无疑是正确的选择。由于Windows没有fork调用,难道在Windows上无法用Python编写多进程的程序? 由于Python是跨平台的,自然也应该提供一个跨平台的多进程支持。multiprocessing模块就是跨…

这一年就要过去

「远方钟声响起,这一年就要过去,快乐时光不停留......」楠哥从幼儿园新学习了一首新年小曲。今年已经是12月份了,2021年就要结束,即将到来的是2022年的新的一年。2021年这一年里非常感谢读者的一路支持,当然这不是一篇…

Android 更改签名

本文来自:安卓航班网 签名和发布应用程序 要想使Android应用程序在真机上运行,需要对apk(Android应用程序的执行文件,相当于Symbian程序的sis/sisx或Java ME程序的jar文件)文件进行签名。可以通过命令行或ADT…

unc 隐藏共享文件夹_你真的了解任务栏吗?win10任务栏居然隐藏了这么多小窍门...

平常使用电脑,最常用的是桌面,桌面上最常用的大约是任务栏,但是你真的了解任务栏吗?除了一小部分朋友熟悉之外,大部分人估计都是没有留意到,其实任务栏就功能角度来说,的确算一个宝藏之地。什么…

c#调api串口通讯

c#调api串口通讯 原文:c#调api串口通讯在调试ICU通信设备的时候,由于串口通信老出现故障,所以就怀疑CF实现的SerialPort类是否有问题,所以最后决定用纯API函数实现串口读写。先从网上搜索相关代码(关键字:C# API 串口&…

手机充电IC设置电流与实测电流不一致问题剖析

大家好,我是写代码的篮球球痴,转一篇我朋友记得诚的文章本文转载来自一位基带大佬,解决问题的思路很重要。原文链接:https://blog.csdn.net/AirCity123/article/details/104428325?spm1001.2014.3001.5502某手机的充电架构如下&a…

今天面试了家公司

2011-07-08 不知不觉,做管理软件已经四五年了,今天面试了家做多媒体的公司,感觉不错,想转去做多媒体。转载于:https://blog.51cto.com/3298226/606809

checkbox居中 editor_radio 或 CheckBox 关联 其他元素 整体选择

场景: list组件中,每一行 需要显示多个radio 或者 checkBox,并且每一行显示选择的类型都不一样!radio 或checkBox 的选择数据源是存放另一个data组件中!! 思路:正常的想法是每一行放一个radioGr…

Spring系列(六) Spring Web MVC 应用构建分析

DispatcherServlet DispatcherServlet 是Spring MVC的前端控制器名称, 用户的请求到达这里进行集中处理, 在Spring MVC中, 它的作用是为不同请求匹配对应的处理器, 将结果传递给视图解析器最终呈现给客户端. 前端控制器模式(Front Controller Pattern)是…

做个好人,加个晚班

我和建平在腾讯加班的日子前几天,他让我给他发照片,因为公司里年末要发照片墙,他说要把我的和他的照片放上去,然后我硬是找了几张觉得不错的给他,然后他也真的放上去了。再看那些照片,拍出来的效果都不咋样…

使用use index优化sql查询

转自:http://www.cnblogs.com/edwardlost/archive/2010/12/31/1923105.html 先看一下arena_match_index的表结构,大家注意表的索引结构 CREATE TABLE arena_match_index ( tid int(10) unsigned NOT NULL DEFAULT 0, mid int(10) unsigned NOT NULL …

中ridge_10种线性代数在数据科学中的强大应用(内附多种资源)

原文选自 | Analytics Vidhya作者 | Khyati Mahendru本文转载自 TalkingData数据学堂 ,未经允许禁止转载本文摘要线性代数为各种各样的数据科学算法和应用提供支持在这里,我会向您介绍通过线性代数帮助您成为更好的数据科学家的10种实际应用我们已将这些…

排序算法之冒泡排序(JAVA)

//冒泡排序算法 平均时间复杂度 O(n*n) 稳定的排序算法 下面的是改进版的冒泡排序算法,使用exchange 标志位进行控制 public class bubbleSort { public static void bubbleSort(int[] data) { int i 0; int j 0; int tmp 0; int len …

C语言中变量的储存类别

C语言中变量的储存类别C语言中变量的储存类别1.动态存储方式与静态动态存储方式:从变量值存在的作时间(即生存期)角度来分,可以分为静态存储方式和动态存储方式。静态存储方式:是指在程序运行期间分配固定的存储空间的…

语言与golang语言运行速度_Golang语言情怀第13期 Go 语言设计模式 介绍

设计模式是什么俗话说:站在别人的肩膀上,我们会看得更远。设计模式的出现可以让我们站在前人的肩膀上,通过一些成熟的设计方案来指导新项目的开发和设计,以便于我们开发出具有更好的灵活性和可扩展性,也更易于复用的软…

blog发布测试

blog发布测试转载于:https://www.cnblogs.com/aj407blogs/p/9736120.html

字符串2在字符串1中第一次出现的位置strstr()

//字符串2在字符串1中第一次出现的位置,采用遍历的思想,移动str1的位置与str2进行匹配char *strstr(const char *str1, const char *str2) {int i 0;if (NULL str1){return NULL;}if (NULL str2){return (char *)str1;}if (*str2 ! \0){while (*str1 …

苦练IoT应用开发,还能加速变现,这个机会别错过

都说人间大事,不过吃喝二字。厨房经济近年来显示出了巨大发展潜力,智能厨电已成为潮流趋势。智慧厨电究竟是如何——让厨房小白做出一顿可口大餐?让懒人摆脱厨房油烟和洗碗的困扰?让怕冷的人喝到永远55℃的热水?……在…

jquery UI集合

http://www.cnblogs.com/leoxie2011/archive/2011/04/08/2009978.html