场景
Docker中部署mysql数据库
在上面使用Docker部署数据库之后,运行SpringBoot的jar包连接时报错,提示:
java.sql.SQLSyntaxErrorException:Table ‘xx’.QRTZ_LOCKS’doesn’t exist

注:
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。
实现
这是因为在Docker中启动mysql容器时没有设置忽略表名大小写。
原来的启动容器的命令
docker run -p 3306:3306 --name mysql -v /usr/local/docker/mysql/conf:/etc/mysql -v /usr/local/docker/mysql/logs:/var/log/mysql -v /usr/local/docker/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
需要添加忽略大小写的命令
--lower_case_table_names= 1
添加之后的命令
docker run -p 3306:3306 --name mysql -v /usr/local/docker/mysql/conf:/etc/mysql -v /usr/local/docker/mysql/logs:/var/log/mysql -v /usr/local/docker/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7 --lower_case_table_names= 1