Linux定时备份数据库

  • 摘要:一、用命令实现备份首页进入mysql的bin目录1、备份数据#mysqldump-uusername-ppassworddiscuz>discuz_2010-04-01.sql这样就把discuz数据库所有的表结构和数据备份到discuz_2010-04-01.sql里了,如果数据量大会占用很大空间,这时可以利用gzip压缩数据,命令如下:#mysqldump-uusername-ppassworddiscuz|gzip>discuz_2010-04-01.sql
  • 一、用命令实现备份 

    首页进入mysql的bin目录 

    1、备份数据 
    #mysqldump -uusername -ppassword discuz > discuz_2010-04-01.sql 

    这样就把discuz数据库所有的表结构和数据备份到discuz_2010-04-01.sql里了, 
    如果数据量大会占用很大空间,这时可以利用gzip压缩数据, 

    命令如下: 
    #mysqldump -uusername -ppassword discuz | gzip > discuz_2010-04-01.sql.gz 

    系统崩溃,重建系统时,可以这样恢复数据: 
    #mysql -uusername -ppassword discuz < discuz_2010-04-01.sql 

    从压缩文件直接恢复: 
    #gzip < discuz_2010-04-01.sql.gz | mysql -uusername -ppassword discuz 

    二、利用crontab,系统每天定时备份mysql数据库 

    1、创建保存备份文件的路径/mysqldata 
    #mkdir /mysqldata 

    2、创建/usr/sbin/bakmysql文件 
    输入以下内容: 
    mysqldump -umysql -p51uptry uptry | gzip > /mysqldata/uptry`date +%Y-%m-%d_%H%M%S`.sql.gz 

    3、修改文件属性,使其可以执行 
    #chmod +x /usr/sbin/bakmysql 

    4、修改/etc/crontab 
    在下面添加 
    01 3 * * * root /usr/sbin/bakmysql 
    表示每天3点钟执行备份 crontab使用说明 

    5、重新启动crond 
    #/etc/rc.d/init.d/crond restart 
    完成。 

    三、数据的恢复 

    首页进入mysql的bin目录 
    创建数据库 
    #mysqladmin create discuz 
    恢复数据 
    #mysql discuz < /mysqldata/discuz_2010-04-01.sql

猜你喜欢

转载自blog.csdn.net/hjh15827475896/article/details/83050058