Oracle数据的异地自动备份

在大型商业应用中,数据的异地容灾备份十分重要,也必不可少。笔者根据自己的实践经验,设计了一套简洁地实现异地数据自动备份的方法,可供数据库管理人员参考。文中所有的程序都经过测试,运行良好。这里模拟的异地运行环境为一主一备两套Sun Solaris系统,

在大型商业应用中,数据的异地容灾备份十分重要,也必不可少。笔者根据自己的实践经验,设计了一套简洁地实现异地数据自动备份的方法,可供管理人员参考。文中所有的程序都经过测试,运行良好。这里模拟的异地运行环境为一主一备两套Sun Solaris系统,所采用的备份方法为Oracle提供的标准备份:export。

  相关命令

  文中主要用到三个命令,这里先单独介绍一下:

  export: 将数据库中数据备份成一个二进制系统文件,它有三种模式: 用户模式、表模式、整个数据库模式。还可分为三种备份类型:完全型、积累型、增量型。本文以整个数据库模式下的完全型为例说明。export使用格式为:

  exp userid file

  其中:userid的用法为username/userpassword,即Oracle中的用户名/口令。userid必须为exp的第一个参数,file指备份文件所放位置及名称。

  ftp: 一般情况下可通过交互方式实现两台主机间的数据传输,即需要手工输入目标主机的IP地址、用户名、口令等。但是当用户使用ftp命令时,系统将会先在该用户的注册目录中寻找.netrc文件,并首先执行该文件。这样,我们可以通过编写一个.netrc的文件来达到自动备份的目的。要注意该文件必须命名为.netrc,且必须存放在启动ftp命令主机上的用户注册目录里。ftp常用选项:

  -i:进行多文件传送时关闭交互提示;

  -n:在连接之后不进行自动登录。

  本文使用“-i”选项,以关闭交互提示。

  crontab: cron是一个永久进程,它由/etc/rc.local启动执行。cron检查/var/spool/cron/crontabs/目录中的文件,找到所要执行的任务和执行任务的时间,并自动完成。该目录中文件由crontab命令建立。用户所建立的crontab文件存于/var/spool/cron/crontabs中,其文件名与用户名一致,本文使用crontab的用户为Oracle,所建立的文件名也为Oracle。

  cron使用者的权限记载在下列两个文件中: /usr/var/adm/cron/cron.deny和/usr/var/adm/cron/cron.allow。前面的文件中所列的用户不允许使用crontab命令;后一文件中所列的用户允许使用crontab命令。crontab命令的常用格式为:

  crontab -l:显示用户的crontab文件的内容;

  crontab -r:从crontabs目录中删除用户的crontab文件;

  crontab -e:编辑用户的crontab文件。

  crontab文件每行中有6个字段,前5个为时间设定段,第6个为所要执行的命令。时间段分别为: minutes、hours、day of month、month、day of week,字段之间用空格或Tab分开。字段如果为“*”,表示该字段在所有可能的取值范围内取值; 如果一个字段是由连字符隔开的两个数字,表明命令可以在两个数字之间的范围内执行。

  备份数据库

  设定数据库的拥有者为Oracle,用户名为mistest,其口令为test,新建备份目录为/export/home/oracle/backup。建立一个命名为testbackup的备份文件,文件内容如下:

  ORACLE-HOME=/export/home/oracle/815;export ORACLE-HOME

  ORACLE-SID=ora815;export ORACLE-SID

  rm /export/home/oracle/backup/*

  rq=丶date +“%m%d”丶

  /export/home/oracle/815/bin/exp mistest/test file=/export/home/oracle

  /backup/exp$rq.dmp log=/exoport/home/oracle/backup/exp$rq.log

  说明:前两句对Oracle数据库初始化,第3条语句清空备份目录,第4条语句建立一个取当前日期的变量,以便在最后一条语句的备份文件名里含有当前日期信息。

  testbackup编写完成后,用“chmod +x testbackup”命令授予它可执行权限。

SpeakingPass-打造你的专属雅思口语语料 SpeakingPass-打造你的专属雅思口语语料

使用chatGPT帮你快速备考雅思口语,提升分数

SpeakingPass-打造你的专属雅思口语语料 25 查看详情 SpeakingPass-打造你的专属雅思口语语料

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/484745.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小红书怎么查看笔记数据_小红书查看笔记数据分析报告
上一篇 2025年11月8日 12:51:54
deepin深度系统安装
下一篇 2025年11月8日 12:51:56

相关推荐

  • php实现哪些功能

    PHP是一种通用脚本语言,可用来实现广泛的功能,包括:动态Web开发:生成响应用户请求的动态 веб页面。内容管理系统(CMS):构建允许用户管理网站内容的CMS。电子商务:开发具有购物车、订单处理和支付网关集成的电子商务网站。服务器端编程:编写命令行脚本和工具。文件操作:创建、读取、写入和删除文件…

    2026年5月10日
    000
  • SQL查询:精确判断事件过期,结合日期与时间列

    本文旨在解决数据库中事件过期判断不精确的问题,特别是当事件的过期日期和时间分别存储在不同列时。我们将探讨两种主流的sql查询策略:一种是利用逻辑运算符`or`和`and`进行分情况判断,另一种是通过合并日期和时间列为单一时间戳进行直接比较。文章将详细阐述每种方法的实现方式、适用场景及相关注意事项,确…

    2026年5月10日
    100
  • HTML表单如何实现白名单功能?怎样只允许授权用户?

    要实现%ignore_a_1%的白名单功能并确保只有授权用户操作,核心答案是必须依赖后端服务器进行严格的身份认证、会话管理、授权检查和数据验证,前端仅能提供用户体验层面的初步提示而不能保障安全;具体而言,首先通过用户身份认证(如用户名/密码或oauth)确认用户身份,服务器创建会话并返回标识符,后续…

    2026年5月10日
    800
  • 如何用C#实现数据库的跨平台迁移?使用EF Core工具?

    使用EF Core实现跨平台数据库迁移,需定义实体与DbContext,通过动态配置不同数据库提供程序,利用EF Core CLI生成并应用迁移,结合Fluent API处理数据库差异,确保结构与数据兼容。 要实现数据库的跨平台迁移,C# 中最常用且高效的方式是使用 Entity Framework…

    2026年5月10日
    000
  • Python连接MySQL 5.1:克服旧版认证与字符集兼容性挑战

    本教程详细阐述了如何使用Python 3和mysql.connector库成功连接到老旧的MySQL 5.1数据库。文章重点介绍了解决旧版认证协议和字符集兼容性问题的关键配置,特别是use_pure=True和charset=’utf8’的重要性,并提供了可运行的代码示例。同…

    2026年5月10日
    000
  • 想提升IT技能?哪些含金量高的认证值得考?

    it职业发展:高含金量认证助您成功 想在IT领域提升竞争力?选择合适的认证至关重要。本文推荐几项国内外认可度高的IT认证,助您在职业道路上更进一步。 热门认证推荐: 1. 高级软件设计师(软考高级): 国内IT领域含金量最高的认证之一。涵盖软件工程、项目管理及计算机基础知识。证明您在软件设计和开发方…

    2026年5月10日
    000
  • 什么是资产代币化(Asset Tokenization)?它如何将现实世界资产带入区块链?

    资产代币化是通过区块链将房产、股票等实体资产权益转化为可分割的数字代币。首先选择目标资产并由合规机构确权估值,随后在链上发行对应代币并通过智能合约绑定权益比例,实现自动化分红与转让。为确保真实性,引入第三方审计和去中心化预言机同步链下数据,资金流由托管账户与链上地址联动记录,提升透明度。代币化降低投…

    2026年5月10日
    000
  • 如何高效地在Go中使用http.ResponseWriter构建JSONP响应

    本教程探讨在go语言中高效构建jsonp响应的方法,重点解决如何使用`http.responsewriter`处理回调函数封装。文章通过对比传统字符串拼接与字节切片转换的不足,详细介绍了利用`fmt.fprintf`直接写入和`fmt.sprintf`预格式化两种优化方案,旨在提升代码的简洁性和执行…

    2026年5月10日
    000
  • MySQL、PostgreSQL、SQL Server和Oracle中空字符串、数字0和NULL占用空间有何区别

    不同数据库系统中空字符串、数字0和NULL的存储空间差异 本文比较了MySQL InnoDB、PostgreSQL、SQL Server和Oracle数据库中,空字符串(”)、数字0和NULL值在磁盘上所占用的空间大小。 MySQL InnoDB存储引擎: 整型字段: NULL: 不占用…

    2026年5月10日
    000
  • html文档中含有java怎么运行_html含java运行方法【教程】

    现代浏览器不支持Java Applet,推荐通过JavaScript调用Java后端服务或使用WebAssembly运行Java代码。 如果您在HTML文档中嵌入了Java代码,但发现无法正常运行,这通常是因为现代浏览器不再支持Java小程序(Applet)或相关插件。以下是几种实现HTML中Jav…

    2026年5月10日
    000
  • php主要运用哪些东西

    PHP 是一种通用脚本语言,主要用于 Web 开发,包括创建动态网页、网站框架和内容管理系统。此外,它还支持 Web 服务(RESTful 和 SOAP)、数据库操作、命令行脚本、桌面应用程序和图像处理。 PHP 语言的主要应用 PHP(超文本预处理器)是一种广泛应用的通用脚本语言,主要用于 Web…

    2026年5月10日
    100
  • java怎么编译运行.html_java编译运行.html方法【教程】

    Java程序的编译运行与HTML无关,需使用JDK。1. 编写HelloWorld.java文件;2. 命令行执行javac HelloWorld.java生成.class文件;3. 执行java HelloWorld运行程序。注意:HTML是网页标记语言,不能直接运行Java代码,勿将二者混淆。确…

    2025年12月23日
    000
  • 怎么运行html的applet小程序_运行html applet小程序步骤【指南】

    现代浏览器已不再默认支持Java Applet,需通过安装JRE、启用插件、使用支持NPAPI的旧版浏览器(如Firefox 52.9 ESR)、调整Java安全级别至中,并将网站添加到例外站点列表方可运行。 如果您在尝试运行HTML中的Applet小程序时遇到问题,可能是因为现代浏览器已不再默认支…

    2025年12月23日
    000
  • 动态生成HTML表格:优化JavaScript数据展示与导出

    本文旨在解决JavaScript中动态生成HTML表格时遇到的代码冗余和样式控制难题。通过引入数据驱动的编程思想,我们将数据与视图逻辑分离,首先将表格内容组织为JavaScript对象数组,然后利用一个通用的函数将这些结构化数据渲染为可读性强、易于维护且支持灵活样式的HTML表格字符串。这种方法不仅…

    2025年12月23日
    000
  • HTML5性能优化怎么实现_HTML5新特性在性能优化方面的应用方法

    HTML5通过语义化标签、Web Storage、Canvas/SVG、Service Worker和原生媒体支持等技术提升性能:1. 语义化标签优化渲染效率;2. Web Storage减少网络请求;3. Canvas/SVG降低资源加载量;4. Service Worker实现离线缓存;5. 原…

    2025年12月23日
    100
  • 利用UTM参数与GTM优化链接点击来源追踪

    本文详细阐述了如何通过UTM参数精准追踪营销链接的点击来源,并深入探讨了Google Tag Manager (GTM) 在此过程中的高级应用。文章首先介绍了UTM参数的构成、生成方法及其在Google Analytics中的自动解析机制,强调其在识别流量来源方面的核心作用。随后,探讨了GTM如何通…

    2025年12月23日
    000
  • 使用BeautifulSoup和JSON有效抓取动态加载的网页表格数据

    本教程旨在解决使用BeautifulSoup抓取网页表格时,因数据动态加载导致部分内容缺失的问题。通过分析网页背后的API请求,直接获取并解析JSON数据源,再结合BeautifulSoup提取的HTML结构信息,最终实现完整且准确的数据抓取。文章将提供详细的代码示例和实现步骤。 理解网页动态内容与…

    2025年12月23日
    400
  • 解决BeautifulSoup爬取网页表格中动态内容缺失问题

    本文旨在解决使用BeautifulSoup爬取网页表格时,因部分数据通过JavaScript动态加载导致内容缺失的问题。通过详细分析Oracle云定价页面的案例,教程将指导读者如何识别并获取隐藏在JSON API中的动态数据,并将其与BeautifulSoup解析的静态HTML内容有效整合,最终构建…

    2025年12月23日
    500
  • 如何通过HTML在线展示数据_HTML在线数据展示实现与可视化方案

    网页展示数据需结合HTML、CSS与JavaScript,首选table展示结构化数据,配合Chart.js等库实现可视化图表,通过fetch加载远程JSON动态渲染内容,并利用响应式设计与交互优化提升用户体验。 在网页中展示数据,核心是将结构化信息清晰、直观地呈现给用户。HTML本身是内容载体,结…

    2025年12月23日
    000
  • html在线几何图形绘制 html在线SVG应用实战教程

    使用HTML与SVG结合可高效绘制几何图形。SVG基于XML,支持圆形、矩形、多边形、路径等,在任意分辨率下清晰。1. 基础元素包括rect、circle、ellipse、line、polygon、polyline和path。2. 实战示例:用polygon绘制三角形,path绘制五角星和弧线仪表盘…

    2025年12月23日
    000

发表回复

登录后才能评论
关注微信