Instal PostgreSQL melalui Homebrew
Mungkin sebagian besar pengguna OS X mengetahui Homebrew
, tetapi Homebrew adalah pengelola paket untuk OS X yang memungkinkan Anda menginstal dan menjalankan perpustakaan besar aplikasi dan utilitas dengan mudah.
Kami tidak akan melalui seluruh (walaupun singkat) proses instalasi Homebrew, tetapi jika Anda ingin menginstal Homebrew dan menggunakannya untuk manajemen PostgreSQL, lihat perintah instalasi pada dokumentasi resmi. Jika Anda tidak yakin apakah Homebrew diinstal, coba which brew
perintah dari terminal untuk memverifikasi.
Setelah Homebrew diinstal, Anda dapat menginstal PostgreSQL dengan mengeluarkan perintah berikut di terminal Anda:
$ brew update
$ brew doctor
$ brew install postgres
Dua perintah pertama digunakan untuk memperbarui Homebrew dan melaporkan potensi masalah (jika perlu). Kemudian, tentu saja, brew install postgres
adalah perintah satu baris untuk menginstal PostgreSQL.
Anda akan melihat banyak informasi berguna dalam output selama instalasi, banyak di antaranya harus disalin untuk digunakan di bagian selanjutnya.
Menggunakan LaunchAgent dan plist untuk Meluncurkan PostgreSQL saat Startup
Dalam kebanyakan kasus, Anda mungkin ingin PostgreSQL diluncurkan ketika Anda memulai sistem Anda, jadi Anda harus memberi tahu komputer Anda bahwa ini adalah keinginan Anda.
Pertama, Anda harus membuat direktori untuk LaunchAgents
Anda untuk berada (jika direktori belum ada). LaunchAgents
di OS X adalah skrip sederhana yang digunakan oleh launchd
yang menyebabkan sistem menjalankan program atau kode selama startup.
Buat user
. Anda LaunchAgents
khusus - direktori dengan perintah ini, jika perlu:
$ mkdir -p ~/Library/LaunchAgents
Sekarang Anda harus membuat tautan simbolis dari skrip yang benar-benar memungkinkan Postgres dijalankan ke LaunchAgents
direktori. Tautan simbolik mirip dengan membuat salinan file baru untuk digunakan di direktori lain, tetapi karena tautannya 'simbolis', tautan tersebut hanyalah alamat penerusan:setiap permintaan yang dibuat ke lokasi tautan simbolik tersebut sebenarnya "diteruskan bersama" atau diarahkan ke tempat nyata file sebenarnya berada.
Tautan ke plist
(daftar properti) file yang dihasilkan oleh Homebrew dan tempatkan tautan simbolis baru itu di LaunchAgents
dengan perintah ini:
$ ln -sfv /usr/local/opt/postgresql/*.plist ~/Library/LaunchAgents
Catatan:Periksa kembali apakah perintahnya benar:Seharusnya menjadi bagian dari keluaran instalasi yang disebutkan di atas ketika Homebrew menginstal Postgres pada awalnya.
Terakhir, kami memuat LaunchAgent
yang ditautkan simbolis baru file menggunakan launchctl load
perintah, yang secara khusus menginformasikan komputer untuk menjalankan skrip ini dan memulai Postgres saat komputer diluncurkan. Sekali lagi, perintah yang tepat untuk dimasukkan untuk instalasi Anda sendiri akan menjadi output selama instalasi Postgres Homebrew, tetapi seharusnya terlihat seperti ini:
$ launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist
Memulai PostgreSQL Secara Manual
Untuk memulai Postgres secara manual tanpa me-reboot, sekali lagi Anda harus dapat menggunakan perintah yang dikeluarkan selama instalasi, seperti:
$ postgres -D /usr/local/var/postgres
Ini akan mencoba meluncurkan Postgres di daemon
mode, yang berarti akan berjalan sebagai proses latar belakang tanpa mengambil alih terminal Anda.
Mulai/Hentikan PostgreSQL Tanpa Homebrew
Jika Anda tidak memiliki (atau tidak ingin menggunakan) Homebrew untuk Postgres, namun Anda telah menginstal Postgres, Anda juga dapat memulainya secara manual dengan pg_ctl
, yang merupakan utilitas peluncuran yang disediakan oleh Postgres sendiri.
Ini akan memulai Postgres (dengan asumsi direktori default):
$ pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start
Dan ini akan menghentikan Postgres:
pg_ctl -D /usr/local/var/postgres stop -s -m fast
Pemecahan Masalah Startup:Apakah Anda Menjalankan initdb
?
Dalam beberapa kasus, jika Anda mengalami masalah dalam menjalankan Postgres, pastikan Anda telah menjalankan initdb
perintah satu kali, yang menyebabkan Postgres menginisialisasi cluster database untuk instalasi baru dan memungkinkan Anda untuk terhubung dengan postgres
default pengguna.