我这里就用cactidb来举例吧,我这里不备份 snmp_query_graph_rrd_sv表和 rra表,先把需要备份的表列出来,这样写
mysql -u root cactidb -e "show tables;" | awk '!/rra/&&!/snmp_query_graph_rrd_sv/'
[root@nodec 02]# mysql -u root cactidb -e "show tables;" | awk '!/rra/&&!/snmp_query_graph_rrd_sv/'
Tables_in_cactidb
cdef
cdef_items
colors
.....
那两个表没了,可是Tables_in_cactidb还在,没关系,加上就好了
mysql -u root cactidb -e "show tables;" | awk '!/Tables_in_cactidb/&&!/rra/&&!/snmp_query_graph_rrd_sv/'
好了,现在变量有了,下面就是具体的备份了
写个脚本 sql.sh 内容如下
#!/bin/bash
i=`mysql -u root cactidb -e "show tables;" | awk '!/Tables_in_cactidb/&&!/rra/&&!/snmp_query_graph_rrd_sv/'`
mysqldump -u root cactidb $i >> ufo.sql
还有一种方法 就是用for循环 如下
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
好了,给个X 权限执行以下吧,别忘了最好加上绝对路径~~
是不是很简单 O(∩_∩)O~