Halaman resminya tidak menyebutkan kasus seperti itu. Tetapi banyak pengguna hanya perlu psqltanpa database lokal (saya memilikinya di AWS). Brew tidak punya psql.
Halaman resminya tidak menyebutkan kasus seperti itu. Tetapi banyak pengguna hanya perlu psqltanpa database lokal (saya memilikinya di AWS). Brew tidak punya psql.
Jawaban:
Anda juga dapat menggunakan homebrew untuk menginstal libpq.
brew install libpq
Ini akan memberi Anda psql, pg_dump dan sejumlah besar utilitas klien lainnya tanpa menginstal Postgres.
Anda kemudian menambahkan direktori instalasi ke jalur Anda. Dalam kasus saya, lokasi direktori adalah:
/usr/local/Cellar/libpq/10.3/bin
brew link --force libpqtetapi itu akan membuat banyak symlink lain yang mungkin tidak Anda inginkan / butuhkan.
ln -s /usr/local/Cellar/libpq/11.3/bin/psql /usr/local/bin/psql/ ln -s /usr/local/Cellar/libpq/11.3/bin/pg_dump /usr/local/bin/pg_dump/ln -s /usr/local/Cellar/libpq/11.3/bin/pg_restore /usr/local/bin/pg_restore
for cmd in psql pg_dump pg_restore; do ln -s ../opt/libpq/bin/$cmd /usr/local/bin/$cmd; done
PATH=/usr/local/opt/libpq/bin:$PATHuntuk menambahkan semua perintah ke jalur Anda sekaligus, menggunakan nama direktori yang tidak berubah dengan versi libpqyang Anda instal.
Homebrew hanya benar-benar memiliki rumus postgres , dan tidak memiliki rumus khusus yang hanya menginstal psqlalat tersebut.
Jadi, "cara yang benar" untuk mendapatkan psqlaplikasi adalah dengan menginstal rumus postgres , dan Anda akan melihat ke bagian bawah bagian "peringatan" bahwa ia tidak benar-benar menjalankan database, itu hanya meletakkan file di sistem Anda :
$ brew install postgres
==> Downloading https://homebrew.bintray.com/bottles/postgresql-9.6.5.sierra.bottle.tar.gz
######################################################################## 100.0%
==> Pouring postgresql-9.6.5.sierra.bottle.tar.gz
==> /usr/local/Cellar/postgresql/9.6.5/bin/initdb /usr/local/var/postgres
==> Caveats
<snip>
To have launchd start postgresql now and restart at login:
brew services start postgresql
Or, if you don't want/need a background service you can just run:
pg_ctl -D /usr/local/var/postgres start
==> Summary
🍺 /usr/local/Cellar/postgresql/9.6.5: 3,269 files, 36.7MB
Sekarang Anda dapat menggunakan psqluntuk terhubung ke server Postgres jarak jauh, dan tidak akan menjalankan server lokal, meskipun Anda bisa jika Anda benar-benar menginginkannya.
Untuk memverifikasi bahwa postgresdaemon lokal tidak berjalan, periksa layanan homebrew yang Anda instal:
$ brew services list
Name Status User Plist
mysql stopped
postgresql stopped
Jika Anda belum menginstal Layanan Homebrew , cukup
$ brew tap homebrew/services
... dan Anda akan mendapatkan fungsi ini. Untuk informasi lebih lanjut tentang Layanan Homebrew , baca posting blog luar biasa ini yang menjelaskan cara kerjanya .
brew linklangkah. Memaksa tautan dengan libpq diperlukan karena deklarasi keg_only dalam rumus. Mengingat kerumitan khusus ini , saya berpegang pada jawaban ini sebagai cara yang "benar" untuk melakukan apa yang ditanyakan oleh pertanyaan. Saya menyadari bahwa banyak pengguna masih lebih suka libpqpendekatan ini.
libpq 11.2
MacOS & zsh atau bash
di bawah ini bekerja
libpqbrew install libpq
perbarui PATH
jika menggunakan zsh:
echo 'export PATH="/usr/local/opt/libpq/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc
jika menggunakan bash:
echo 'export PATH="/usr/local/opt/libpq/bin:$PATH"' >> ~/.bash_profile
source ~/.bash_profileecho 'export PATH="/usr/local/opt/libpq/bin:$PATH"' >> ~/.bash_profilejika Anda menggunakan bash.
Jika Anda benar-benar tidak membutuhkan postgresql maka Anda bahkan tidak perlu mengubah jalur Anda untuk menggunakan libra, cukup tautkan libpq. Dokumen mengatakan satu-satunya alasan tidak ada adalah untuk menghindari konflik dengan paket PostgreSQL.
brew uninstall postgresql
brew install libpq
brew link --force libpq
Saya menemukan semua ini sangat tidak memuaskan, terutama jika Anda harus mendukung banyak versi postgres. Solusi yang JAUH lebih mudah adalah mengunduh binari di sini:
https://www.enterprisedb.com/download-postgresql-binaries
Dan cukup jalankan versi yang dapat dieksekusi psqlyang cocok dengan database yang sedang Anda kerjakan tanpa langkah tambahan.
contoh:
./path/to/specific/version/bin/psql -c '\x' -c 'SELECT * FROM foo;'
Kamu bisa mencoba brew install postgresql
Tetapi ini menyediakan GUI yang bagus untuk mengelola database Anda https://postgresapp.com
brew install postgresqlinstal psql dengan database itu sendiri :(