在当前用户的home目录下新建文件 $HOME/.my.cnf 配置如下
[client]
password = yourPwd
#!/bin/bash
function readFileTosql()
{
local imgArray=($(ls /myImages/ |grep -v cover |awk '{gsub(/\s/,"%20");print $0}' -))
local sqlTxt="\"";
local MysqL="MysqL -uroot -hyourIp --default-character-set=utf8 -A -N"
#这里面有两个参数,-A、-N,-A的含义是不去预读全部数据表信息,这样可以解决在数据表很多的时候卡死的问题
#-N,很简单,Don't write column names in results,获取的数据信息省去列名称
local i=0
##删除数据
local delsql=`echo "truncate table databases.table ;"`
$MysqL -e "$delsql"
##插入数据
while [ $i -lt ${#imgArray[@]} ]
do
local title=${imgArray[$i]//.gif/""}
local sql=`echo "INSERT INTO databases.table(title,cover_url,gif_url) VALUES($sqlTxt$title$sqlTxt,$sqlTxt$title.jpg$sqlTxt,$sqlTxt$title.gif$sqlTxt);"`
#echo $sql
$MysqL -e "$sql"
let i++
done
echo "count:" $i
}
readFileTosql