当前位置:首页 > 技术知识 > 正文内容

Linux中的Oracle数据库备份并自动上传到FTP服务器

maynowei10个月前 (08-19)技术知识103

简介:本文主要介绍在Linux环境中,怎么将Oracle数据库进行备份并自动上传到指定的FTP服务器,实现数据库的异地备份。其具体措施是提前部署好FTP服务器,然后编写脚本将Oracle数据库进行备份,并在备份成功后将生成的数据库文件上传到FTP服务器的对应文件夹下,在FTP服务器异地保存。确保了本地和FTP服务端各存一份,实现数据异地备份,提高数据库灾备的安全级别。

详细内容请参考下文。

一、登录linux系统

二、登陆oracle数据库

切换oracle用户的时候提示

原因分析:应该是ORACLE_HOME和PATH没有配置好

解决办法:先执行指令vim .bash_profile修改配置文件,在最后增加两行配置文件。

export ORACLE_HOME=/oracle/app/product/19C/db_home

export PATH=$ORACLE_HOME/bin:$PATH

然后执行命令# source .bash_profile启用该资源文件

三、编写脚本实现数据库文件的备份和自动上传

1、测试否能正确连接数据库

执行指令$ sqlplus / as sysdba

2、创建保存目录expdp_backup

执行指令# mkdir expdp_backup

3、创建本地每日备份脚本文件expdp_day.sh

执行指令# vim /usr/local/expdp_day.sh

4、创建FTP脚本文件ftp.sh

执行指令# vim ftp.sh

#!/bin/bash

date=`date "+%Y%m%d"`

ftp -in <<!

open 172.16.*.*   #备份服务器IP地址

user username password  #备份服务器用户和密码

bin

lcd /expdp_backup/  #本地待备份文件

cd /Backup  #指定备份服务器目录

mput *$date.dmp

bye

5、设置文件执行权限

执行指令# chmod 755 expdp_day.sh

执行指令# chmod 755 ftp.sh

6、编制crontab计划任务

执行指令# crontab -e

格式说明:第1列为分钟,0~59;第2列为小时,0~23;第3列为日期,1~31;第4列为月份,1~12;第5列为星期,0~7(0和7表示星期天);第6列为要运行的命令(如果有多个命令用 && 隔开)。

相关文章

Objective-c单例模式的正确写法「藏」

单例模式在iOS开发中可能算是最常用的模式之一了,但是由于oc本身的语言特性,想要写一个正确的单例模式相对来说比较麻烦,这里我就抛砖引玉来聊一聊iOS中单例模式的设计思路。关于单例模式更多的介绍请参考...

惊现!iOS 16.5 kfd 漏洞利用,成功隐藏 Dock 栏

最近!kfd漏洞比较活跃,进展也是很顺利,今天就有大神成功使用 kfd 漏洞实现隐藏 Dock 栏,到底怎么回事?请继续往下看。-- kfd 漏洞说明 --kfd漏洞适合在 iOS 16.2 - 16...

有了这份900多页的Android面试指南,你离大厂Offer还远吗?

前言对于大部分程序员来说,一线互联网是的工作经历是毕生的追求,实际上大厂对于学历的要求远远没有我们想象的那么高,近几年来,互联网公司更注重技术,所以提升自身技术水平才是斩获offer的制胜关键。一线互...

一文弄懂 GO 的 互斥锁 Mutex !(互斥锁的使用方法)

在 Go 语言并发编程中,互斥锁(Mutex)是一个非常重要的同步原语。本文将深入介绍 Mutex 的使用方法、实现原理以及最佳实践。1. 什么是 Mutex?Mutex(互斥锁)是一种用于多线程编程...

C++26中同步与原子操作新变化(c++ 同步)

引言随着多核处理器和并发编程的普及,C++26进一步增强了对同步与原子操作的支持,为开发者提供了更高效、更安全的工具来应对多线程编程中的数据竞争与同步挑战。自C++11引入原子操作以来,C++标准库在...

go语言并发原语RWMutex实现原理及闭坑指南

1.RWMutex常用方法Lock/UnlockRLock/RUnlockRLocker 为读操作返回一个Locker接 口的对象2. RWMutex使用方法 func main() { var c...