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

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

douba32个月前 (07-17)技术文章13

简介:本文主要介绍在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列为要运行的命令(如果有多个命令用 && 隔开)。

相关文章

如何在Ubuntu中安装RustDesk远程桌面软件

用Rust编写的RustDesk是远程桌面查看和管理的理想软件,因为它的开箱即用性能不需要任何配置。RustDesk特性使用RustDesk作为您的远程桌面软件保证您以下主要功能:安全性-您不必担心未...

Linux系统查看IP地址的常用方法(查看linux ip地址)

简介:Linux系统经常使用ifconfig命令查看网卡的IP地址,一般需要以root身份登录使用ifconfig工具。ifconfig工具不仅可以被用来简单地获取网络接口配置信息,还可以修改这些配置...

linux系统日志查看命令(linux系统查看日志的详细信息)

cattail -f日 志 文 件 说 明/var/log/message 系统启动后的信息和错误日志,是Red Hat Linux中最常用的日志之一/var/log/secure 与安全相关的日志信...

Linux 文件搜索神器 find 实战详解,建议收藏

在 Linux 系统使用中,作为一个管理员,我希望能查找系统中所有的大小超过 200M 文件,查看近 7 天系统中哪些文件被修改过,找出所有子目录中的可执行文件,这些任务需求 find 命令都可以轻松...

如何查看linux后台运行的进程?如何查看后台运行进程的状态?

linux系统中挂在后台的进程,如何能够被运维人员知道呢?以及挂在后台的进程当前状态是怎样的?是否可以继续执行?如何杀死一个在后台挂起的进程?后台进程可以通过‘&’符号或nohup命令,让程序进入...

如何检查 Linux 系统是 32 位还是 64 位?这9个命令查的又快又准!

在 Linux 系统中,位数(bit)通常指的是 CPU 架构的位宽,即 CPU 一次能够处理的数据量。32 位系统和 64 位系统在内存寻址能力、计算性能和软件支持上存在显著差异:「32 位系统」:...