我从docker hub中提取了mysql / mysql-server映像。现在我想创建一个包含名称和电子邮件列的表,并从java
连接到这个mysql数据库我可以使用以下语句连接到此数据库吗?
Connection connect = DriverManager.getConnection(" jdbc:mysql:// xxxxxxx:xxxxx / dbname"," uname"," pwd");
答案 0 :(得分:0)
您可以使用docker inspect <container_name>
检查泊坞窗容器的详细信息。在输出中,您可以在&#34; NetworkSettings&#34;下找到容器的IP地址。部分。
获取容器的IP地址后,您可以将其视为远程服务器,并使用普通的mysql-client或使用JDBC的Java代码连接到它。
答案 1 :(得分:0)
你应该这样做。你以前跑过容器了吗?从您想要连接到DB(容器?)的位置,尝试使用&#34; telnet&#34;
如果接受了连接,你就可以了。
答案 2 :(得分:0)
您应该使用db服务名称(或容器名称)
创建连接字符串DriverManager.getConnection("jdbc:mysql://<mysqlcontainername>/dbname","uname","pwd");
请注意,您的Java应用程序容器和mysql容器必须位于同一个docker网络中。
我建议创建一个从环境变量注入的完整连接字符串(对于Sysadmins来说这是一个非常好的过程):
DriverManager.getConnection("jdbc:mysql://username:password@<mysqlcontainername>/dbname");