10bet网址
MySQL 5.6リファレンスマニュアル
本手册下载
PDF (Ltr)- 26.8 mb
PDF (A4)- 26.8 mb
HTML下载(TGZ)- 7.2 mb
HTML下载(邮政编码)- 7.2 mb


MySQL 5.6リファレンスマニュアル/连接器およびAPI/組み込みMySQLサーバーライブラリlibmysqld

23.6組み込みMySQLサーバーライブラリlibmysqld

組み込みMySQLサーバーライブラリは,クライアントアプリケーション内で,完全な機能を備えたMySQLサーバーを実行できるようにします。この主なメリットは組み込みアプリケーションの速度の向上と管理の単純化です。

組み込みサーバーライブラリは,C / c++で書かれているMySQLのクライアント/サーバーバージョンに基づいています。そのため,組み込みサーバーもc / c++で書かれています。ほかの言語で利用可能な組み込みサーバーはありません。

APIは組み込みMySQLバージョンとクライアント/サーバーバージョンで同じです。組み込みライブラリを使用するようにスレッドアプリケーションを変更するには,通常次の関数への呼び出しを追加する必要があるだけです。

表23.3 MySQL組み込みサーバーライブラリ関数

関数

呼び出すタイミング

mysql_library_init ()

ほかのMySQL関数が呼び出される前,できればmain ()関数の早期に呼び出します。

mysql_library_end ()

プログラムが終了する前に呼び出します。

mysql_thread_init ()

MySQLにアクセスする,作成する各スレッド内で呼び出します。

mysql_thread_end () pthread_exit ()を呼び出す前に,呼び出します。

次に,コードをlibmysqlclient.aの代わりにlibmysqld.aとリンクします。アプリケーションとサーバーライブラリ間のバイナリ互換性を確保するには,常に,サーバーライブラリのコンパイルに使用された同じ一連のMySQLのヘッダーに対してアプリケーションをコンパイルします。たとえば,libmysqldがMySQL 5.1ヘッダーに対してコンパイルされていた場合,アプリケーションをMySQL 5.5ヘッダーに対してコンパイルしないでください。また逆も同様です。

mysql_library_xxx()関数はlibmysqlclient.aにも含まれているため,アプリケーションを正しいライブラリとリンクするだけで,組み込みバージョンとクライアント/サーバーバージョン間の変更が可能です。セクション23.7.7.40 " mysql_library_init() "を参照してください。

組み込みサーバーとスタンドアロンサーバーの1つの違いは,組み込みサーバーの場合,接続のための認証がデフォルトで無効にされていることです。