Fatal Error Starting Postgres

Fatal Error Starting Postgres

I'm unfamiliar with how to use postgres and need some help. I'm currently running OSX Yosemite.

When I start postgres I get this:

pg_ctl: could not start server
Examine the log output.
There was an error executing [start] on postgres. Check /Users/work/git/proj/var/log/postgres.log for details.
createuser: could not connect to database postgres: FATAL:  could not open relation mapping file "global/pg_filenode.map": No such file or directory

The log is below.

When I try to stop postgres I get this:

Postgres not running

And when I run ps -ef |grep postgres I get this:

20010    13398     1  0 Jul07 ?        00:00:00 /usr/pgsql-9.3/bin/postgres -h  -k /Users/work/git/proj/var/pg
20010    13399 13398  0 Jul07 ?        00:00:09 postgres: logger process                                            
20010    13401 13398  0 Jul07 ?        00:00:10 postgres: checkpointer process                                      
20010    13402 13398  0 Jul07 ?        00:00:00 postgres: writer process                                            
20010    13403 13398  0 Jul07 ?        00:00:00 postgres: wal writer process                                        
20010    13404 13398  0 Jul07 ?        00:00:36 postgres: autovacuum launcher process                               
20010    13405 13398  0 Jul07 ?        00:00:02 postgres: stats collector process                                   
20010    18112 17723  0 10:22 pts/0    00:00:00 grep postgres

What does this all mean and how could I possibly fix this?


log text

Postgres data dir doesn't exist. Creating
The files belonging to this database system will be owned by user "rose.smith".
This user must also own the server process.

The database cluster will be initialized with locale "C".
The default database encoding has accordingly been set to "SQL_ASCII".
The default text search configuration will be set to "english".

Data page checksums are disabled.

creating directory /Users/work/git/proj/postgres ... ok
creating subdirectories ... ok
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
creating configuration files ... ok
creating template1 database in /Users/work/git/proj/postgres/base/1 ... ok
initializing pg_authid ... ok
initializing dependencies ... ok
creating system views ... ok
loading system objects' descriptions ... ok
creating collations ... ok
creating conversions ... ok
creating dictionaries ... ok
setting privileges on built-in objects ... ok
creating information schema ... ok
loading PL/pgSQL server-side language ... ok
vacuuming database template1 ... ok
copying template1 to template0 ... ok
copying template1 to postgres ... ok
syncing data to disk ... ok

Success. You can now start the database server using:

    /usr/pgsql-9.3/bin/postgres -D /Users/work/git/proj/postgres
or
    /usr/pgsql-9.3/bin/pg_ctl -D /Users/work/git/proj/postgres -l logfile start

waiting for server to start....< 2015-06-04 17:24:57.966 GMT >LOG:  redirecting log output to logging collector process
< 2015-06-04 17:24:57.966 GMT >HINT:  Future log output will appear in directory "pg_log".
 done
server started
waiting for server to shut down.... done
server stopped
waiting for server to start....< 2015-06-04 18:10:18.044 GMT >LOG:  redirecting log output to logging collector process
< 2015-06-04 18:10:18.044 GMT >HINT:  Future log output will appear in directory "pg_log".
 done
server started
"/Users/work/git/proj/var/log/postgres.log" 413L, 20935C

after running /usr/pgsql-9.3/bin/postgres -D /Users/work/git/proj/postgres

< 2015-07-08 14:40:36.331 GMT >FATAL:  lock file "postmaster.pid" already exists
< 2015-07-08 14:40:36.331 GMT >HINT:  Is another postmaster (PID 18145) running in data directory "/Users/work/git/proj/postgres"?
2

2 Answers

I can't speak to why this worked after trying these commands just a few minutes ago, but it is now working. Good luck to anyone else with the same problem.

  1. stop postgres
  2. killall postgres
  3. remove postgres database with rm -rf postgres
  4. start postgres

This website was helpful. I think my problem may have been the same as his.

I had deleted ~/Library/Containers/com.heroku.postgres or ~/Application Support/Postgres/ while the Postgres.app was still running. The old version was still running since I deleted the pid file, and it didn't know how to shut it down.

Source:

I faced same issue. I solved the problem with the following commands.

If you install postgresql using HomeBrew...

rm /usr/local/var/postgres/postmaster.pid

pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start

Hope this helps you!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Chloe Bennett
Author

Chloe Bennett

Chloe Bennett explores the intersection of pop culture, streaming entertainment, digital trends, and contemporary lifestyle. Her weekly commentary reaches thousands of culture enthusiasts.