Mac OS X'te psql nasıl çalıştırılır?


54

Tek tıklamayla yükleyiciyi kullanarak PostgreSQL'i Mac OS X'e sahip bir bilgisayara kurdum . Daha sonra bu psqlkomutu kullanarak PostgreSQL'e erişmeye çalışıyorum , ancak mevcut görünmüyor.

Bu mesajı alıyorum:

psql
-bash: psql: command not found

Daha fazla bir şey mi kurmam gerekiyor? Veya PostgreSQL'i nasıl ayarlayabilirim, böylece bilgisayarımda kullanabilirim?

Yanıtlar:


41

Psql ikilisini bulun. (Bir terminalde, çalıştırın locate psql | grep /binve yolu not alın. (Benim durumumda, /opt/local/lib/postgresql90/bin/MacPorts kullanılarak kurulu olduğu gibi.)

Ardından, .bash_profiledosyayı ev klasörünüzde düzenleyin (örn. mate -w ~/.bash_profileMetin arkadaşınız varsayarak) ve gerekli satırı yolunuza ekleyin; örneğin:

export PATH=/opt/local/lib/postgresql90/bin/:$PATH

Dosyayı kaydettikten sonra, dosyayı ( . ~/.bash_profile) okuyun veya yeni bir terminal açın ve yazın psql.


18
Teşekkürler, psql yolum buydu /Library/PostgreSQL/9.0/bin/psqlve .bash_profilesizin önerdiğiniz gibi bir dosya oluşturdum ve harika çalışıyor.
Jonas

1
@Jonas: +1 Yorumunuz gerçekten ayrı bir cevaba girmeli ve kabul edilen cevap olmalıdır, çünkü bu Mac'te Postgres'i kurarken varsayılan konumdur!
Stefan Haberl

Locate komutu başlangıçta benim için işe yaramadı, ilk önce sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.locate.plistfind
koşmam

Ayrıca burada .bash_profile dosyası, mac noob burada oluşturmak zorunda kaldı! ;-) şimdi çalışıyor olsa da, teşekkürler!
magritte

3
daha iyiexport PATH=/Applications/Postgres.app/Contents/Versions/latest/bin/:$PATH
andilabs

11

Onlar Postgres.apptarafından da desteklenen Heroku ekibinden kullanmanızı şiddetle tavsiye ediyorum !

Bir menü çubuğu simgesine ve menüde bir psqlöğeye sahiptir:

Postgres.app menü çubuğu simge menüsü

Ayrıca bulacaksınız psqlsunucu olarak o aynı sürümünü (yol sürümüne göre değişebilir) istiyorsanız buraya dahil:

/Applications/Postgres.app/Contents/MacOS/bin

İsterseniz, psqldoğrudan yürütmek için bu yolu başlangıç ​​komut dosyasına ekleyebilirsiniz :

PATH=/Applications/Postgres.app/Contents/MacOS/bin:$PATH

UYARI! AFAIK, Postgres.appUnix soketleriyle bağlantıyı desteklemez (Bunun ne olduğundan emin değilim ...) ve yalnızca TCP / IP bağlantılarını destekler. O zaman başka bazı programlardan bağlantı kurmazsanız panik yapmayın.


4
Son belgeler postgresapp.com/documentation/cli-tools.html yolunu şöyle sıralar/Applications/Postgres.app/Contents/Versions/latest/bin
Bryan Ash

Aslında yorum daha iyi bir cevap gibi görünüyor :)
efsanevi

daha iyiexport PATH=/Applications/Postgres.app/Contents/Versions/latest/bin/:$PATH
andilabs

Baktım ancak Heroku teamuygulama ile hiçbir ilişki bulamadım . Nasıl bağlandıklarını paylaşabilir misiniz?
Roee Gavirel

11

Eğer hombrew kullanmak istiyorsanız, istemciyi kurmak için "yol" görünür:

$ brew postgresql yükleme

o zaman psql(istemci komut satırı) artık sizlere sunulacak (ayrıca yerel bir Postgres sunucusu / veritabanı yüklüyor, ancak istediğiniz tek şey müşteri ise bunu kullanmak zorunda değilsiniz).

Anlaşılan , ilginç olması durumunda homebrew ( brew install pgcli) aracılığıyla da daha "kullanıcı dostu" olması için psql'ye bir 'sarmalayıcı' da var .

Pgcli is a command line interface for Postgres with auto-completion and syntax highlighting.

Başka bir seçenek de, libpqhomebrew paketini kurmak , fakat onu zorla bağlamak zorundasın (bugünlerde cesareti kırıldı).

 brew link --force libpq  

veya onu PATH'inize ekleyin, kurulumdan sonra homebrew'in söylediği talimatlara bakın.


4
Görünüşe göre psqltüm veritabanı motorunu kurmadan kullanmanın bir yolu yok . pgcliMesela, tüm servislerinizin dockize edilmesini istediğiniz zamanlar için daha uygun bulundu . @Rogerdpack gitmenin yolu!
Saul Martínez

4

Kurulum bittikten sonra kurulum kılavuzuna göre Postgres'in Uygulama klasöründe StackBuilder, pgAdmin3 ve psql kısayolları bulunmalıdır :

Ayrıca pgAdmin'i, psql komut satırı arayüzünü çalıştırmak ve PostgreSQL belgelerine erişmek için ek kısayollar bulacaksınız.

Bu tür kısayollar varsa, psql'nin işaret ettiği yeri kontrol edin.


Teşekkürler, bu aslo çalıştı. Bu belgeyi görmedim, sadece belgeyi postgresql.org.
Jonas
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.