docker mysql,在exec期间发送sql命令

时间:2018-04-26 15:17:40

标签: docker docker-exec

我正在使用bash脚本创建一个mysql 5.6 docker,我想更改密码。 如何从bash发送sql命令到docker?

构建: sudo docker build -t mysql-5.6 -f ./.Dockerfile。

run.sh:

 #!/bin/bash
    sudo docker run --name=mysql1 -d mysql-5.6
    sudo docker exec -it mysql1 mysql -uroot -p$base_password \
        <<< SET PASSWORD FOR 'root'@'localhost' = PASSWORD('new_pass');

1 个答案:

答案 0 :(得分:0)

您需要像描述here一样绑定MySQL端口。要保留端口3306,您可以通过以下方式在主机上公开它:

sudo docker run --name=mysql1 -p 3306:3306 -d mysql-5.6

之后,您应该可以在本地主机上使用mysql -u USER -p PASSWORD。这将允许您将命令发送到docker-container。