あなたはPostgreSQLがどのように機能するかを批判的に誤解しました。
app_db.sql
はデータベースではなく、データベースダンプです。データベースを作成するために再生できるデータベース内のデータを説明する一連のテキストコマンド。
これは、MicrosoftAccess.dbx
ファイルやSQLite3データベースファイルとは異なります。データベースは、直接操作できる単一のファイルに格納されています。PostgreSQLデータベースを操作する唯一の方法は、PostgreSQLサーバーへのクライアント/サーバー接続を介することです。PostgreSQLサーバーは、/var/lib/pgsql
直接操作する必要がないようなシステム依存の場所に実際のデータベースの内容を保存します。
データベースダンプを使用するには、次のコマンドを使用して、データベースダンプを新しい空のデータベースに復元する必要があります。psql
$ createdb mydb
$ psql -f app_db.sql mydb
上記のとおりに実行しようとすると、パーミッションエラーで失敗する可能性があります。自分でユーザーを作成し、そのユーザーにの所有権を付与し、システム設定に応じて自分が認証できるようにmydb
編集する必要があります。pg_hba.conf
UNIXログイン名を持つユーザーのより現実的な例は次のbob
とおりです。
$ sudo -u postgres createuser bob
$ sudo -u postgres createdb -O bob mydb
$ psql -f dpp_db.sql -1 -v ON_ERROR_STOP=1 mydb
PostgreSQLチュートリアルとユーザーマニュアルを読むことを強くお勧めします。