linux自动备份,自动导入mysql数据

最近看了写自动备份和自动导入的数据程序,写的有些杂乱,所以自己整理一下备用。

因为数据表中有涉及到innodb,所以不能简单的直接备份mysql下面的data文件夹。

这里备份的话可以写一个linux下的shell脚本,例如bakup.sh,然后给这个脚本读写权限,最后放入crontab里定时运行就可以了

#!/bin/sh
year=`date +%Y`
month=`date +%m`
day=`date +%d`
hour=`date +%H`
sqlname="data"$year"_"$month"_"$day"_"$hour".sql"  #备份成的文件名
dir="/home/data" #备份路径
user="root" #数据库用户名
passwd="123456" #数据库密码
dbname="test" #数据库名
mysqldump -u$user -p$passwd $dbname > $dir/$sqlname 
#这里只适合本机备份,若是需要备份远程主机,可以加上相应的-h$host
相应的,也可以建一个定时导入的数据脚本autoimport.sh

#!/bin/sh
year=`date +%Y`
month=`date +%m`
day=`date +%d`
hour=`date +%H`
sqlname="data"$year"_"$month"_"$day"_"$hour".sql"
dir="/home/data"
user="root"
passwd="123456"
dbname="test"
mysql -u$user -p$passwd $dbname < $dir/$sqlname

你可能感兴趣的:(mysql自动备份,定时备份mysql,linux备份mysql)