Comment se connecter à Cloud SQL PostgreSQL sur Google Cloud Platform à partir d'un environnement local avec Java

La procédure pour le titre ne s'est pas bien déroulée et il a fallu beaucoup de temps pour le résoudre, je vais donc l'écrire sous forme de note. Fondamentalement https://cloud.google.com/sql/docs/postgres/connect-external-app?hl=ja#java Si vous procédez comme suit, cela fonctionnera.

L'environnement dans lequel je suis allé cette fois Windows Subsystem for Linux Java8 sbt est. Ne vous inquiétez pas pourquoi vous utilisez sbt mais Java. Scala étudie.

Tout d'abord, vous devez installer et authentifier le SDK Cloud, mais je vais l'omettre ici. Ensuite, écrivez les bibliothèques requises dans build.sbt. Veuillez utiliser la dernière version à ce moment-là, le cas échéant. Voici la dernière version en date du 26 décembre 2017.

libraryDependencies ++= Seq(
  "org.postgresql" % "postgresql" % "42.1.4",
  "com.google.cloud.sql" % "postgres-socket-factory" % "1.0.4"
)

Ensuite, écrivez un fichier Java comme celui-ci et `` sbt run '' pour vous connecter à PostgreSQL de Cloud SQL.

import java.sql.*;
public class App {
    public static void main(String[] args) throws Exception {
        Connection connection = null;
        String jdbcUrl = String.format(
          "jdbc:postgresql://google/%s?socketFactory=com.google.cloud.sql.postgres.SocketFactory&socketFactoryArg=%s",
          dbName, 
          instanceConnectionName);
        try {
            connection = DriverManager.getConnection(jdbcUrl,
                userName,
                password);
        } finally {
            if (connection != null) {
                connection.close();
            }
        }
    }
}

Ici, instanceConnectionName est le nom de connexion d'instance de Cloud SQL, et il est répertorié sur l'écran de la liste des instances de Cloud SQL.

Recommended Posts

Comment se connecter à Cloud SQL PostgreSQL sur Google Cloud Platform à partir d'un environnement local avec Java
Comment se connecter à Cloud Firestore à partir de Google Cloud Functions avec du code Python
Création d'un environnement de développement avec Maven sur Google App Engine [Java]
Stratégie sur la façon de monétiser avec Python Java
[Latest] Comment créer un environnement Java sur Ubuntu
[Python] Comment créer un environnement de serveur Web local avec SimpleHTTPServer et CGIHTTPServer
Comment déployer une application Django dans le cloud Alibaba
Comment créer un environnement Django (python) sur Docker
Comment créer un environnement Python sur Amazon Linux 2
Comment préparer l'environnement pour Google Colab avec le cours avancé d'apprentissage automatique de Coursera
Une note sur la façon de préparer facilement un environnement de pratique Linux
Exécutez le programme sans créer d'environnement Python! !! (Comment démarrer avec Google Colaboratory)
Comment créer un nouvel environnement virtuel Python sur Ubuntu
Créer un environnement de développement Ubuntu python sur Google Cloud Platform
Remarques sur la façon de charger un environnement virtuel avec PyCharm
Comment créer un environnement de développement de la série Python2.7 avec Vagrant
Connectez-vous à centos6 sur Virtualbox avec une connexion SSH depuis Mac
Connectez Raspberry Pi à Alibaba Cloud IoT Platform avec «Python»
Une histoire sur le passage d'un service Web développé personnellement d'un serveur de location à GCP (Google Cloud Platform)
Étapes rapides pour créer un environnement d'apprentissage automatique à l'aide de Jupyter Notebook sur macOS Sierra avec anaconda
Comment personnaliser U-Boot avec une carte personnalisée pour OSD335X (Remarque)
Comment créer un environnement Python à l'aide de Virtualenv sur Ubuntu 18.04 LTS
Comment créer une bibliothèque .dylib à partir d'une bibliothèque .a avec OSX (El Capitan)
Comment déployer une application Web sur Alibaba Cloud en tant que pigiste
Utilisation du fichier de propriétés avec l'environnement flexible Java 8 de Google App Engine
Tout, de la création d'un environnement Python à son exécution sous Windows
Malentendu sur la façon de connecter CNN
Comment exécuter le code pratique du livre "Making Profitable AI with Python" sur Google Colaboratory
Comment réparer la merde lors de la lecture d'images Google Cloud Storage de Django déployées sur GAE
Procédure de création d'un environnement virtuel Python avec VS Code sous Windows
Comment installer le package python dans un environnement local en tant qu'utilisateur général
Connectez-vous à postgreSQL depuis Python et utilisez des procédures stockées dans une boucle.
Comment dessiner une ligne verticale sur une carte de chaleur dessinée avec Python Seaborn
Comment exécuter un démarrage rapide pour Google Cloud Text-to-Speech .NET dans Unity
Comment lire les variables d'environnement à partir d'un fichier .env avec PyCharm (pour Mac)
Copier des données d'Amazon S3 vers Google Cloud Storage avec Python (boto)
Créez un environnement d'apprentissage pour le «Deep learning from scratch» avec Cloud9 (jupyter miniconda python3)
Résumé de la création d'un environnement LAMP + Wordpress avec Sakura VPS
Comment créer un environnement de traduction sphinx
Comment ajouter un package avec PyCharm
Comment mettre à jour Google Sheets à partir de Python
Comment utiliser l'Assistant Google sur Windows 10
Comment rechercher Google Drive dans Google Colaboratory
Remarques sur l'activation de PostgreSQL avec Django
Comment créer un référentiel à partir d'un média
Comment tester sur une page authentifiée par Django
Créer un environnement Python + OpenCV sur Cloud9
Comment utiliser SQLAlchemy / Connect avec aiomysql
De rien sur Ubuntu 18.04 à la configuration d'un environnement Deep Learning sur Tensor
Comment publier un blog sur Amazon S3 avec le moteur de blog statique `` Pélican '' pour Pythonista
Comment créer rapidement un environnement d'analyse morphologique à l'aide d'Elasticsearch sur macOS Sierra
Lorsque je me suis connecté à un serveur Jupyter distant avec VScode, il était distant mais local.
WEB grattage avec python et essayez de créer un nuage de mots à partir des critiques
Comment exécuter une application Django sur un conteneur Docker (environnement de développement et de production)
Instructions pour connecter Google Colab. À l'environnement d'exécution local dans un environnement Windows
L'explication la plus simple au monde sur la création de LINE BOT (2) [Préparation de l'application Bot dans un environnement local avec Django de Python]
Créez un environnement LAMP sur votre Docker local