Arch Linux(4.8.13-1-Arch)を使用しています。指示どおりにPostgreSQLをセットアップしようとしています here 。
実行後
[postgres@BitBox ~]$ initdb --locale $LANG -E UTF8 -D '/var/lib/postgres/data'
The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.
The database cluster will be initialized with locale "en_US.UTF-8".
The default text search configuration will be set to "english".
Data page checksums are disabled.
fixing permissions on existing directory /var/lib/postgres/data ... ok
creating subdirectories ... ok
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting dynamic shared memory implementation ... posix
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... ok
WARNING: enabling "trust" authentication for local connections
You can change this by editing pg_hba.conf or using the option -A, or
--auth-local and --auth-Host, the next time you run initdb.
Success. You can now start the database server using:
pg_ctl -D /var/lib/postgres/data -l logfile start
正常に終了すると、exitコマンドを使用して通常のユーザーに戻りました。
[postgres@BitBox ~]$ exit
logout
次に、postgresql.serviceを開始しようとしたときに、次のエラーが表示されました。
[code_master5@BitBox ~]$ Sudo systemctl start postgresql.service
Failed to start postgresql.service: Unit postgresql.service not found.
私もサービスのステータスを取得していません:
[code_master5@BitBox ~]$ Sudo systemctl status postgresql.service
Unit postgresql.service could not be found.
立ち往生しています!
最後に、これを見つけました。既にファイルが存在していました
/usr/lib/systemd/system/postgresql-9.6.service
そのため、このファイルの存在が原因で、postgresql.serviceを開始できませんでした。次に、次のようにpostgresql-9.6.serviceを開始しようとしました。
[code_master5@BitBox ~]$ Sudo systemctl start postgresql-9.6.service
Failed to start postgresql-9.6.service: Unit postgresql-9.6.service not found.
そして、出力を見ることができるように、再び失敗しました。
Postgresql.serviceファイルはこのファイルが存在するために関連するプログラムによって作成されていない可能性があると考えたため、Sudoを使用してファイルを削除しました。その後、システムを再起動しました。以下の出力を見るとわかるように、それ以降は正常に機能しています。
[code_master5@BitBox ~]$ Sudo systemctl status postgresql.service
[Sudo] password for code_master5:
● postgresql.service - PostgreSQL database server
Loaded: loaded (/usr/lib/systemd/system/postgresql.service; enabled; vendor p
Active: active (running) since Sat 2017-01-28 09:31:30 IST; 7h ago
Main PID: 342 (postgres)
Tasks: 6 (limit: 4915)
CGroup: /system.slice/postgresql.service
├─342 /usr/bin/postgres -D /var/lib/postgres/data
├─358 postgres: checkpointer process
├─359 postgres: writer process
├─360 postgres: wal writer process
├─361 postgres: autovacuum launcher process
└─362 postgres: stats collector process
Jan 28 09:31:26 BitBox systemd[1]: Starting PostgreSQL database server...
Jan 28 09:31:28 BitBox postgres[340]: FATAL: the database system is starting up
Jan 28 09:31:28 BitBox postgres[340]: LOG: database system was shut down at 201
Jan 28 09:31:29 BitBox postgres[340]: FATAL: the database system is starting up
Jan 28 09:31:29 BitBox postgres[340]: LOG: MultiXact member wraparound protecti
Jan 28 09:31:29 BitBox postgres[340]: LOG: database system is ready to accept c
Jan 28 09:31:29 BitBox postgres[340]: LOG: autovacuum launcher started
Jan 28 09:31:30 BitBox systemd[1]: Started PostgreSQL database server.
私は確かに同じ問題を抱えているすべての人に警告したいと思います。自己責任で私がしたことは何でもしてください。これらはシステムファイルであるためです。これらをいじると、週末が台無しになります!
私はまだこれについて少し混乱しています。説明は大歓迎です!
これを試して:
service postgresql-10.service restart
service postgresql-XX.service restart