今天在使用docker中的mysql的时候发现从windows中的mysql导出的sql语句进入到docker中mysql的时候就出现问题了,然后找原因,发现是大小写敏感的事情,在网上找解决方案,在docker中修改文件的方式vi指令没有,scp拷出文件的方式也没有,更新源apt-get也不好用,最后一狠心把docker镜像给删除了,重新装了一下docker的镜像,安装的时候命令如下
docker run --name mysql57 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7 --lower_case_table_names=1
关键是最后的--lower_case_table_names=1起了作用,重新导入了一下sql文件,问题解决!
添加一下问题,今天同事用mysql的时候出现如下错误:
Caused by: com.mysql.cj.jdbc.exceptions.PacketTooBigException: Packet for query is too large (2,128 > 1,024). You can change this value on the server by setting the 'max_allowed_packet' variable.
show variables like 'max_allowed_packet'; 看一下mysql当前的值
set max_allowed_packet = 100 * 1024 * 1024; 修改一下mysql的最大值
我这里用的是docker的环境,所以
docker stop 'mysql的dockerId或名字'
docker start 'mysql的dockerId或名字'
然后再次查看已经修改!