Java 我的mysql服务器远程连接的数据库URL到底是什么?
尝试使用JDBC自动驱动程序加载连接到mysql数据库,语法要求如下:JDBC:SubtocolName:databaseURL 我知道如何在提供mysql服务器的本地主机上使用它,但我还没有远程完成这项工作,我希望第一次就把它做好,而不是编写我的应用程序,无法在.xml文件中设置断点等,并混淆我可能遇到的其他问题的根源 到目前为止,我有:“jdbc:mysql:[url???]:3306/dbname?autoReconnect=true” 它仅仅是服务器的ip地址,还是myusername@[ipAddressofServer],或者完全是其他什么?我不认为这是真的name@localhost:[port#],因为这表示服务器驻留在本地。我在网上看到过使用“服务器名称”的说法。这等同于主机名吗?若不涉及在本地主机上运行的mysql,那个么这个示例将非常好。谢谢 (警告:这里有一些轻微的过度简化。) 如您所知,可以通过两种方式识别(直接)连接到Internet的计算机:Java 我的mysql服务器远程连接的数据库URL到底是什么?,java,mysql,sql,jdbc,Java,Mysql,Sql,Jdbc,尝试使用JDBC自动驱动程序加载连接到mysql数据库,语法要求如下:JDBC:SubtocolName:databaseURL 我知道如何在提供mysql服务器的本地主机上使用它,但我还没有远程完成这项工作,我希望第一次就把它做好,而不是编写我的应用程序,无法在.xml文件中设置断点等,并混淆我可能遇到的其他问题的根源 到目前为止,我有:“jdbc:mysql:[url???]:3306/dbname?autoReconnect=true” 它仅仅是服务器的ip地址,还是myusername@
151.101.1.69
(但现在可能更长更可怕),或stackoverflow.com
,有时称为“主机名”127.0.0.1
和localhost
都表示“这台计算机”
因此,如果要连接到远程计算机,可以使用其DNS名称或IP地址作为连接字符串中的“服务器名称”。例如,如果在上面的示例中有一台MySQL服务器在机器上运行,那么您的连接字符串可能是
jdbc:mysql://151.101.1.69:3306/databasename?useUnicode=true&characterEncoding=utf8
或
jdbc:mysql://stackoverflow.com:3306/databasename?useUnicode=true&characterEncoding=utf8
注:
- 您实际上不需要指定端口3306,因为这是MySQL的默认端口。如果从连接字符串中省略端口号,驱动程序将尝试使用3306
只是添加到连接字符串中的常见属性的示例。它们有很多,你可以阅读更多关于它们的信息useUnicode=true&characterEncoding=utf8
- “IP地址”,历史上的形式为
(但现在可能更长更可怕),或151.101.1.69
- “DNS(域名服务)名称”,例如
,有时称为“主机名”stackoverflow.com
当应用程序想要连接到自己的计算机时,可以使用上述两种特殊情况
- (警告:这里有一些轻微的过度简化。)
如您所知,可以通过两种方式识别(直接)连接到Internet的计算机:
127.0.0.1
和localhost
都表示“这台计算机”
因此,如果要连接到远程计算机,可以使用其DNS名称或IP地址作为连接字符串中的“服务器名称”。例如,如果在上面的示例中有一台MySQL服务器在机器上运行,那么您的连接字符串可能是
jdbc:mysql://151.101.1.69:3306/databasename?useUnicode=true&characterEncoding=utf8
或
jdbc:mysql://stackoverflow.com:3306/databasename?useUnicode=true&characterEncoding=utf8
注:
- 您实际上不需要指定端口3306,因为这是MySQL的默认端口。如果从连接字符串中省略端口号,驱动程序将尝试使用3306
只是添加到连接字符串中的常见属性的示例。它们有很多,你可以阅读更多关于它们的信息useUnicode=true&characterEncoding=utf8