linux ftp备份(Linux如何利用ssh传送文件至FTP空间进行备份)

seosqwseo2个月前 (09-14)测评日记36

一、Linux下mysql数据库备份方法

通过mysql提供的功能

导出

命令:

mysqldump-u用户名-p数据库数据库.sql

示例:

                代码如下   **代码   

   mysqldump-u root-p db1 db1.sql(将数据库db1备份到db1.sql中)

提示输入密码,完成即可。

导入

需要先创建一个空数据库

mysql-u root-p(输入密码后进入mysql)

create database db1;(创建一个名为db1的数据库)

exit(退出mysql)

命令:

mysql-u用户名-p数据库数据库.sql

示例:

                代码如下   **代码   

   mysql-u root-p db1 db1.sql(从备份文件db1.sql中导入数据到数据库db1中)

提示输入密码,完成即可。

通过拷贝文件

如果数据库特别大,可以使用拷贝的方式进行备份,不过不同的*作系统间可能会导致不兼容。

导出

进入mysql目录,打包需要备份的数据库目录

示例:

                代码如下   **代码   

   cd/var/lib/mysql(进入mysql目录)

   tar-zcvf db1.tar.gz db1(打包db1目录,如果提示没有权限,在前面加上sudo,提示输入密码后即可)

导入

首先创建一个空数据库,将打包的文件拷贝到mysql目录后解压

示例:

                代码如下   **代码           

mysql-u root-p(输入密码后进入mysql)

   create database db1;(创建一个名为db1的数据库)

   exit(退出mysql)

   cp db1.tar.gz/var/lib/mysql(将打包文件拷贝到mysql目录下)

   cd/var/lib/mysql(进入mysql目录)

   tar-zxvf db1.tar.gz(解压到当前目录)

后现在linux中脚本

                代码如下   **代码   

   #!/**n/bash

   #Mysql autobackup shell#write by tuspark

   #-------------------数据库相关的用户名、密码、需要备份的数据库名、备份目录等

   dbuser=root

   dbpasswd=XXXXX

   dbserver=localhost

   dbname=XXXXX

   dbopt=--opt

   backupdir=/dcbackup/

   #-------------------是否开启FTP远程备份,0为否,1为是。

   copytoftp=1

   ftpserver=XXXXX

   ftpuser=XXXXX

   ftppasswd=XXXXX

   #-------------------以下参数

   fileprefix=dcradiusdump

   filename=$backupdir`date+%F`.sql

   newfile=$fileprefix-`date+%F`.tar.gz

   keepdays=10

   #-------------------以下为备份时的日志

   logfile=/var/log/mysqlbackup.log

   logtmp=/var/log/mybackup.tmp

   #===============================================

   if [!-d$backupdir ]

   then

   echo"$backupdir is not exist, then make..."$logfile

   mkdir-p$backupdir

   fi

   echo"start===================================="$logfile

   echo"Beginning backup `date'+%F%T'`"$logfile

   echo"Delete$keepdays days ago files..."$logfile

   find$backupdir-name$fileprefix*-mtime+$keepdays-fls$logtmp-exec rm{};

   echo"Deleted Backup file is:"$logfile

   cat$logtmp$logfile

   echo"Delete old file Success!"$logfile

   if [-f$backupdir$newfile ]

   then

   echo"$newfile backup exist, backup stop..."$logfile

   else

   if [-z$dbpasswd ]

   then

   mysqldump-u$dbuser-h$dbserver$dbopt$dbname$dumpfilename

   else

   mysqldump-u$dbuser-p$dbpasswd-h$dbserver$dbopt$dbname$dumpfilename

   fi

   tar czvf$backupdir$newfile$dumpfilename$logfile 21

   echo"$backupdir$newfile Backup Success!"$logfile

   rm-fr$dumpfilename

   if [$copytoftp= 1 ]; then

   if [-z$ftpserver ];then

   echo"Ftp Server not set,Copy to Ftp Failed..."$logfile

   exit 1

   elif [-z$ftpuser ];then

   echo"Ftp user not set, Copy to Ftp Failed..."$logfile

   exit 2

   elif [-z$ftppasswd ]; then

   echo"Ftp password not set, Copy to Ftp Failed..."$logfile

   exit 3

   else

   echo"Start copy to Ftp server...."$logfile

   ftp-n$logfile

   fi

二、Linux如何利用ssh传送文件至FTP空间进行备份

在Linux系统中,可通过ssh将文件传送到FPT空间中,将一些重要的数据进行备份,那么要如何实现文件的传送呢?小编给大家具体介绍下Linux利用ssh传送文件到FTP空间的方法。

   步骤:

假设要备份的目录为/home/wwwroot/aaa/,远程FTP空间的 IP为 55.44.33.22

1.进入到/home/wwwroot/目录

cd/home/wwwroot

2.然后将 aaa目录压缩为 tar.gz文件包 aaa.tar.gz

tar cfz aaa.tar.gz aaa

3.链接FTP

ftp 55.44.33.22

回车,接着输入 FTP用户名,回车,输入FTP密码,链接成功后,应该看到 ftp》

4.上传刚才的 aaa.tar.gz

put aaa.tar.gz

直到反馈说成功即可。

注:如果使用 ftp命令提示该命令不存在

centOS可以直接执行下面的命令,安装 ftp服务一般就可以了:

yum install ftp

通过本文的介绍想必你已经了解了如何使用ssh传送文件至FPT空间,一共需要四个步骤,备份重要文件就是这么简单。

三、如何在Linux服务器中备份

linux系统下使用脚本定时备份数据库,代码如下:

#!/**n/bash

#Setting

#设置数据库名,数据库登录名,密码,备份路径,日志路径,数据文件位置,以及备份方式

#默认情况下备份方式是mysqldump,还可以是mysqldump,mysqldotcopy,如果注释掉第

#18行,则默认以tag的方式备份

#默认情况下,用root(空)登录mysql数据库,备份至/root/dbxxxxx.tgz

DBName=mysql

DBUser=root

DBPasswd=123456

BackupPath=/home/wang/www/backup/mysql/mysqlbackup

LogFile=/home/wang/www/backup/mysql/db.log

DBPath=/var/lib/mysql/

#BackupMethod=mysqldump

#BackupMethod=mysqlhotcopy

#BackupMethod=tar

#Setting End

NewFile="$BackupPath"db$(date+%y%m%d).tgz

DumpFile="$BackupPath"db$(date+%y%m%d)

OldFile="$BackupPath"db$(date+%y%m%d--date='5 days ago').tgz

echo"-------------------------------------------">>$LogFile

echo$(date+"%y-%m-%d%H:%M:%S")>>$LogFile

echo"--------------------------">>$LogFile

#Delete Old File

if [-f$OldFile ]

then

rm-f$OldFile>>$LogFile 2>&1

echo"[$OldFile]Delete Old File Success!">>$LogFile

else

echo"[$OldFile]No Old Backup File!">>$LogFile

fi

if [-f$NewFile ]

then

echo"[$NewFile]The Backup File is exists,Can’t Backup!">>$LogFile

else

case$BackupMethod in

mysqldump*)

if [-z$DBPasswd ]

then

mysqldump-u$DBUser--opt$DBName>$DumpFile

else

mysqldump-u$DBUser-p$DBPasswd--opt$DBName>$DumpFile

fi

tar czvf$NewFile$DumpFile>>$LogFile 2>&1

echo"[$NewFile]Backup Success!">>$LogFile

rm-rf$DumpFile

;;

mysqlhotcopy*)

rm-rf$DumpFile

mkdir$DumpFile

if [-z$DBPasswd ]

then

mysqlhotcopy-u$DBUser$DBName$DumpFile>>$LogFile 2>&1

else

mysqlhotcopy-u$DBUser-p$DBPasswd$DBName$DumpFile>>$LogFile 2>&1

fi

tar czvf$NewFile$DumpFile>>$LogFile 2>&1

echo"[$NewFile]Backup Success!">>$LogFile

rm-rf$DumpFile

;;

*)

/etc/init.d/mysqld stop>/dev/null 2>&1

tar czvf$NewFile$DBPath>>$LogFile 2>&1

/etc/init.d/mysqld start>/dev/null 2>&1

echo"[$NewFile]Backup Success!">>$LogFile

;;

esac

fi

echo"-------------------------------------------"

echo

#lftp-f lftp.sh如果有FTP可同时上传ftp中。

再利用crontab命令生成/var/spool/cron/root文件:

#crontab–e

//打开一个编辑窗口,第一行会有内容格式的提示,在此输入命令

//m h dom mon dow command

//具体意义表示:分钟小时日期月份星期命令,在某月(mon)的某天(dom)或者星期几(dow)的几点(h,24小时制)几分(m)执行某个命令(command)

//如: 10 02***/home/backup/autobackupmysql.sh(表示零晨二点十分执行备份脚本)

四、linux服务器,怎么备份,然后怎么恢复到另一台机子上

服务器安装RAR,对d盘bakup文件夹下所有文件及目录进行压缩,命名为bakup.rar,放到d盘ftp目录下

@echo offd:if not exist ftp md ftp"C:\Program Files\WinRAR\WinRAR.exe" a-r d:\ftp\bakup.rar d:\backup\*.*@echo ok!exit

客户端,自动登录ftp**所有文件到F盘bak目录(ftp用户名密码为test,也可以把mget替换为get**指定文件),

@echo

offf:if not exist bak md f:\bakcd/d f:\bak>f:\bak\ftptmp echo open

192.168.1.254>>f:\bak\ftptmp echo test>>f:\bak\ftptmp echo

test>>f:\bak\ftptmp echo **n>>f:\bak\ftptmp echo

prompt>>f:\bak\ftptmp echo mget*.*>>f:\bak\ftptmp echo

byestart/wait ftp-s:f:\bak\ftptmpdel f:\bak\ftptmpexit

服务器和ftp客户端分别设置计划任务,定时执行。bat批处理可以根据你的具体设置进行修改。

相关文章

创维(Skyworth)43H3口碑怎么样

创维(Skyworth)43H3口碑怎么样

很多小伙伴在关注创维(Skyworth)43H3怎么样?质量好不好?使用测评如何?本文综合已购用户的客观使用分享和相应的优惠信息,为大家推荐一款高性价比的产品,一起来看看吧...

zeiss蔡司镜头清洁测评怎么样

zeiss蔡司镜头清洁测评怎么样

很多小伙伴在关注zeiss蔡司镜头清洁怎么样?质量好不好?使用测评如何?本文综合已购用户的客观使用分享和相应的优惠信息,为大家推荐一款高性价比的产品,一起来看看吧。...

绿联USB/Type-C读卡器3.0高速好不好用

绿联USB/Type-C读卡器3.0高速好不好用

很多小伙伴在关注绿联USB/Type-C读卡器3.0高速怎么样?质量好不好?使用测评如何?本文综合已购用户的客观使用分享和相应的优惠信息,为大家推荐一款高性价比的产品,一起...

小度智能屏X8升级版测评分享

小度智能屏X8升级版测评分享

很多小伙伴在关注小度智能屏X8升级版怎么样?质量好不好?使用测评如何?本文综合已购用户的客观使用分享和相应的优惠信息,为大家推荐一款高性价比的产品,一起来看看吧。...

小值智能摄像头测评分享

小值智能摄像头测评分享

很多小伙伴在关注小值智能摄像头怎么样?质量好不好?使用测评如何?本文综合已购用户的客观使用分享和相应的优惠信息,为大家推荐一款高性价比的产品,一起来看看吧。...

绿联苹果手表膜S8/SE2通用AppleiWatch7/6/5/4保护膜45/44mm全屏防刮防指纹水凝软膜2片装使用感受分享

绿联苹果手表膜S8/SE2通用AppleiWatch7/6/5/4保护膜45/44mm全屏防刮防指纹水凝软膜2片装使用感受分享

很多小伙伴在关注绿联苹果手表膜S8/SE2通用AppleiWatch7/6/5/4保护膜45/44mm全屏防刮防指纹水凝软膜2片装怎么样?质量好不好?使用测评如何?本文综合...