How to execute MySQL command from the host to container running MySQL server?
You can connect to your mysql container and run your commands using:
docker exec -it mysql bash -l
(Where mysql
is the name you gave the container)
Keep in mind that anything you do will not persist to the next time your run a container from the same image.
To connect to the MySQL database using MySQL command line client.
I connect to the bash into the running MySQL container:
$ docker exec -t -i
container_mysql_name
/bin/bash
-i
is the shortcut for--interactive
option. This options is used for keep STDIN open even if not attached-t
is the shortcut for--tty
option, used to allocate a pseudo-TTYI run MySQL client from bash MySQL container:
$ mysql -uroot -proot
-u
is shortcut for--user=name
option, used to define user for login if not current user.-p
is shortcut for-password[=name]
option, used to define password to use when connecting to server. If password is not given it's asked from the tty.Disco!
docker exec -i some_mysql_container mysql -uroot -ppassword <<< "select database();"