linux服务器自动备份数据库大小为0!

我可以将脚本放入crontab并自动执行吗?如果是的话,可能是环境变量造成的。
请在脚本中使用绝对路径执行mysqldump。
例如:#/usr/local/mysql/bin/mysqldump-uroot-p123456shuju>shuju.sql;

如何在Linux服务器中备份

Linux系统下使用脚本定期备份数据库。
代码如下:#!/bin/bash#Setting#设置数据库名称、数据库登录名、密码、备份路径、日志路径、数据文件位置、备份方式#默认备份方式为mysqldump,也可以是mysqldump、mysqldotcopy。
如果注释掉第18行,默认情况下会通过标签进行备份。
#默认以root(空)登录mysql数据库,备份到/root/dbxxxxx.tgzDBName=mysqlDBUser=rootDBPasswd=123456BackupPath=/home/wang/www/backup/mysql/mysqlbackupLogFile=/home/wang/www/巴库p/mysql/db.logDBPath=/var/lib/mysql/#BackupMethod=mysqldump#BackupMethod=mysqlhotcopy#BackupMethod=tar#SettingEndNewFile="$BackupPath"db$(date+%y%m%d).tgzDumpFile="$BackupPath"db$(日期+%y%m%d)OldFile="$BackupPath"db$(日期+%y%m%)d--date='5daysago').tgzecho"------------------------------------------------------------">>$LogFileecho$(日期+"%y-%m-%d%H:%M:%S")>>$LogFileecho"-------------------------">>$LogFile#DeleteOldFileif[-f$OldFile]thenrm-f$OldFile>>$LogFile2>&1echo"[$OldFile]删除OldFile成功!">>$LogFileelseecho"[$OldFile]NoOldBackupFile!">>$LogFilefiif[-f$NewFile]thenecho"[$NewFile]备份文件存在,无法备份!">>$LogFileelsecase$BackupMethodinmysqldump*)if[-z$DBPasswd]thenmysqldump-u$DBUser--opt$DBName>$DumpFileelsemysqldump-u$DBUser-p$DBPasswd--opt$DBName>$DumpFilefitarczvf$NewFile$DumpFile>>$LogFile2>&1echo"[$NewFile]备份成功!">>$LogFilerm-rf$DumpFile;;mysqlhotcopy*)rm-rf$DumpFilemkdir$DumpFileif[-z$DBPasswd]thenmysqlhotcopy-u$DBUser$DBName$DumpFile>>$LogFile2>&1elsemysqlhotcopy-u$DBUser-p$DBPasswd$DBName$DumpFile>>$LogFile2>&1fitarczvf$NewFile$DumpFile>>$LogFile2>&1echo"[$NewFile]备份成功!">>$LogFilerm-rf$DumpFile;;*)/etc/init.d/mysqldstop>/dev/null2>&1tarczvf$NewFile$DBPath>>$LogFile2>&1/etc/init.d/mysqldstart>/dev/null2>&1echo"[$NewFile]备份成功!">>$LogFile;;esacfiecho"---------------------------------------------------------------“echo#lftp-flftp.sh如果FTP可用同时上传到ftp。
然后使用crontab命令生成/var/spool/cron/root文件:#crontab–e//打开编辑窗口。
第一行会有内容格式提示。
这里输入命令//mhdommondowcommand//具体含义是:分钟小时日期月份工作日命令,在某月(mon)的某一天(dom)或者什么时间(h,24-)执行一条命令(command)小时时钟)和星期几的分钟(m)//例如:1002***/home/backup/autobackupmysql.sh(表示备份脚本在2:10执行是)