• ftp设置二进制上传


    一个不重要的数据库,备份是用expdp导出,然后上传到ftp服务器上面。上周这个主机宕机了,要在别的数据库恢复,发现报如下错误:

    ORA-39001: invalid argument value
    ORA-39000: bad dump file specification
    ORA-31619: invalid dump file "/xxx/xxx/xxx.dmp"

    然后查了一下资料,出现这种情况,一般是导出数据库的版本和导入数据库的版本不一致导致的,然后查看导出文件的版本

    strings xxxxx.dmp|head -n 10
    #xxxx.dmp为导出文件
    "SYS"."SYS_EXPORT_FULL_01"
    x86_64/Linux 2.4.xx
    tsurbob
    AL32UTF8
    11.02.00.04.00
    001:001:000001:000001

    根据上面的信息,可以看到导出文件是11204的,也没有问题。

    在查资料,有写到ftp上传的时候可以使用ascll和binary两种方式。使用ascll可能会导致文件变化

    这时候机器也修好了,测试了一个文件的上传,发现上传到主机的文件的md5值和本地的md5值完全不一样,测试使用二进制上传后,md5相同,可以确定是上传方式导致的

    修改后的脚本:

    #!/bin/bash 
    source ~/.bash_profile
    
    ######################################################### 
    echo 'Start Time ------------>' `date` 
    day=`date +%Y%m%d%H%M` 
    flag=0
    for db in {DB01,DB02,DB03}
     do
       export ORACLE_SID=$db
       echo "#################${ORACLE_SID} is expdpping###############"
       expdp "'/ as sysdba'" directory=EXP_SCHEMABAK_TOFTP dumpfile="$db"_schemabak_"$day".dmp logfile="$db"_schemabak_"$day"
    .log full=y content=metadata_only
       echo "#################${ORACLE_SID} have done##################"
       let flag+=1
    done
    echo "#################expdp total:${flag}######################"
    ######################################################## 
    echo '------ftp and delete-------'`date`
    
    cd /oradata01/expdata/schema_bak
    find ./ -name "*.dmp" -mtime +6 -exec rm -rf {} ;
    find ./ -name "*.log" -mtime +6 -exec rm -rf {} ;
    ftp -niv <<EOF
    open XXX.XXX.XXX.XXX
    user USERNAME PASSWORD
    binary
    cd /Data/zz_dmp/backfor89/
    mput *_schemabak_$day.dmp
    quit
    EOF
    echo 'End Time ---------------->'`date`

    在ftp上传块中加入binary,显示制定上传方式为二进制。mput可以上传多个文件,put只能上传单个文件。

  • 相关阅读:
    Linux 下安装nodejs
    Linux 下安装JDK
    ubuntu 把软件源修改为国内源
    vi/vim 命令使用详解
    不同浏览器css引入外部字体的方式
    npx 命令介绍
    ICloud没有密码怎么注销?
    装修后才知道的79件事
    天翼宽带政企网关B2-1P 如何获得超级管理员账号?
    家庭治疗偏头痛
  • 原文地址:https://www.cnblogs.com/monkey6/p/13438838.html
Copyright © 2020-2023  润新知