2

私はMySQLデータベースにxeroundを使用しており、過去1年間、GoogleDocsSpreadsheetのGoogleAppsScriptを使用してデータベースに接続しています。今、突然接続されていません。ユーザー名とパスワードを確認し、インスタンス情報を再確認しました。xeroundに連絡して、MySQLデータベースに問題があるかどうかを確認したところ、すべてが正常であると言われました。同じユーザー名とパスワードを使用して、phpMyAdminを介してデータベースに接続できます。Googleドキュメントスプレッドシートにあるコードは次のとおりです。

var connectionstring = "jdbc:mysql://instance276.db.xeround.com.:3859/pantalog";
var conn = Jdbc.getConnection(connectionstring, "xxxxxxxxxx", "xxxxxxxxx");
var stmt = conn.createStatement();

「データベース接続の確立に失敗しました。接続文字列、ユーザー名、パスワードを確認してください。」というエラーが表示されます。

Googleは、私が知らないJDBCに変更を加えましたか?

4

3 に答える 3

1

まず、接続文字列にタイプミスがあります。「.」は使用しないでください。ポート番号の前に...

var connectionstring = "jdbc:mysql://instance276.db.xeround.com.:3859/pantalog";

する必要があります

var connectionstring = "jdbc:mysql://instance276.db.xeround.com:3859/pantalog";

それが単なるタイプミスだった場合...

私は最近、同じような問題を抱えていて、これは実際には DNS の問題だと思います! (はい、それは不可能のように聞こえます)。

MySQL サーバーの DNS エントリを使用しても同じエラーが発生します。

次に、Google の DNS サーバー (8.8.8.8) を使用して nslookup を実行し、その IP アドレスを取得して、代わりに接続文字列で使用します...

その DNS 名は 107.22.255.231 に解決されます

それからそれは動作します

奇妙ですが、試してみてください。

また、それが投稿の実際のユーザー名とパスワードでないことを願っています:)

于 2012-09-29T08:38:09.670 に答える
0

この解決策は私にとってはうまくいきました。接続文字列でホスト名を IP に置き換えると、問題が修正されます。JDBC のリゾルバーが壊れているようです。

于 2012-09-29T14:28:09.573 に答える