日积月累--小技巧之四

续上.....


I. 编程的目的就在于免去大量的人工劳动,让机器代替我们做一些自动化的工作。使用Linux就免不了接触到Cron,用来计划任务。数据库是一个系统的心脏,这么说一点儿也不过,如下使用cron来备份数据库:

/root/database_backup.sh

       mysqldump -uroot -proot test > /root/database/test_`date '+%Y%m%d'`.sql

       上命令假设数据库用户名密码都为root,数据库名为test,备份的数据库格式为:test_20130930.sql

       使用如下命令进行计划任务:

       crontab -e
       0 3 * * * /root/database_backup.sh

       以上指定每天的凌晨三点进行数据库的备份任务。


II. 有时候我们仅需要数据表的一部分数据,却不得不将整个数据表导出,别急Mysql的命令提供了这种功能。

导出goods表中id大于1000的数据

   mysqldump -uroot -proot --where="id>1000" > D:/goods.sql  

III. 使用mysqldump导出的sql文件默认包含drop table, create table语句;许多时候会带来隐患,如下可指定文件中不用包含drop-table,create-table语句。

   mysqldump -uroot -proot --skip-add-drop-table --no-create-info tabasename tablename > tablename.sql

IV. 使用cron进行计划任务,无可避免会使用.sh文件。编辑.sh文件时,在窗口中使用vi命令即可,千万不能使用windows下记事本编辑的.sh文件,因为记事本编辑过的文件换行符会给.sh文件的执行带来麻烦。比如使用该文件生成的文件夹名称会存在乱码:photoM?M,诸如这样。很可能就是记事本编辑过的缘故。


V. 备份时一个永远都会需要的工作。数据量很小时,完整备份不会存在问题;但当数据量巨大到难以承受时,增量备份就是个不错的选择。rsync就是这个一个工具。

    yum install rsync  // 如果系统没有安装rsync

    rsync -ab /var/www/test/   /root/test/  // 使用rsync进行增量备份,将/var/www/test目录备份到/root/test目录

    建议使用cron进行定期增量备份。


Good Bye, Readers. Enjoy Your Time!








  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值