【问题标题】:mysql remote hostingmysql远程托管
【发布时间】:2012-10-06 06:36:48
【问题描述】:

您好,我在 Eatj.com 上托管了一个小网页(JSP+Mysql),试用期为 15 天。我的问题是本地主机上的数据库连接成功,但托管我的连接字符串后出现异常。 代码:

try{
  String connectionURL = "jdbc:mysql://pulicipaddress/dbname"; 

  Connection con= null; 
  Class.forName("com.mysql.jdbc.Driver"); 
  con = DriverManager.getConnection(connectionURL, "eatjid", "eatjpassword");
...

它说我的连接没有定义。

【问题讨论】:

  • 你在哪里指定了端口?应该是jdbc:mysql://pulicipaddress:port/dbname
  • ipchicken显示的3306端口还是远程端口
  • 不知道 ipchicken 是什么。我说的是3306端口
  • 以及我应该使用哪个 id 密码我的根数据或托管网站之一
  • 不是您本地的,是您的提供商给您的

标签: mysql jsp hosting localhost


【解决方案1】:

如果 JSP 和数据库都托管在eatj.com,我希望您已经从eatj.com 获得了数据库登录信息。我想 - 与大多数主机一样 - 无法从“外部”访问数据库,因此它必须是一些内部服务器名称。

另外,当数据库和访问数据库的代码都在托管环境中运行时,通过公共地址访问数据库是没有意义的。

通常,在托管环境中,事情是这样的:

                      +- "hoster only" ----------------+
External Viewer ----> | JSP-Code ----> Database Server |
                      +--------------------------------+

外部查看器请求由 JSP 创建的网页,JSP 在“hoster only”环境中完成所有操作。

【讨论】:

  • 我不知道两者是否都托管。我只是被要求上传我在 DOS 中创建的 ROOT.war 文件。
  • EATJ 中显示的规则之一如下:如果使用数据库,则必须使用数据库连接池。对于示例连接池代码,您可以下载 sample.zip(检查 DBConnector.java 和 DBUtil.java) 您不仅可以节省资源,还可以通过使用连接池提高应用程序性能。最大并发连接数为 10。
  • 如果数据库不是托管的,那么它应该存储在哪里?我建议您下载示例并通过阅读他们的文档来检查他们的工作方式。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-06-05
  • 2015-05-15
  • 1970-01-01
  • 1970-01-01
  • 2016-04-07
  • 2013-08-03
  • 1970-01-01
相关资源
最近更新 更多