在当前用户的home目录下新建文件 $HOME/.my.cnf 配置如下
@H_502_3@[client] password = yourPwd @H_502_3@#!/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