Chinaunix首页 | 论坛 | 博客
  • 博客访问: 204710
  • 博文数量: 75
  • 博客积分: 2049
  • 博客等级: 大尉
  • 技术积分: 780
  • 用 户 组: 普通用户
  • 注册时间: 2009-04-08 12:37
文章分类

全部博文(75)

文章存档

2011年(1)

2010年(9)

2009年(65)

我的朋友

分类: LINUX

2009-12-30 15:27:43

#有时候我们备份的是整个数据库,而还原只要还原一个表就足够了。

#!/bin/bash


usage(){
        echo " -h show this page"
        echo " -t table name"
        echo " -i database backup file"
        echo " -o the result of table sql segment"
}

while getopts t:i:o:h myarg
do
        case $myarg in
                h)
                        usage
                        exit 1;;
                t)
                        tbname=$OPTARG;;
                i)
                        infile=$OPTARG;;
                o)
                        outfile=$OPTARG;;
                *)
                        usage
                        exit 1;;

        esac
done

check_option(){
        if [ -z "$tbname" -o -z "$infile" -o -z "$outfile" ];then
                usage
                exit 1
        fi
}

check_option

awk '/DROP TABLE IF EXISTS `'$tbname'`;/{print;while(getline line){if(line ~ /DROP TABLE IF EXISTS/){break};print line}}' $infile > $outfile

exit 0


阅读(1868) | 评论(0) | 转发(0) |
0

上一篇:autofs简介

下一篇:检查mysql有无响应

给主人留下些什么吧!~~