IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    用shell批量导入多个sql文件到mysql

    mmfei发表于 2015-04-18 03:08:59
    love 0

    由于个别原因 , 周五周六连续借机写了python和shell , 爽了一把 , 哈哈. 好久没这么写过了

    总结下 , 留了这么个工具

    # 这是一个批量导入某个目录($p)下的所有.sql结尾的文件的内容到mysql的工具
    # 每导入一个文件 , 则会自动在对应文件追加为.done后缀
    # 如果需要再次执行 , 请进入文件目录($p) 执行 : ls | sed "s/.done//" | xargs -I {} mv {}.done {}; , 即可再次导入
    # 运行方式 , 直接用shell执行 , 例如: sh 我要执行的文件.sh
    p="/data1/htdocs/mmfei.fxtools.com/daufix/"; #这是要执行的sql的文件目录 , 所有文件以.sql结尾
    dbHost='127.0.0.1'
    dbUser='root'
    dbPassword='111'
    dbName='d_test'
    cd $p;
    for f in `ls $p/*.sql`
    do
        echo $f;
        # echo "mysql -h $dbHost -u $dbUser -p$dbPassword $dbName -e \"source $f\""
        mysql -h $dbHost -u $dbUser -p $dbPassword $dbName -e "source $f";
        mv $f $f.done;
    done
    echo 'finished!'

     



沪ICP备19023445号-2号
友情链接