TiDB に接続する

TiDB は MySQL プロトコルと高い互換性があります。クライアント リンク パラメータの完全なリストについては、 MySQL クライアントのオプションを参照してください。

TiDB はMySQL クライアント/サーバー プロトコルサポートしており、ほとんどのクライアント ドライバーと ORM フレームワークが MySQL に接続するのと同じように TiDB に接続できるようになります。

MySQL

個人の好みに基づいて、MySQL クライアントまたは MySQL シェルの使用を選択できます。

  • MySQL Client
  • MySQL Shell

TiDB のコマンドライン ツールとして使用できる MySQL クライアントを使用して TiDB に接続できます。 MySQL クライアントをインストールするには、YUM ベースの Linux ディストリビューションの以下の手順に従ってください。

sudo yum install mysql

インストール後、次のコマンドを使用して TiDB に接続できます。

mysql --host <tidb_server_host> --port 4000 -u root -p --comments

TiDB のコマンドライン ツールとして使用できる MySQL Shell を使用して TiDB に接続できます。 MySQL Shell をインストールするには、 MySQL シェルのドキュメントの手順に従います。インストール後、次のコマンドを使用して TiDB に接続できます。

mysqlsh --sql mysql://root@<tidb_server_host>:4000

JDBC

JDBCドライバーを使用して TiDB に接続できます。これを行うには、 MysqlDataSourceまたはMysqlConnectionPoolDataSourceオブジェクト (どちらのオブジェクトもDataSourceインターフェイスをサポートします) を作成し、 setURL関数を使用して接続文字列を設定する必要があります。

例えば:

MysqlDataSource mysqlDataSource = new MysqlDataSource(); mysqlDataSource.setURL("jdbc:mysql://{host}:{port}/{database}?user={username}&password={password}");

JDBC 接続の詳細については、 JDBC ドキュメントを参照してください。

接続パラメータ

パラメータ名説明
{username}TiDB クラスターに接続するための SQL ユーザー
{password}SQL ユーザーのパスワード
{host}TiDB ノードのホスト
{port}TiDB ノードがリッスンしているポート
{database}既存のデータベースの名前

TiDB SQLユーザーの詳細については、 TiDB ユーザーアカウント管理を参照してください。

休止状態

休止状態 ORMを使用して TiDB に接続できます。これを行うには、Hibernate 構成ファイルのhibernate.connection.url正当な TiDB 接続文字列に設定する必要があります。

たとえば、 hibernate.cfg.xml設定ファイルを使用する場合は、次のようにhibernate.connection.urlを設定します。

<?xml version='1.0' encoding='utf-8'?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory> <property name="hibernate.connection.driver_class">com.mysql.cj.jdbc.Driver</property> <property name="hibernate.dialect">org.hibernate.dialect.TiDBDialect</property> <property name="hibernate.connection.url">jdbc:mysql://{host}:{port}/{database}?user={user}&amp;password={password}</property> </session-factory> </hibernate-configuration>

構成が完了したら、次のコマンドを使用して構成ファイルを読み取り、 SessionFactoryオブジェクトを取得できます。

SessionFactory sessionFactory = new Configuration().configure("hibernate.cfg.xml").buildSessionFactory();

次の点に注意してください。

  • hibernate.cfg.xml設定ファイルは XML 形式であり、 &は XML の特殊文字であるため、ファイルを設定するときに&&amp;に変更する必要があります。たとえば、接続文字列hibernate.connection.url jdbc:mysql://{host}:{port}/{database}?user={user}&password={password}からjdbc:mysql://{host}:{ port}/{database}?user={user}&amp;password={password}に変更する必要があります。
  • TiDB方言をhibernate.dialectorg.hibernate.dialect.TiDBDialectに設定して使用することをお勧めします。
  • Hibernate は6.0.0.Beta2から始まる TiDB ダイアレクトをサポートしているため、TiDB への接続には Hibernate 6.0.0.Beta2以降のバージョンを使用することをお勧めします。

Hibernate 接続パラメータの詳細については、 Hibernate のドキュメントを参照してください。

接続パラメータ

パラメータ名説明
{username}TiDB クラスターに接続するための SQL ユーザー
{password}SQL ユーザーのパスワード
{host}TiDB ノードのホスト
{port}TiDB ノードがリッスンしているポート
{database}既存のデータベースの名前

TiDB SQLユーザーの詳細については、 TiDB ユーザーアカウント管理を参照してください。

このページは役に立ちましたか?