如何在连接Docker的MySQL容器时一键完成登录并切换数据库?
问题:如何将Docker中MySQL登录+自动切换数据库写成一行命令?
我现在用这条命令连接Docker里的MySQL容器并登录:
docker exec -it mysql mysql --password=password
其中第一个mysql是容器名称,第二个是要执行的MySQL客户端命令。登录后我需要手动输入use mydatabase;切换数据库,能不能把这两步合并成一行命令?
解决方案
当然可以,利用MySQL客户端的--init-command参数就能实现,它会在建立连接后自动执行指定的初始化命令。修改后的完整命令如下:
docker exec -it mysql mysql --password=password --init-command="use mydatabase;"
执行这条命令后,你会直接进入MySQL交互式提示符,并且已经自动切换到mydatabase数据库,无需再手动输入切换命令。
如果你的密码包含特殊字符,建议把密码放在~/.my.cnf配置文件里避免明文暴露,不过这属于额外优化,核心需求用上面的命令就能解决。
内容的提问来源于stack exchange,提问作者gsej
相关产品推荐
相关产品推荐

