Skip to main content
データベースにカスタムの型、関数、および機能を追加するには、VillageSQLの拡張機能をインストールします。

コマンド構文

VERSION が指定されると、サーバーは {name}-{version}.veb を開き、 バージョンをマニフェストと照合し、一致しない場合は中止します。 この句を省略すると {name}.veb がインストールされます。または、バージョン付きの VEB のみが存在する場合は、一意の {name}-{version}.veb がインストールされます。 バージョンの選択を参照してください。
拡張機能は、コンパイルされたライブラリとメタデータを含む.veb(VillageSQL拡張機能バンドル)ファイルとして配布されます。

バージョンの選択

veb_dir 内の VEB ファイルの名前は、{name}.veb(バージョンなし)または {name}-{version}.veb(バージョン付き)のいずれかになります。特定のバージョン付き VEB をインストールするには、VERSION 句を追加します。
VERSION を指定すると、サーバーは vsql_uuid-0.2.0.veb を開き、その manifest.json 内のバージョンが 0.2.0 と一致することを確認します。 VERSION を指定しない場合、サーバーは次のようにファイルを解決します。
  • {name}.veb が存在する場合は、それをインストールします。バージョンはその manifest.json から読み取られます。
  • それ以外の場合、{name}-{version}.veb がちょうど 1 つ存在すれば、それをインストールします。ファイル名内のバージョンはその manifest.json と照合して検証されます。
  • それ以外の場合、インストールは失敗し、バージョンを指定する必要があります。
複数のバージョン付き VEB が存在し、バージョンなしの VEB が存在しない場合、INSTALL EXTENSIONMultiple versions of extension '<name>' found in '<dir>'; specify a version with INSTALL EXTENSION <name> VERSION 'x.y.z' で失敗します。明示的な VERSION 句を付けて再実行してください。

拡張機能の命名規則

VillageSQLは、異なるコンテキストで異なる命名規則を使用します。
  • SQLコマンド: アンダースコアを使用します: INSTALL EXTENSION vsql_uuid
  • リポジトリ名: ハイフンを使用します: github.com/villagesql/vsql-uuid
  • ファイル名: アンダースコアを使用します: vsql_uuid.veb
  • manifest.json: SQLと一致するようにアンダースコアを使用します: "name": "vsql_uuid"
例:

前提条件

  • 実行中のVillageSQLサーバーインスタンス
  • 管理者権限(rootまたは同等の権限)

組み込み拡張機能のインストール

VillageSQLに付属する組み込み拡張機能は、すでにveb_dirにあります。単に有効にするだけです。

インストールの確認

出力:

機能のテスト

外部拡張機能のインストール

別途ダウンロードまたは構築された拡張機能の場合:
外部拡張機能をインストールする前に、サーバーでveb_dirを構成する必要があります。 veb_dirの構成を参照してください。

1. .vebファイルのコピー

サーバーの拡張機能ディレクトリを見つけて、.vebファイルをコピーします。

2. 拡張機能のインストール

想定されるバージョンを固定するには(CI やスクリプト化されたロールアウトで役立ちます)、 VERSION 句を含めます。
マニフェストが異なるバージョンを報告する場合、インストールは失敗し、何も 登録されません。

3. インストールの確認

トラブルシューティング

さらにトラブルシューティングについては、拡張機能の管理を参照してください。

次のステップ

拡張機能の管理

インストールされた拡張機能を監視およびトラブルシューティングします。

利用可能な拡張機能

インストールできる拡張機能を参照します。

拡張機能の作成

独自の拡張機能を構築します。