このセクションでは、MySQLモードでOB Cloudデータベースに接続しアクセスする方法について説明します。現在、主にクライアント、GUI、ドライバー、ORMフレームワーク、または接続プールを使用してOB Cloudに接続できます。
クライアント
OB CloudのMySQL互換モードテナントに接続する際にサポートされているクライアントは以下のとおりです:
MySQLクライアント(mysql)
mysqlはMySQLデータベースのコマンドラインクライアントであり、別途インストールが必要です。OB Cloudのテナントには、MySQL互換テナントとOracle互換テナントが含まれます。MySQL互換テナントにアクセスする場合、mysqlを使用して接続できます。
OB Cloudクラウドデータベースに接続した後、mysqlのコマンドライン環境で、mysql運用コマンドやSQLステートメントを実行し、以下のタスクを実行できます:
クエリ結果の計算、保存、および出力。
データベースオブジェクトの作成、オブジェクト定義の確認および変更。
データベース管理やパラメータの変更など。
MySQLクライアントを使用してOB CloudクラウドデータベースのMySQL互換モードテナントに接続する具体的な操作例については、MySQLクライアントを使用してOB Cloudクラウドデータベースに接続するをご参照ください。
OceanBase Developer Center(ODC)
OceanBase Developer Center(ODC)は、OceanBaseデータベース専用に設計されたエンタープライズ向けデータベース開発プラットフォームです。
ODCは、OB Cloudトランザクション型インスタンスのMySQL互換モードテナントおよびOracle互換モードテナントへの接続をサポートしており、データベース開発者に対して、日常的なデータベース開発操作、WebSQL、SQL診断、セッション管理、データのインポート・エクスポートなどの機能を提供します。
OceanBase Developer Centerを使用してOB Cloudクラウドデータベースに接続する具体的な操作例については、ODCデスクトップ版を使用してOB Cloudクラウドデータベースに接続するをご参照ください。
GUI
DBeaver
DBeaverは汎用のデータベースクライアントツールであり、各データベースが提供するJDBCドライバーを使用してデータベースに接続します。一般的なリレーショナルデータベース、非リレーショナルデータベース、分散型データベースなどをサポートしています。DBeaverを使用してOB Cloudに接続する具体的な操作例については、DBeaverを使用してOB Cloudクラウドデータベースに接続するをご参照ください。
Navicat
DBeaverと同様に、Navicatも汎用のデータベースクライアントツールです。各データベースが提供するJDBCドライバーを使用してデータベースに接続し、一般的なリレーショナルデータベース、非リレーショナルデータベース、分散型データベースなどをサポートしています。Navicatを使用してOB Cloudに接続する具体的な操作例については、Navicatを使用してOB Cloudクラウドデータベースに接続するをご参照ください。
ドライバー
OceanBaseデータベースのMySQL互換モードテナントに接続する際にサポートされているドライバーは以下のとおりです:
Javaドライバー(MySQL Connector/J)
MySQL Connector/Jは、MySQLが公式に提供するJDBCドライバーです。
説明
OceanBaseの使用経験に基づき、以下のバージョンのMySQL Connector/Jを推奨します:
- MySQL Connector/J 5.x系では、5.1.40から5.1.49のバージョンを推奨します。
- MySQL Connector/J 8.x系では、8.0.7から8.0.25および8.2.0から8.4.0のバージョンを推奨します。
Javaアプリケーションを使用してOB Cloudクラウドデータベースに接続する具体的な操作例については、Javaサンプルアプリケーションの作成をご参照ください。
Cドライバー(OceanBase Connector/C)
OceanBase Connector/Cは、C/C++ベースのOceanBaseクライアント開発コンポーネントであり、C API Libライブラリをサポートしています。
OceanBase Connector/Cにより、C/C++プログラムは比較的低レベルな方法でOceanBase分散データベースインスタンスにアクセスし、データベース接続、データアクセス、エラー処理、およびプリペアドステートメント処理などの操作を実行できます。
OceanBase Connector/CはLibOBClientとも呼ばれ、アプリケーションが独立したサーバープロセスとしてネットワーク接続を介してデータベースサーバーOBServerノードと通信するために使用されます。クライアントプログラムはコンパイル時にC APIヘッダーファイルを参照し、同時にC APIライブラリファイルに接続できます。
説明
LibOBClientが生成するsoファイルは
libobclient.soです(MySQLのlibmysqlclient.soに相当)。OceanBaseデータベースのインストール後のコマンドラインツールはOBClientです(MySQLのコマンドラインツールに相当)。Cアプリケーションを使用してOB Cloudクラウドデータベースに接続する具体的な操作例については、Cサンプルアプリケーションの作成をご参照ください。
Pythonドライバー(PyMySQL)
PyMySQLは、Python3.xバージョンでMySQLサーバーに接続するためのライブラリです。PythonデータベースAPI v2.0仕様に準拠しており、pure-Python MySQLクライアントライブラリを含んでいます。OB CloudクラウドデータベースのMySQLモードでは、ユーザーはPyMySQLドライバーを使用して、PythonアプリケーションとOB Cloudとの接続を提供できます。
Pythonアプリケーションを使用してOB Cloudクラウドデータベースに接続する具体的な操作例については、Pythonサンプルアプリケーションの作成をご参照ください。
Golangドライバー(Go-SQL-Driver/MySQL)
Go-SQL-Driver/MySQLは、Go言語で実装されたMySQLドライバーであり、Goのdatabase/sql標準インターフェースに準拠しており、Goアプリケーションとの統合が容易です。
Go-SQL-Driver/MySQLアプリケーションを使用してOB Cloudに接続する具体的な操作例については、GOサンプルアプリケーションの作成をご参照ください。
PHPドライバー
EXT
EXT(PHP Extension)は、PHPの拡張機能であり、さまざまなデータベースへの接続とやり取りを行うために使用されます。開発者がデータベースをより効果的に操作し、データを処理できるようにするためのさまざまな機能を提供します。
EXTを使用してOB Cloudに接続する具体的な操作例については、EXTドライバーを使用したOB Cloudクラウドデータベース接続サンプルプログラムをご参照ください。
MySQLi
MySQLi(MySQL Improved)は、PHPが公式に提供する拡張機能であり、MySQLデータベースとのやり取りに使用されます。オブジェクト指向と手続き型の両方のプログラミングをサポートし、プリペアドステートメント、トランザクションサポート、複数クエリなどの機能を提供し、パフォーマンスとセキュリティの向上を目指しています。
MySQLiを使用してOB Cloudに接続する具体的な操作例については、MySQLiドライバーを使用したOB Cloudクラウドデータベースへの接続をご参照ください。
PDO
PDO(PHP Data Objects)は、データベースアクセス抽象化レイヤーであり、開発者が統一された方法でさまざまなデータベースとやり取りできるようにします。PDOはプリペアドステートメントをサポートし、セキュリティの向上に寄与し、異なるデータベース間でのコード移行を容易にします。
PDOを使用してOB Cloudに接続する具体的な操作例については、PDOドライバーを使用したOB Cloudクラウドデータベースへの接続をご参照ください。
ORMフレームワーク
ORM(Object Relational Mapping、略称:ORM)は、オブジェクト指向プログラミング言語内の異なるタイプのシステム間のデータ変換を実現するためのプログラミング技術です。効果的には、プログラミング言語で使用できる「仮想オブジェクトデータベース」を作成していると言えます。
OB CloudのMySQL互換モードテナントに接続する際にサポートされているORMフレームワークは以下のとおりです:
SpringBoot
SpringBootでOB Cloudクラウドデータベースに接続する具体的な操作例については、SpringBootでOceanBaseデータベースに接続するをご参照ください。
SpringBatch
SpringBatchでOceanBaseデータベースに接続する具体的な操作例については、SpringBatchでOceanBaseデータベースに接続するをご参照ください。
SpringJDBC
SpringJDBCでOceanBaseデータベースに接続する具体的な操作例については、SpringJDBCでOceanBaseデータベースに接続するをご参照ください。
SpringDataJPA
SpringDataJPAでOceanBaseデータベースに接続する具体的な操作例については、SpringDataJPAでOceanBaseデータベースに接続するをご参照ください。
Hibernate
HibernateでOceanBaseデータベースに接続する具体的な操作例については、HibernateでOceanBaseデータベースに接続するをご参照ください。
MyBatis
MyBatisでOceanBaseデータベースに接続する具体的な操作例については、MyBatisでOceanBaseデータベースに接続するをご参照ください。
接続プール
データベース接続プールの設定は、システムとデータベースとの効率的で安定した接続を確保するための重要なステップです。適切な接続プールの設定により、データベース接続数を効果的に管理し、高並行性による接続枯渇問題を回避するだけでなく、適切なタイムアウト設定により無効な接続をタイムリーにクリーンアップし、システム性能を確保できます。
OB Cloudは複数の接続プール接続をサポートしており、ビジネスの特性に応じてご自身で接続プールの実装を選択できます。