如何实现mysql/mongo导出到本地文件

72次阅读
没有评论

共计 1688 个字符,预计需要花费 5 分钟才能阅读完成。

这篇文章给大家分享的是有关如何实现 mysql/mongo 导出到本地文件的内容。丸趣 TV 小编觉得挺实用的,因此分享给大家做个参考,一起跟随丸趣 TV 小编过来看看吧。

一. mongo 导出到本地

#!/bin/bash

set -e

#变量声明

database=

table=

columns=

query=

datafile_path=

#函数定义

usage(){

echo usage(): $0 [-d 数据库名] [-t 表名] [-c 列名] [-q query 条件] 1

exit 1;

}

#执行

#检测参数 给 对应变量赋值

while getopts d:t:c:q: opt

do

case $opt in

d) database=$OPTARG ;;

#t) table=$(echo $OPTARG| tr [A-Z] [a-z] ;

t) table=$OPTARG ;;

c) columns=$OPTARG ;;

q) query=$OPTARG ;;

*) usage;;

esac

done

shift $[$OPTIND – 1]

echo mongoexport –host $mongo_ip –port $mongo_port -u $mongo_user -p $mongo_password  –authenticationDatabase=admin –db ${database} –collection ${table} –readPreference= secondaryPreferred -f ${columns} –query {${query}} –type=csv

mongoexport –host $mongo_ip –port $mongo_port -u $mongo_user -p $mongo_password  –authenticationDatabase=admin –db ${database} –collection ${table} –readPreference= secondaryPreferred -f ${columns} –query {${query}} –type=csv | tail -n+2 |sed s/ObjectID[(]\([0-9a-zA-Z-]\+\)[)]/\1/i   ${table}.csv

二. mysql 导出到本地

#!/bin/bash

set -e

#变量声明

database=

table=

columns=

where=

datafile_path=

#函数定义

usage(){

echo usage(): $0 [-d 数据库名] [-t 表名] [-c 列名] [-w 过滤条件] 1

exit 1;

}

#执行

#检测参数 给 对应变量赋值

while getopts d:t:c:w: opt

do

case $opt in

d) database=$OPTARG ;;

t) table=$(echo $OPTARG| tr [a-z] [A-Z] ;

c) columns=$OPTARG ;;

w) where=$OPTARG ;;

*) usage;;

esac

done

shift $[$OPTIND – 1]

#echo database=${database} , table=${table} , columns=${columns} , where=${where}

#数据库链接

mysql_bin= mysql -h$mysql_ip -P$mysql_port -u$mysql_user -p$mysql_password –database=${database}

#生成 SQL 语句

SQL_STR=

if [${where} == ];then

SQL_STR= select ${columns} from ${table}

else

SQL_STR= select ${columns} from ${table} where ${where}

fi

echo ${SQL_STR}

#执行 SQL 语句 导入到本地文件

$mysql_bin -N -e ${SQL_STR} ${table}.csv

感谢各位的阅读!关于“如何实现 mysql/mongo 导出到本地文件”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-18发表,共计1688字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)