从MySQL泊坞窗图像导出数据

我使用官方的MySQL docker镜像。 这是一个很好的形象! 不过,我很难从实例中导出数据而没有错误。 我这样运行我的出口:

docker run -it --link containername:mysql --rm mysql sh -c 'exec mysqldump -h"$MYSQL_PORT_3306_TCP_ADDR" -P"$MYSQL_PORT_3306_TCP_PORT" -uroot -p"$MYSQL_ENV_MYSQL_ROOT_PASSWORD" dbname' | gz > output.sql.gz 

但是,这导致警告:

 "mysqldump: [Warning] Using a password on the command line interface can be insecure." 

作为输出文件的第一行。 显然,这会导致任何其他用于使用数据的MySQL进程的问题。

有没有什么办法来抑制mysqldump客户端的这个警告?

我意识到这是一个古老的问题,但对于那些磕磕绊绊的人来说,我现在整理了一篇关于从mysql docker容器导出和导入的文章: https : //medium.com/@tomsowerby/mysql-backup-and-restore-in -docker-fcc07137c757它涵盖了“在命令行界面上使用密码…”警告以及如何绕过它。

要消除这个确切的警告,您可以在MYSQL_PWD环境variables中传递密码或使用其他连接方法 – 请参阅http://dev.mysql.com/doc/refman/5.7/en/password-security-user.html

 docker run -it --link containername:mysql --rm mysql sh -c 'export MYSQL_PWD="$MYSQL_ENV_MYSQL_ROOT_PASSWORD"; exec mysqldump -h"$MYSQL_PORT_3306_TCP_ADDR" -P"$MYSQL_PORT_3306_TCP_PORT" -uroot dbname' | gz > output.sql.gz