环境:Red Hat Enterprise Linux Server release 6.4

需求:需要将Oracle数据库的定时备份上传至FTP服务器

1.干货,用户名:oracle,数据库名称:XXXXXXX,FTP服务器地址:127.0.0.1。脚本至ftp -i -v -n<<!前都为本身存在的数据库定时备份脚本。路径为/home/用户名/ordatabak.sh

#!/bin/sh
. /home/oracle/.bash_profile
date=`date +%Y_%m_%d`
days=7
orowner=wxdb
bakdir=/home/oracle/orabackup
bakdata=$orowner"_"$date
ordatabak=$orowner"_"$date.tar.gz
cd $bakdir
expdp \"\/ as sysdba\" DIRECTORY=DATA_BAK DUMPFILE=$bakdata"_"%U.dmp SCHEMAS=XXXXXXX CONTENT=ALL logfile=$bakdata"_".log cluster=N
tar -zcvf $ordatabak *.dmp *.log
find $bakdir -type f -name "*.log" -exec rm {} \;
find $bakdir -type f -name "*.dmp" -exec rm {} \;
find $bakdir -type f -name "*.tar.gz" -mtime +$days -exec rm -rf {} \; ftp -i -v -n<<!
open 127.0.0.1
user username passwd
binary
cd /destination_directory
lcd /source_directory
prompt
put $ordatabak $ordatabak
close
bye
!

2.对oracle数据库不是很熟悉,之前搭建的时候是别人负责的,只说ftp上传部分。

我使用的linux没有安装ftp客户端,如果服务器上已经安装了的,可以跳过这一步。首先要安装ftp客户端,命令:yum install ftp,提示complete就表示安装完成。

注意:之前并不知道我使用的linux没有安装ftp客户端,网上搜到的命令为:yum install vsftpd,该命令为安装ftp服务器的,在本例中使用不到,也就没有深究。参考连接:

https://zhidao.baidu.com/question/2010722861325815548.html

http://blog.csdn.net/jiafu1115/article/details/7621303

安装过程中出现错误,错误大概为:

对linux知之甚少,也就只能依靠百度了。大概就是另一程序在使用yum安装程序,所以锁住了,删除yum.pid,重启yum服务(不太清楚是不是,看上去是update的服务),问题得以解决。链接:

https://zhidao.baidu.com/question/331411086597515805.html

[root@centos5 ~]# rm -r /var/run/yum.pid
rm:是否删除 一般文件 “/var/run/yum.pid”? y
[root@centos5 ~]# /sbin/service yum-updatesd restart
停止 yum-updatesd: [确定]
启动 yum-updatesd: [确定]

至于pid文件是干啥的,看这个链接,我也不是很懂。http://blog.csdn.net/shanzhizi/article/details/23272437

3.ftp客户端安装完成后,就可以简单测试ftp连接,脚本也可以仿照1里面写。命令的意思要自己百度,我懒得找了,大概就是open后面加上ftp服务器地址,cd后面写ftp服务器上传地址,lcd写本地上传文件所在地址。

脚本编写完成后,可以尝试运行,并看看ftp服务器上是否收到文件。

简单的vim操作命令 http://www.cnblogs.com/momofan/p/5936203.html

4.添加计划任务

命令:vi /etc/crontab 

网上有些人说命令也可以是 crontab -e,可能是环境的问题,我这边用不了。至此,linux定时备份数据至ftp服务器脚本编写完成。

Linux系统下定时上传文件至FTP服务器脚本的更多相关文章

  1. Linux: 通过命令行上传文件到ftp服务器

    url -T fie-name ftp://server-address --user user:password

  2. .Net 上传文件到ftp服务器和下载文件

    突然发现又很久没有写博客了,想起哎呦,还是写一篇博客记录一下吧,虽然自己还是那个渣渣猿. 最近在做上传文件的功能,上传到ftp文件服务器有利于管理上传文件. 前面的博客有写到layui如何上传文件,然 ...

  3. java 上传文件到 ftp 服务器

    1.  java 上传文件到 ftp 服务器 package com.taotao.common.utils; import java.io.File; import java.io.FileInpu ...

  4. asp.net 服务器 上传文件到 FTP服务器

    private string ftpServerIP = "服务器ip";//服务器ip private string ftpUserID = "ftp的用户名" ...

  5. Linux上F上传文件到FTP服务器

    Linux上上传跟Windows上上传不一样,在Windows上测试没问题,但是放到Linux服务器上跑,上传的文件中文显示乱码.解决方案: FtpUtil.java红色标记处 package cn. ...

  6. Android 上传文件到 FTP 服务器

    实现背景 近期接触到一个需求,就是将文件从Android系统上传到FTP服务器,虽然之前接触过FTP服务器,了解基本的使用流程,但是将此流程从使用习惯转化为代码实现还是有一定难度的.但是基本的流程还是 ...

  7. ftp配置 Laravel上传文件到ftp服务器

    listen=YES anonymous_enable=NO local_enable=YES write_enable=YES local_umask= dirmessage_enable=YES ...

  8. linux 系统filezilla无法上传文件 553 Could not create

    做网站过程中遇见了很多问题,解决了但是解决方法过一段时间就会遗忘,整理出来以便以后查看. 响应: 553 Could not create file.错误: 严重文件传输错误 解决方案: 一.必须将站 ...

  9. WIN7系统 如何上传文件到FTP服务器中

    https://zhidao.baidu.com/question/214644671.html

随机推荐

  1. javascript delete机制学习

    想了解delete的机制缘起一个现象,我无法解释,也无法理解. 首先看一下下面这个例子: var x = 1; delete x; //false 然后我又执行了一次: y = 2; delete y ...

  2. Android图形合成和显示系统---基于高通MSM8k MDP4平台

    介绍了Android SurfaceFlinger层次以下的图形合成和显示系统,主要基于高通MSM8k MDP4x平台. 做为Android Display专题.SurfaceFlinger的详细介绍 ...

  3. Linux 计算器

    bc: 默认没有小数位,使用scale=2设置保留的位数.

  4. Hive 11、Hive嵌入Python

    Hive嵌入Python Python的输入输出都是\t为分隔符,否则会出错,python脚本输入print出规定格式的数据 用法为先add file,使用语法为TRANSFORM (name, it ...

  5. HtmlHelper扩展 及 页面编码化

    Html.Encode 新建Action,命名为HtmlEncodeDemo 将含有特殊字符的值传递给View视图 <%= ViewData["script"] %> ...

  6. Unity Navigation面板了解

    上次讲解了下Navigation的简单使用, 这次来看看Navigation面板的一些参数 NavigationStatic 勾选后表示该对象参与导航网格的烘培. OffMeshLink Genera ...

  7. pyqt sender()学习

    #!/usr/bin/python # -*- coding: utf-8 -*- # sender.py import sys from PyQt4 import QtGui, QtCore cla ...

  8. Codeforces 474C Captain Marmot 给定4个点和各自旋转中心 问旋转成正方形的次数

    题目链接:点击打开链接 题意: 给定T表示case数 以下4行是一个case 每行2个点,u v 每次u能够绕着v逆时针转90° 问最少操作多少次使得4个u构成一个正方形. 思路: 枚举判可行 #in ...

  9. Android HttpClient框架get和post方式提交数据(非原创)

    1.fragment_main.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android& ...

  10. emjio表情转json

    今天碰到了上传文字给服务端的时候emjio表情转成json就不对了 有大神帮忙解决了,记笔记记笔记--- #import "NSString+EncodedString.h" @i ...