Essayez de vous connecter à la base de données OCI (DBaaS) PDB avec le pilote léger JDBC de Java. (Oracle Cloud Infrastructure)

Comme le titre l'indique, dans la PDB de la base de données OCI (Oracle Cloud Infrastructure) (DBaaS) Essayez de vous connecter avec le pilote léger JDBC de Java. Essayez-le avec la configuration suivante 彡 (゜) (゜)

Compute(Java, JDBC Thin Driver) ⇒ (Private Subnet) ⇒ DBaaS(PDB)

Ceci est une continuation de l'article précédent.

Essayez de vous connecter à la base de données OCI (DBaaS) PDB avec sqlplus. (Oracle Cloud Infrastructure) https://qiita.com/ora_gonsuke777/items/5029e8cb64fbd9fd62ce

1. Confirmation des informations de destination de connexion

Connectez-vous au PDB suivant.

Nom d'hôte (privé): dbname.subnetname.vcnname.oraclevcn.com Numéro de port: 1521 Nom du service PDB: ayspdb2.subnetname.vcnname.oraclevcn.com JDBC URL(thin) :jdbc:oracle:thin:@//dbname.subnetname.vcnname.oraclevcn.com:1521/ayspdb2.subnetname.vcnname.oraclevcn.com

2. Code source Java

Je me connecte à la PDB et j'obtiens le nom de la PDB de la vue V $ CONTAINERS. La chaîne de connexion est la même connexion simple que la dernière fois (nom d'hôte: numéro de port / nom de service) et 彡 (゜) (゜)

import java.sql.*;

public class GetContainerName {
    public static void main(String[] args) {
        final String path = "jdbc:oracle:thin:@//" +
                            "dbname.subnetname.vcnname.oraclevcn.com:" + //hostname
                            "1521/" + //port
                            "ayspdb2.subnetname.vcnname.oraclevcn.com"; //PDB Service
        final String id = "xxxxxxxx";  //ID
        final String pw = "yyyyyyyy";  //password
      
        try (
            Connection conn = DriverManager.getConnection(path, id, pw);
            Statement  stmt = conn.createStatement();
            ResultSet  rs   = stmt.executeQuery("SELECT NAME FROM V$CONTAINERS");
        ) {
            while (rs.next()) {
                String cn = rs.getString("name");
                System.out.println("Container Name => " + cn);
            }
        } catch(SQLException ex) {
            ex.printStackTrace();  //Error
        }
    }
}

3. Compilez et exécutez

Le style de compilation brut habituel 彡 (゚) (゚)

export JAVA_HOME=/home/opc/work/jdk1.8.0_191
export ORACLE_HOME=/home/opc/app/opc/product/18.0.0/client_1
export PATH=${JAVA_HOME}/bin:${PATH}

javac GetContainerName.java
java -classpath .:${ORACLE_HOME}/jdbc/lib/ojdbc8.jar GetContainerName

Container Name =>AYSPDB2 ★ ← nom PDB

Le nom PDB est sorti! 彡 (^) (^)

4. Résumé

Tant que vous connaissez le nom de service de PDB, c'est très futuriste (゜) (゜) La prochaine fois, j'écrirai une connexion Autonomous DB (ADW / ATP).

Recommended Posts

Essayez de vous connecter à la base de données OCI (DBaaS) PDB avec le pilote léger JDBC de Java. (Oracle Cloud Infrastructure)
Essayez de vous connecter à Autonomous DB (ADW / ATP) avec JDBC Thin Driver de Java. (OCI, infrastructure Oracle Cloud)
Essayez de vous connecter à la base de données autonome avec JDK6 (Java) + pilote JDBC OCI (type 2).
Comment créer une URL JDBC (Oracle Database, Thin)
Connexion à une base de données avec Java (partie 1) Peut-être la méthode de base