日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql shell 回车换行_【shell mysql 导出数据到csv脚本,完美解决乱码转义符等问题】-费元星...

發(fā)布時間:2023/11/30 数据库 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql shell 回车换行_【shell mysql 导出数据到csv脚本,完美解决乱码转义符等问题】-费元星... 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

#!/bin/bash

#@author:feiyuanxing 【既然笨到家,就要努力到家】

#@date:2017-12-05

#@E-Mail:feiyuanxing@gmail.com

#@TARGET:一鍵導(dǎo)出mysql數(shù)據(jù)到 csv

#@CopyRight:本腳本遵守 未來星開源協(xié)議(http://feiyuanxing.com/kaiyuanxieyi/kaiyuanxieyi.html)

#####################################################################################

#### 常量池 ####

IP=127.0.0.1

user=root

database=msyql

passwd=root

port=3306

#導(dǎo)出路徑,默認(rèn)取【費(fèi)元星版權(quán)Q:9715234】當(dāng)前路徑下tmp

basepath=$(cd `dirname $0`; pwd)

data_path=${basepath}/tmp

mkdir -p ${data_path} && cd ${data_path}

#編碼

unicode=utf8

#分隔符

separator="|"

#轉(zhuǎn)【費(fèi)元星版權(quán)Q:9715234】義符- 謹(jǐn)記注:能不該不要改

escape_character="\\"

#####################################################################################

MYSQL=`which mysql`

istar=

function baktable(){

statement="use $database;set names ${unicode};select * from $1;"

echo "下載轉(zhuǎn)換$database:$1 ..."

$MYSQL -h"${IP}" -u"${user}" -p"${passwd}" -P"${port}" -e "${statement}" > 1.log

cat 1.log|sed 's/\t/|/g' > $database"_"$1.csv

if [ ""x = ${istar}x ]; then

tar -zcf "$database"_"$1.csv.tar.gz" "$database"_"$1.csv"

rm -rf $database"_"$1.csv

fi

}

function main(){

#show databases in mysql

echo "正在導(dǎo)出庫:$database"

if [ -z $database ] ; then

echo "database in mysql:"

echo "*******************"

$MYSQL -h"${IP}" -u"${user}" -p"${passwd}" -P"${port}" -e "set names ${unicode};show databases;"

echo "*******************"

#choose a database

read -t 60 -p "您未定義需要導(dǎo)出的數(shù)據(jù)庫,請在上表選擇一個數(shù)據(jù)庫:" database

fi

#show tables in the database

database_tables=`$MYSQL -h"${IP}" -u"${user}" -p"${passwd}" -P"${port}" -e "use ${database};show tables;"`

#echo "test:"$MYSQL -h"${IP}" -u"${user}" -p"${passwd}" -P"${port}" -e "use ${database};show tables;"

echo "*******************"

#choose a table

read -t 60 -p "請選擇一個表,默認(rèn)為導(dǎo)出全部表【點(diǎn)擊回車】:" table

read -t 60 -p "是否需要壓縮,默認(rèn)壓縮【點(diǎn)擊回車】:" istar

if [ -z $table ] ; then

tables_tmp=`echo "${database_tables}" |tail -n +3|sed 's/^[ \t|]*//g' `

for line in `echo ${tables_tmp}`

do

#echo "正在導(dǎo)出表:${line} "

baktable ${line}

done

#baktable

else

baktable ${table}

fi

}

main

#baktable tb_company_base

echo "【費(fèi)元星版權(quán)Q:9715234】Done successfully!Please check the file!"

總結(jié)

以上是生活随笔為你收集整理的mysql shell 回车换行_【shell mysql 导出数据到csv脚本,完美解决乱码转义符等问题】-费元星...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。