zjxhx 发表于 2018-9-28 12:35:05

Mysql 备份时排除某些表

  由于数据库里面有几个日志表非常大,而日志信息重要性不大,所以需要在备份时排除这几个表,加快备份的时间,我对数据库也不太熟悉,暂时只知道两种办法:
  一、把数据表单独备份
  写脚本先获取所有的表,然后排除不需备份的表,再用for循环进行单表备份:
  


[*]#!/bin/bash
[*]i=`mysql -u root cactidb -e "show tables;" | awk '!/Tables_in_cactidb/&&!/rra/&&!/snmp_query_graph_rrd_sv/'`
[*]for k in $i
[*]    do mysqldump -u root cactidb $k >> ufo.sql
[*]done
  

  二、直接利用mysqldump 参数--ignore-table=tablename,把不需要的表排除,使用如下:

mysqldump --ignore-table=cactidb.snmp_query_graph_rrd_sv -uroot -p123456 cactidb > cacti.sql  不知道有没有更好的办法,能把不需要备份的表的结构导出来,而不需要数据呢。
  参考:http://storysky.blog.51cto.com/628458/278093


页: [1]
查看完整版本: Mysql 备份时排除某些表