linux 怎么备份mysql数据成.sql文件,一个表一个.sql文件,如果单个表数据量大的时候(按行数,或者按大小)把该表分成几个.sql文件。求教高手啊。多谢多谢。

解决方案 »

  1.   

    .sql文件应该是下面的形式
    INSERT INTO `new_sfb` VALUES (4176, 4379, 0.00, 500.00, 0.00, 500.00, 0.00, 0.00, 500.00, 1, '2012-06-03 14:25:20');
    INSERT INTO `new_sfb` VALUES (4177, 4378, 0.00, 288.00, 0.00, 288.00, 0.00, 0.00, 288.00, 1, '2012-06-03 14:25:56');
    INSERT INTO `new_sfb` VALUES (4178, 4380, 0.00, 288.00, 0.00, 288.00, 0.00, 0.00, 288.00, 1, '2012-06-03 21:44:34');
      

  2.   

    如果单表数据量比较大的时候,应压缩一下。
    mysqldump -uroot -p password database tb1>/local/usr/aa.sql;
      

  3.   

    只能用shell写循环做类似
    DAT=`date +%Y%m%d`
    for i in `mysql dbname1 -N -e "show tables;"`
    do
    mysqldump --single-transaction dbname1  $i > /home/backup/${i}_${DAT}
    done
      

  4.   

    方法应该有很多种
    例如用php写个读取数据库的文件 循环输出你想要备份的行的数据到文件里面
    定时执行php文件就可以了
    http://www.eduyo.com/doc/
    在线手册
      

  5.   

    #mysqldump -u user database>/home/usr/test.sql;
    接着会提示输入密码
      

  6.   

    建议看一下田逸mysql备份脚本。