Setelah memulai ulang MacBook Pro saya, saya tidak dapat memulai server basis data:
could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/tmp/.s.PGSQL.5432"?
Saya memeriksa log dan baris berikut muncul berulang-ulang:
FATAL: database files are incompatible with server
DETAIL: The data directory was initialized by PostgreSQL version 9.2, which is not compatible with this version 9.0.4.
9.0.4 adalah versi yang telah diinstal sebelumnya pada mac, 9.2 [.4] adalah versi yang saya instal melalui Homebrew. Seperti yang disebutkan, ini dulu berfungsi sebelum restart, jadi itu sebenarnya bukan masalah kompilasi. Saya juga menjalankan ulang initdb /usr/local/var/postgres -E utf8
dan file masih ada.
Sayangnya, saya cukup baru di Postgres, jadi bantuan apa pun akan sangat dihargai.
macos
postgresql
homebrew
klaffenboeck
sumber
sumber
pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start
- dan jawabannya adalahserver starting
pg_ctl
saya cukup yakin Anda akan menemukan 2 salinan. Dan yang cocokwhich pg_ctl
adalah versi yang lama, dan yang lainnya adalah versi yang baru.pg_ctl --version
memberipg_ctl (PostgreSQL) 9.2.4
Server.app
dan menyembunyikannya untuk menggunakan port non-default dan direktori unix socket. Akhirnya!Jawaban:
Jika Anda baru saja memutakhirkan ke 11 atau 12 dari 10.x Anda dapat menjalankan perintah di bawah ini untuk memutakhirkan direktori data postgres Anda yang menyimpan semua data:
Perintah di atas diambil dari output
brew info postgres
sumber
brew postgresql-upgrade-database
kemudian restart postgresbrew info
.Jika Anda mencari opsi nuklir (hapus semua data dan dapatkan basis data baru), Anda dapat melakukan:
rm -rf /usr/local/var/postgres && initdb /usr/local/var/postgres -E utf8
dan kemudian Anda harus ke
rake db:setup
danrake db:migrate
dari aplikasi Rails Anda untuk mendapatkan pengaturan lagi.sumber
createuser -s your_rails_app
untuk membuat postgres rel pengguna. Lihat stackoverflow.com/questions/11919391/...Coba ini: https://gist.github.com/joho/3735740
Ini bekerja dengan baik untuk saya. Pada akhirnya itu juga menghasilkan Anda 2 skrip bash untuk memeriksa DB Anda dan menghapus cluster lama. Sangat Luar Biasa.
lihat: http://www.postgresql.org/docs/9.2/static/pgupgrade.html untuk memahami lebih lanjut.
sumber
Ditemukan di internet, solusi ini berfungsi dengan baik untuk saya.
Ketika saya mencoba memulai server postgresql setelah memutakhirkan ke OS X 10.10 Yosemite, saya mengalami masalah berikutnya:
pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start
Oke, mari kita lihat log server:
cat /usr/local/var/postgres/server.log
Jadi, kita perlu mengikuti beberapa langkah setelah memutakhirkan postgresql:
Itu dia.
sumber
Jika Anda ingin menyimpan postgres versi sebelumnya, gunakan
brew switch
:Jika tidak, pertimbangkan perintah minuman ini untuk bermigrasi data yang ada:
brew postgresql-upgrade-database
. Lihat kode sumbernya .sumber
Itu terjadi pada saya ketika saya mencoba untuk memulai Postgres12 dengan volume yang dipasang postgres11. Hanya menghapus volume yang dipasang untuk postgres11 dan restart bekerja untuk saya.
Sebelumnya saya menggunakan:
Saya menghapus / Pengguna / juara / postgres dan memulai kembali postgres 12, menggunakan
sumber