公式の MySQL Java Database Connectivity (JDBC) ドライバーを使用して、OceanBase データベースに接続できます。このトピックでは、MySQL Connector/J を使用して OceanBase データベースに接続して使用する方法について説明します。
前提条件
Java Development Kit (JDK) 8 以降がインストールされていること。
MySQL Connector/J をインストールし、ランタイム環境を構成していること。
MySQL Connector/J 5.1.47 を使用することをお勧めします。 MySQL Connector/J のダウンロードとインストール方法の詳細については、「」と「」をご参照ください。 Connector/J をダウンロード および Connector/J をインストールする。
JDBC ドライバーを使用した OceanBase データベースへの接続
手順 1: データベース接続パラメーターを取得する
詳細については、「接続パラメーターを取得する」をご参照ください。例:
$ obclient -hxxx.xxx.xxx.xxx -P3306 -u a**** -p****** -Dtestデータベース接続パラメーターは、データベースへのアクセスに必要な情報を指定します。サンプルコードで使用する前に、データベースにログオンして、データベース接続パラメーターを確認できます。
オプション:
-h: 接続先の OceanBase データベースのドメイン名。
-P: OceanBase データベースに接続するためのポート。 デフォルトでは、MySQL モードではポートは 3306 です。
-u: テナントアカウント。
-p: アカウントパスワード。
-D: データベース名。
手順 2: サンプルコードを記述する
次のテキストは、 MySQL Connector/J 5.1.47 Linux を例にとります。
インストールした後 MySQL Connector/J 5.1.47 Test.java
MySQL Connector/J 8.x の場合、com.mysql.jdbc.Driver を Class.forName("com.mysql.jdbc.Driver") 内の com.mysql.cj.jdbc.Driver に置き換えます。
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class Test {
public static void main(String[] args) {
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
try{
Connection connection = DriverManager.getConnection("jdbc:mysql://xxx.xxx.xxx.xxx:3306/test?user=a****&password=******");
System.out.println(connection.getAutoCommit());
Statement sm = connection.createStatement();
// Create a table named t_meta_form.
sm.executeUpdate("CREATE TABLE t_meta_form (name varchar(36) , id int)");
// Insert data.
sm.executeUpdate("insert into t_meta_form values ('an','1')");
// Query data and output the results.
ResultSet rs = sm.executeQuery("select * from t_meta_form");
while (rs.next()) {
String name = rs.getString("name");
String id = rs.getString("id");
System.out.println(name + ','+ id);
}
// Drop the table.
sm.executeUpdate("drop table t_meta_form");
}catch(SQLException se){
System.out.println("error!");
se.printStackTrace() ;
}
}catch (Exception ex) {
ex.printStackTrace();
}
}
}コード内のデータベース接続パラメーターを変更します。 次のパラメーターと形式を参照してください。 パラメーター値は手順 1 で取得します。
connection = DriverManager.getConnection("jdbc:mysql://{host}:{port}/{dbname}?user={username}&password={password}")host: 接続先の OceanBase データベースのドメイン名。 オプションに対応します。.
-hオプションポート: OceanBase データベースに接続するためのポートです。これは、
-Pオプションに対応します。デフォルトでは、MySQL モードでポートは 3306 です。dbname: データベース名。 オプションに対応します。
-Dオプション。username: テナントアカウント。これは、
-uオプションパスワード: テナントアカウントのパスワードです。
-pオプションに対応します。
例:
jdbc:mysql://xxx.xxx.xxx.xxx:3306/test?user=a****&password=******手順 3: サンプルコードを実行する
コードを編集した後、次の手順に従ってコードを編集および実行します。
JAR パッケージの実際のインストールパスに従って、一時環境変数を構成します。
$ export CLASSPATH=/usr/share/java/mysql-connector-java-5.1.47.jar:$CLASSPATHTest.java ファイルをコンパイルします。
$ javac Test.javaサンプルステートメントを実行します。
$ java Test次の結果が返された場合、データベースは接続され、サンプルステートメントは正しく実行されています。
true an,1