Docker mysql - 禁用自动提交

Docker mysql - disable autocommit

提问人:Mario Rovelli 提问时间:3/6/2023 最后编辑:Mario Rovelli 更新时间:3/12/2023 访问量:155

问:

我使用命令运行 docker image mysql 5.7.41

docker run --name mysql5r -e MYSQL_ROOT_PASSWORD=aaa -p 3306:3306 -d mysql:5.7.41 --autocommit=FALSE

但是当我连接到mysql并运行命令时

SHOW VARIABLES WHERE Variable_name='autocommit';

它返回 ON。如何禁用自动提交?

我也尝试

docker run --name mysql55 -p3306:3306 -e MYSQL_ROOT_PASSWORD=aa -d mysql:5.7.41 --skip-autocommit

谢谢

mysql docker 自动提交

评论


答:

0赞 A l w a y s S u n n y 3/6/2023 #1

您可以尝试像这样传递 docker 环境变量来禁用自动提交,

-e MYSQL_INIT_COMMAND="SET autocommit=0;"

完整命令:

docker run --name mysql5r -e MYSQL_ROOT_PASSWORD=aaa -e MYSQL_INIT_COMMAND="SET autocommit=0;" -p 3306:3306 -d mysql:5.7.41

评论

0赞 Mario Rovelli 3/6/2023
我使用 -e MYSQL_INIT_COMMAND=“SET autocommit=0;”,但没有任何变化
0赞 A l w a y s S u n n y 3/6/2023
试试这个完整的命令:docker run --name mysql5r -e MYSQL_ROOT_PASSWORD=aaa -e MYSQL_INIT_COMMAND="SET autocommit=0;" -p 3306:3306 -d mysql:5.7.41
0赞 Mario Rovelli 3/7/2023
什么都没有改变。Autocommit il always on.MYSQL_INIT_COMMAND仅适用于 MySQL 8。我正在使用mysql 5.7.41