我当前正在使用TestContainers运行Java Spring应用程序来管理我的数据源。 在初始化Docker实例期间,我在Docker上为MySQL实例设置全局变量时遇到问题。
我尝试了一些事情。
TestContainers的方法execInContainer
使用一串命令。
container.execInContainer("mysqld", "--character_set_server=utf8");
此外,您还可以使用以下命令运行初始化脚本
.withInitScript("mysql_test_init.sql");
SET @@global.character_set_client = 'utf8';
SET @@global.character_set_server = 'utf8';
使用execInContainer
似乎无济于事,并且不会更改MySQL中的变量。
由于Docker使用非root用户进行更改,因此使用脚本失败。
Access denied for user 'test'@'%' (using password: YES)
有没有一种方法可以轻松地更改/配置MySQL的全局变量。我在做错什么吗?
一些我想更改的参数:
character_set_client
character_set_connection
谢谢。