linux cp区分大小写,mysqldump问题具有区分大小写? WIN->的Linux

今天我必须这样做.我已经有小写的Windows数据库,并需要使用区分大小写的表名称导入到linux数据库,所以使用lowecase_table_names选项的播放不是一个选项:)

它看起来’show tables’显示了适当排序的表名,并且转储已使用`字符转义了表名.我用以下算法成功导入了数据库:

>我有mydb.sql与小写Windows转储

>我开始在Linux中创建数据库模式的应用程序,具有区分大小写的名称.

然后我在转储中有小写名称,在mysql数据库中有区分大小写的名称.我用sed&转换了转储. awk与以下脚本:

#!/bin/bash

MYSQL="mysql -u root -p mydb"

FILE=mydb.sql

TMP1=`mktemp`

TMP2=`mktemp`

cp $FILE $TMP1

for TABLE in `echo "show tables" | $MYSQL`; do

LCTABLE=`echo $TABLE| awk '{print tolower($0)}'`

echo "$LCTABLE --> $TABLE"

cat $TMP1 | sed "s/\`$LCTABLE\`/\`$TABLE\`/" > $TMP2

cp $TMP2 $TMP1

done

cp $TMP1 $FILE.conv

rm $TMP1

rm $TMP2

转储已正确转换.在Linux中导入后一切正常.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值