LoadLibrary通常、このエラー メッセージは、Windows API呼び出しによって生成される誤解を招くものです。それが実際に意味することは、次のようなものです。
読み込み中のエラー: 依存関係の DLLがplpython2.dll見つかりませんpython27.dllPATH
plpython2.dllしかし代わりに、Windows はロードできなかったのは自分自身であるかのように振る舞います。
これが問題かどうかはlib、PostgreSQL インストールのディレクトリでplpython2.dll. そこにあるのにこのエラーが発生する場合は、Python ランタイムが不足しています。plpython2.dllまったくない場合は、PostgreSQL のインストールに plpython2 がありません。これは、私がパッケージング チームで提起しているものです。
あるのに読み込まれない場合plpython2.dllは、PostgreSQL のバージョンに一致する Python ランタイムをインストールする必要があります。PostgreSQL のコンパイルに使用されたものと同じ Python メジャー バージョンである必要があります。たとえば、PostgreSQL のコンパイルに Python 2.7 が使用された場合、Python 2.6 では plpython を実行できません。
必要なランタイムのインストールがインストーラーによって自動化されていればいいのですが、現時点ではそうではありません。また、適切に文書化されていません。これについては、パッケージング チームに相談します。インストールする正しいランタイムは、インストール ディレクトリ内に文書化されています。このディレクトリには、[スタート] メニューの[PostgresSQL 9.3] -> [ドキュメント] -> [インストール ノートdoc\installation-notes.html]からもアクセスできます。 .
「インストール ノート」ファイルにこの情報がない古いリリースの場合、必要な Python のバージョンがわからない場合は、depends.exe(依存関係ウォーカー)を使用して、どの Python DLL にリンクされているかを確認できます。同じアーキテクチャの Python も必要です。64 ビットの PostgreSQL をインストールする場合は、64 ビットの Python などが必要です。
PostgreSQL 9.3 パッケージには Python 27 が必要です。したがって、 http://python.org/から Python 2.7 をダウンロードしてください (ActiveState ではなく、必ずしも互換性があるとは限りません)。インストーラーによってPython が に追加されていることを確認しPATHます (インストーラーを実行するときのオプションです)。その後、PostgreSQL を再起動してから再試行してください。
次の方法で Python のインストールを自動化できます。
start /wait msiexec /i python-2.7.3.amd64.msi /qb /passive TARGETDIR=%SystemDrive%\Python27_x64 ALLUSERS=1
はpython-2.7.3.amd64.msi、インストールした Python バイナリのファイル名で、64 ビット バージョンを にインストールしていますC:\Python27_x64。必要に応じて調整します。