google cloud sqlを使用してGoogle Cloud Platformアプリケーションをセットアップしていて、私の生活の中でコードを実行するとDBに接続できませんGoogleのサーバー。この例にGoogle Cloud SQL(第2世代)に接続したときの通信リンクのエラー
:https://cloud.google.com/appengine/docs/java/cloud-sql/?csw=1 私は、だからそれがすべて良いことだ
Class.forName("com.mysql.jdbc.Driver");
url = "jdbc:mysql://<ip-address>:3306/<database>?user=root";
適切に構築非生産のURLを得ているし、このURLをクラウドSQLに問題なく接続することができます。これは、私がプロダクト接続のために構築しているURLです。
Class.forName("com.mysql.jdbc.GoogleDriver");
url = "jdbc:google:mysql://<project-id>:<cloud sql instance name>/<database>?user=root";
私はダッシュボードとインスタンスID SQLインスタンスのリストからプロジェクトIDを持って、データベースが非PROD値として、私はそれは大丈夫
Product and Instance ID locations I pulled them from
だ確信して非のprod動作するので同じですcom.mysql.jdbc.exceptions.jdbc4.CommunicationsException:サーバーに正常に送信された最後のパケットが0ミリ秒前だった通信リンク障害
それをすべてをデプロイした後、私はエラーメッセージが表示されます。ドライバはサーバからパケットを受信していません。
appengine-web.xmlのuse-google-connector-jはtrueに設定されています。第2世代のクラウドSQLでは、クラウドSQLの認証リストにアプリケーションを指定する必要はありません。
すべてのヘルプはあなたがあなたのインスタンスの「インスタンスの詳細」の「インスタンスの接続名」をご覧ください
ありがとうございました!解決策としてマークされています – Matt
最新のドキュメントでURLが変更されました。 "jdbc:google:mysql:// $ {INSTANCE_CONNECTION_NAME}/$ {database}?user = $ {user} & password = $ {password}" https://cloud.google.com/appengine/docs/standard/java/cloud-sql/#setting-upを参照してください。 – Ishaan