このチュートリアルに従って、postgresql dbをセットアップします。
http://inventtheweb.blogspot.ca/2012/05/install-postgresql-for-Django.html
CREATE DATABASEコマンドの実行を終了して\ qを実行した後
次の応答が返ってきます。
could not save history to file "/var/lib/postgresql/.psql_history": No such file or directory
これを正確に引き起こしているのは何ですか?これは私に問題を引き起こしますか?
詳細情報:インストールされているpostgresqlのバージョンは9.3であり、Ubuntu Server 14.04 LTSにインストールしています。
はい、PGSQLシステムユーザー(通常はpostgres)のホームディレクトリは/ var/lib/postgresqlに設定されています。データベースを別の場所にインストールしたと思います。そのディレクトリが存在しないため、PSQLプログラムはそのフォルダーにアクセスして履歴ファイルを作成できません。 (PSQLはPGSQLの対話型コマンドラインです)。
正直なところ、それほど大きな問題ではありません。その履歴ファイルは、PSQLインターフェイス内で実行されたコマンドのリストにすぎません。
インストールが完了したので、メッセージが再び表示されることはないと思います。つまり、自分のアカウントを使用してPSQLに接続し、同様のエラーメッセージが引き続き表示される場合を除きます。その場合、HOME変数が間違っている可能性があります。 postgresはあなたとしてシステムにログインしていませんか?そのユーザーをインタラクティブに使用することを計画している場合(まったくお勧めしません)、そのHOMEディレクトリを有効なフォルダーに設定する必要があります。
正しいデータベースの場所を指すようにpostgresのホームディレクトリを更新します。
Sudo usermod --home '/path/to/database' postgres
Launchpadには、Ubuntu 14.04のPostgreSQLに影響する確認済みのバグがあります。
(2014年6月26日報告、ステータス:確認済み)
バグの説明
履歴ログに書き込めません。 2006年に修正済みとマークされたバグ32696と同じ問題のようです。しかし、Ubuntu 14.04 Amazon EC2インスタンスに直接postgressをインストールした後も、私に起こります。
以下も参照してください。
(2006-02-24に報告、ステータス:修正リリース)
ディレクトリが実際に/var/lib/postgres/
である場合、これは実際には簡単な修正です。そのディレクトリに.psql_historyファイルを作成し、postgresユーザーにファイルの所有権を与えるだけです。 initdb
を実行して/var/lib/postgres/data/
ディレクトリにテストデータベースを作成した後でも、.psql_historyファイルは作成されませんでした。何らかの理由で、これは手動で行う必要があります。
これは、Linux(Arch/Manjaro)上のPostgreSQL 9.4.5であり、パッケージマネージャーからインストールされます。
/etc/passwd
を変更する必要があります。
pgsql
フォルダーの場所をpostgres行に置いて、次のことを試してください。
grep postgres /etc/passwd | cut -d ':' -f 6