如何实现远程自动备份mysql

2019-05-16    来源:爱站科技

容器云强势上线!快速搭建集群,上万Linux镜像随意使用

定时备份mysql数据库可以帮助我们避免不少不必要的麻烦,但是你知道如何实现远程自动备份mysql吗?其实我们对远程的mysql进行操作时,就需要实现手动备份和自动备份,现在我们去看看具体内容吧。

一、实现本地自动备份数据库很简单:
1.以root身份登陆
2.计划任务(每天的3:30自动执行?/usr/bin/mysqlbackup)
crontab
0?3:30?*?*?*?/usr/bin/mysqlbackup?
3.写一个自动备份数据库脚本
vi?/usr/bin/mysqlbackup
#!/bin/bash
mv?/home/.../db_bak5.tgz?/home/.../db_bak6.tgz
mv?/home/.../db_bak4.tgz?/home/.../db_bak5.tgz
mv?/home/.../db_bak3.tgz?/home/.../db_bak4.tgz
mv?/home/.../db_bak2.tgz?/home/.../db_bak3.tgz
mv?/home/.../db_bak1.tgz?/home/.../db_bak2.tgz
rm?-rf?/home/.../db_bak.txt
/usr/bin/mysqldump?-uroot?-ppassword?dbname
>?/home/.../db_bak.txt
cd?/home/.../
tar?czvf?db_bak1.tgz?db_bak.txt
二、这样每天的3:30就会在本地目录/home/.../下生成相应的数据库备份,开始由于/home/.../目录下缺少数据系统会提示错误,这是正常的
三、至于远程备份可以配合使用ftp或scp命令实现,方法很简单,查一下相关命令的使用,然后再改动一下mysqlbackup脚本就可以了


在win2003下MySQL数据库每天自动备份

终于让服务器每天早上备份一次?MySQL?数据库并自动打包,同时删除?5?天前的备份文件.?分享如下.?

1.?环境:?windows?server?2003?+?Apache?2.0?+?PHP5?+?MySQL?4.0.26?.?

2.?假设?PHP?安装目录为?D:/php?,MySQL?安装目录为?D:/mysql.?

3.?在?D:/php?下建立目录?WinRAR,?把你?winrar?安装目录下的?WinRAR.exe?和?RARReg.KEY?复制到?D:/php/WinRAR?.?

4.?D:/php?下建立文件?mysql_backup.php:?

/*/////////////////////////?
#FileName:?mysql_backup.php?
#Author:?faisun?
#Website:?http://www.softpure.com?
////////////////////////*/???
//保存目录,路径要用反斜杠.您需要手动建立它.?
$store_folder?=?'D:\databse_backup';?
//用户名和密码?
//该帐号须有操作[所有]的数据库及FILE的权限?
//否则有些数据库不能备份.?
$db_username?=?"root";?
$db_password?=?"";?
$time=time();?
$nowdir?=?"$store_folder\\".date("Ymd",$time)."";?
if(file_exists("$nowdir.rar"))?die("File?exists.\n");?
@mkdir($nowdir);?
mysql_connect("localhost","$db_username","$db_password");?
$query=mysql_list_dbs();?
while($result=mysql_fetch_array($query)){?
system?(dirname(__FILE__).'\..\mysql\bin\mysqldump?--opt?'."$result[Database]
-u{$db_username}?".($db_password?"-p{$db_password}":"")."?>
$nowdir\\$result[Database].sql");?
echo?"dumping?database?`$result[Database]`...\n";?
}?
echo?"\nWinrar?loading...\n";?
system(?dirname(__FILE__)."\\WinRAR\\WinRAR.exe?a?-ep1?-r?-o+?-m5?-df?\"$nowdir.rar\"?
"$nowdir\"?"?);?
//删除?5?天前的文件?
@unlink("$store_folder\\".date("Ymd",$time-86400*5).".rar");?
echo?"\nOK!\n";?
>?

5.?D:/php?下建立文件?mysql_backup.bat,内容只有一句:?

php.exe?mysql_backup.php?

6.?双击该?bat?文件运行,如果能备份了,OK,下一步添加任务计划.?

7.?把?D:/php/mysql_backup?添加到任务计划,时间选每天.?根据服务器的监测结果,每天早上?5-8?时为流量低峰期.?由于?5-7?时有些数据库的清理工作,可以把时间定在了早上?8?点整.

mysql的自动备份------这篇来自动网

time=`date?+%G%I%d%H%M`?#年月日时分

db=products
echo?"#产品库\r\n"?>/sqlbak/${db}_$time.sql?#备份文件名为[库名_年月日时分.sql]
mysqldump?--add-drop-table?-c?--allow-keywords?--force?--password=1234567890?--user=root?$db?>>/sqlbak/${db}_$time.sql


db=news???#另一个库
echo?"#新闻库\r\n"?>/sqlbak/${db}_$time.sql
mysqldump?--add-drop-table?-c?--allow-keywords?--force?--password=1234567890?--user=root?$db?|bzip2?-9?>/sqlbak/${db}_$time.sql.bz2


#--add-drop-table是添加一个删出命令。
#-c是完整插入,每行插入都包括字段名
#--force是出错也继续
#--allow-keywords是对于保留字做字段名时对字段名加反引号。

如果有疑问大家可以留言交流,谢谢大家对西部数码技术频道的支持!

标签: [db:TAGG]

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。

上一篇:win 2003的技巧整理

下一篇:如何解决数据库自动还原失败