在linux下经常向其他服务器传输文件。有时在总带宽的限制下。不可能时时跑满占用带宽。这种情况下我们就需要对传输进行一定的限制和自定义。以下写出两个经常使用的传输命令的参数,希望对大家有一定帮助。
1.scp 限速100KB/s
scp -l 1000 testfiles root@192.168.1.108
此时的传输速率就是1M/8=100KB左右
2.rsync 限速100KB/s
rsync -auvzP –bwlimit=100 本地文件 远程文件
参数说明:
v:详细提示
a:以archive模式操作,复制目录、符号连接,等价于 -rlptgoD 。
z:压缩
u:只进行更新,防止本地新文件被重写,注意两者机器的时钟的同时
P:是综合了–partial –progress两个参数,
此时的rsync支持了断点续传。
通常情况下。大文件,我建议大家使用rsync。因为有断点续传。可以有更好的选择。
对于需要确保mysql数据库完整性的网站,mysql的二进制日志至关重要。比如你做了mysql数据库的主从备份,你认为这应该能确保mysql从数据库是最新的内容了,这的确没错,但有一种情况,比如你误删除了数据,或者被黑客入侵而清除了数据库,这时mysql从服务器也会跟主数据库同步,这是你不想看到的,但数据确实没了。但是如果你每天进行了数据库的完整备份,而且mysql的二进制日志还在的话,这将有可能恢复最新的数据。下面介绍方法。
1、开启二进制日志
在使用二进制日志恢复数据库时,请确保你已经开启二进制日志,检查my.cnf文件是否存在log-bin=mysql-bin。
2、定期完整备份
你还需要间隔一定的时间做数据库的完整备份,只有这样你才有可能快速的恢复最新数据。
3、查看备份时间
查看你备份的时间,如dedecmsv57gbksp1.sql,取最后一行:– Dump completed on 2012-11-08 11:11:48。
4、导出二进制日志
暂时关闭网站,防止新数据写入,导出二进制日志:
mysqlbinlog mysql-bin.000001 -d dedecmsv57gbksp1 –start-datetime=”2012-11-08 11:11:48″ >binlog.sql
5、调整binlog.sql
编辑binlog.sql,删除误操作的语句。
6、导入数据
重建数据库dedecmsv57gbksp1,导入dedecmsv57gbksp1.sql,接着导入binlog.sql。