系统上线了,目前线上只有一台阿里云上面mysq服务器,为了防止意外,数据库备份是必须的。本来想再部署一台mysql服务器,做个主从备份的,为了方便还是先
脚本备份一下,后面有空再部署主从。
最简单就是命令mysqldump定时把数据库导出来即可。
脚本文件:backup.sh
#/bin/bash
if [ -f ~/.bash_profile ];
then
. ~/.bash_profile
fi
LOGFILE=/root/database_backup/backup.`date +%m%d`.sql.gz
mysqldump -h127.0.0.1 -u root -p*** mydatabase| gzip > $LOGFILE
/root/database_backup/expect_scp 120.26.*.* user passwd $LOGFILE /home/backup/mysql_backup
~
上面脚本是先导出备份文件 然后scp备份到另外一台服务器上面:
scp备份脚本expect_scp:
#!/usr/bin/expect
set timeout 10
set host [lindex $argv 0]
set username [lindex $argv 1]
set password [lindex $argv 2]
set src_file [lindex $argv 3]
set dest_file [lindex $argv 4]
spawn scp $src_file $username@$host:$dest_file
expect {
"(yes/no)?"
{
send "yes
"
expect "*assword:" { send "$password
"}
}
"*assword:"
{
send "$password
"
}
}
expect "100%"
expect eof
然后添加到crontab每天定时执行即可。