2

アプリを Heroku で実行しようとしていますが、「rake db:migrate」コマンドを実行できません。次のエラーが表示され続けます: rake aborted! エラーが発生しました。これ以降の移行はすべてキャンセルされました:

PG::エラー: エラー: 拡張機能 plpgsql の所有者でなければなりません

何か案が?

ps これは完全なエラー ログです: http://pastebin.com/iYeiMD2y

4

1 に答える 1

5

スキーマからデータベースにデータを入力しようとしています。問題は、データベース ユーザーが所有していない postgresql 拡張機能にコメントを追加しようとしていることです。これらの 3 行は問題を引き起こします。

COMMENT ON EXTENSION plpgsql IS 'PL/pgSQL procedural language';
COMMENT ON EXTENSION pg_trgm IS 'text similarity measurement and index searching based on trigrams';
COMMENT ON EXTENSION unaccent IS 'text search dictionary that removes accents';

データベース オブジェクトにコメントするには、そのオブジェクトの所有者である必要があります。詳細については、PostgreSQL のドキュメントを参照してください。

Heroku では、拡張機能の作成や変更も許可されていません。使用可能な拡張機能と使用可能なテキスト検索辞書のリストが提供され、スキーマ ダンプ内のすべての拡張機能が一覧表示されます。

拡張機能を作成し、拡張機能に関するコメントを作成しているスキーマ ダンプ内の行コードを削除またはコメント アウトします。これにより、そのエラーを回避できます。

于 2013-01-30T15:57:29.043 に答える