web-dev-qa-db-ja.com

言語plperlの作成-エラー:ライブラリplperl.dllをロードできませんでした

create language plperl、エラーが表示されます:エラー:ライブラリ「C:/ Program Files/PostgreSQL/9.1/lib/plperl.dll」をロードできませんでした:指定されたモジュールが見つかりませんでした

しかし、私のコンピューターでは、「plperl.dll」ファイルが「C:/ Program Files/PostgreSQL/9.1/lib/...」フォルダーに存在します(私は例示的な画像を投稿できません。このフォーラムには10以上の評判が必要です)

そして私がselect * pg_pltemplate、私は得ます:

-[ RECORD 4 ]-+-------------------------
tmplname      | plperl
tmpltrusted   | t
tmpldbacreate | t
tmplhandler   | plperl_call_handler
tmplinline    | plperl_inline_handler
tmplvalidator | plperl_validator
tmpllibrary   | $libdir/plperl
1
Luan Huynh

Windowsで3つのファイルdll(MSVCR90.DLL、Perl514.DLL、IESHIMS.DLL)を見逃したため、言語pl/Perlをインストールできませんでした。

ここで私の解決策:

  • 「Dependency Walker」ツールを使用して、欠落しているdllファイル(存在する場合)をチェックします。インストール後、plperl.dllファイルを開き、エラーを見つけます。
  • 欠落しているDLLファイルをインストールします。
  • ActivePerlをインストールします(ウィンドウにPerlをインストールするには、Perl binフォルダーをWindows環境変数に自動的に設定します)
  • Postgresqlサービスを再起動します
  • テスト:

        createlang -U postgres plperl postgre  (it's ok)
        CREATE or replace LANGUAGE plperl      (it's ok)
    

ダウンロード(2つのリンクを投稿するだけです)

リファレンス: http://www.mkyong.com/database/install-Perl-in-postgresql-the-specified-module-could-not-be-found/

2
Luan Huynh