Skip to main content
VillageSQLはMySQLのトラッキングフォークであり、ドロップイン置換として機能します。MySQLのプラグインおよびコンポーネントインターフェースは、MySQLと同様にVillageSQLでも動作します。VillageSQLは、VillageSQL拡張フレームワーク(VEF)を提供します。新しい機能(カスタムSQL関数、カスタム型、統合など)を追加するには、VEF拡張機能が適切なモデルです。

どこに配置するか

新しいものを構築する場合は、独自のリポジトリにVEF拡張機能を構築します。プラグインとコンポーネントも機能しますが、VEFが適切なモデルです。詳しくは、プラグインとコンポーネントの代わりに拡張機能を使用する理由をご覧ください。 VillageSQL Serverリポジトリへのコントリビューション:

プラグインとコンポーネントの代わりに拡張機能を使用する理由

MySQLプラグインとコンポーネントはVillageSQLで動作します。VEF拡張機能は、さらに多くの機能を提供します。
  • カスタム型 — 新しい列タイプを定義できます。これは、プラグインやUDFではできません。
  • パッケージング.vebファイルとして配布され、INSTALL EXTENSIONでインストールされます。
  • 再起動は不要 — 拡張機能は実行時にロードおよびアンロードされます。
  • バージョン管理 — 拡張機能のマニフェストで宣言され、サーバーによって強制されます。

新しい拡張機能の開始

vsql-extension-templateをクローンまたはフォークします。これには、動作するHello World拡張機能、マニフェスト形式、および完全なCMakeビルド設定が含まれています。 リポジトリを取得したら、拡張機能の作成でVEF SDKについて説明します。

VEFで必要な機能がサポートされていない場合

VEFはまだ発展中です。まだ存在しないフックまたは機能が必要な場合は、次の手順を実行します。
  • サーバーリポジトリに、必要なものを説明するIssueを提出します。
  • すでに同様のIssueがある場合は、そのIssueに賛成票を投じます。
  • フックをVEFに追加するPRを提出します。 フレームワークの改善は、サーバーリポジトリで歓迎されます。