मैक ओएस एक्स पर PostgreSQL सर्वर कैसे शुरू करें?


989

अंतिम अद्यतन:

मैं initdbकमांड चलाना भूल गया था ।

</ अंतिम अद्यतन>

इस कमांड को चलाकर

ps auxwww | grep postgres

मैं देख रहा हूं कि पोस्टग्रेज नहीं चल रहे हैं

> ps auxwww | grep postgres
remcat          1789   0.0  0.0  2434892    480 s000  R+   11:28PM   0:00.00 grep postgres

यह सवाल उठता है: मैं पोस्टग्रैक्स्ल सर्वर कैसे शुरू करूं?

अपडेट करें:

>pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start
server starting
sh: /usr/local/var/postgres/server.log: No such file or directory

अपडेट 2:

स्पर्श सफल नहीं था इसलिए मैंने इसके बजाय यह किया:

> mkdir /usr/local/var/postgres
> vi /usr/local/var/postgres/server.log
> ls /usr/local/var/postgres/          
server.log

लेकिन जब मैं रेल सर्वर शुरू करने की कोशिश करता हूं, तब भी मैं इसे देखता हूं:

Is the server running on host "localhost" and accepting
TCP/IP connections on port 5432?

अद्यतन ३:

> pg_ctl -D /usr/local/var/postgres status
pg_ctl: no server running

अद्यतन 4:

मैंने पाया कि WAS NO pg_hba.conf (केवल pg_hba.conf.sample) था, इसलिए मैंने नमूने को संशोधित किया और इसका नाम बदलकर (.sample पुनर्प्राप्त करने के लिए) कर दिया। यहाँ सामग्री हैं:

 # IPv4 local connections:
 host    all             all             127.0.0.1/32           trust
 # IPv6 local connections:
 host    all             all             ::1/128                trust

लेकिन मुझे यह समझ में नहीं आता है:

> pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start     
server starting
> pg_ctl -D /usr/local/var/postgres status                                     
pg_ctl: no server running

भी:

sudo find / -name postgresql.conf
find: /dev/fd/3: Not a directory
find: /dev/fd/4: Not a directory

अपडेट 5:

sudo pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start
Password:
pg_ctl: cannot be run as root
Please log in (using, e.g., "su") as the (unprivileged) user that will own the server process.

अद्यतन 6:

यह अजीब लगता है:

> egrep 'listen|port' /usr/local/var/postgres/postgresql.conf
egrep: /usr/local/var/postgres/postgresql.conf: No such file or directory

हालाँकि, मैंने ऐसा किया:

>sudo find / -name "*postgresql.conf*"
find: /dev/fd/3: Not a directory
find: /dev/fd/4: Not a directory
/usr/local/Cellar/postgresql/9.0.4/share/postgresql/postgresql.conf.sample
/usr/share/postgresql/postgresql.conf.sample

तो मैंने ऐसा किया:

egrep 'listen|port' /usr/local/Cellar/postgresql/9.0.4/share/postgresql/postgresql.conf.sample 
#listen_addresses = 'localhost'     # what IP address(es) to listen on;
#port = 5432                # (change requires restart)
                # supported by the operating system:
                #   %r = remote host and port

इसलिए मैंने यह कोशिश की:

> cp /usr/local/Cellar/postgresql/9.0.4/share/postgresql/postgresql.conf.sample /usr/local/Cellar/postgresql/9.0.4/share/postgresql/postgresql.conf        
> cp /usr/share/postgresql/postgresql.conf.sample /usr/share/postgresql/postgresql.conf 

अभी भी वही हो रहा है "सर्वर चल रहा है?" संदेश।


आपने Postgres कैसे स्थापित किया? क्या आपने पैकेज मैनेजर या मैन्युअल इंस्टालेशन का उपयोग किया है?
जेम्स ऑलमैन

1
ठीक से याद नहीं है लेकिन यह या तो पहले से ही स्थापित है या मैं "काढ़ा स्थापित पोस्टग्रेज" चला रहा था। मैं बाद में फिर से झुक जाऊंगा, लेकिन मैं 100% निश्चित नहीं हूं।
रामी

का प्रयोग करें sudo, यानीsudo pg_ctl...
बोहेमियन

54
मैंने इसे सिर्फ इसलिए वोट दिया क्योंकि अंतिम अद्यतन ने मुझे बहुत मुश्किल से हँसाया! : डी
pkoch

14
अपवोट करना था, मैं एक अप्रत्याशित समाप्ति के बाद psql को पुनः आरंभ करने के लिए बहुत पहले pg_ctl कमांड की प्रतिलिपि बनाने के लिए सप्ताह में कम से कम 3 बार यहां आता हूं .. हे मुझे यह सीखना होगा: D धन्यवाद दोस्त!
१.११ बजे ल्यूसिग्निक

जवाबों:


1847

Homebrew पैकेज प्रबंधक launchctl plists स्वचालित रूप से शुरू करने के लिए भी शामिल है। अधिक जानकारी के लिए चलाएँ brew info postgres

मैन्युअल रूप से प्रारंभ करें:

pg_ctl -D /usr/local/var/postgres start

मैन्युअल रूप से रोकें:

pg_ctl -D /usr/local/var/postgres stop

स्वचालित रूप से प्रारंभ करें:

"अभी लॉन्च पोस्टग्रैसक्ले शुरू किया है और लॉगिन पर पुनः आरंभ करें:"

brew services start postgresql


का परिणाम क्या है pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start?

का परिणाम क्या है pg_ctl -D /usr/local/var/postgres status?

क्या server.log में कोई त्रुटि संदेश हैं?

सुनिश्चित करें कि tcp लोकलहोस्ट कनेक्शन pg_hba.conf में सक्षम हैं:

# IPv4 local connections:
host    all             all             127.0.0.1/32            trust

Listen_addresses और portgresql.conf में चेक करें:

egrep 'listen|port' /usr/local/var/postgres/postgresql.conf

#listen_addresses = 'localhost'     # what IP address(es) to listen on;
#port = 5432                # (change requires restart)

सफाई करना

Postgres की संभावना Homebrew , Fink , MacPorts या EnterpriseDB इंस्टॉलर के माध्यम से स्थापित की गई थी।

निम्न कमांड के आउटपुट की जांच करें कि यह किस पैकेज मैनेजर के साथ स्थापित किया गया था:

brew && brew list|grep postgres
fink && fink list|grep postgres
port && port installed|grep postgres

1
@ राम स्पर्श सफल हुआ? / Usr / स्थानीय / var / postgres और server.log के अस्तित्व और अनुमतियों की जाँच करें । यह आपके उपयोगकर्ता के लिए rw होना चाहिए।
जेम्स ऑलमैन

1
@ राम: क्या आप /usr/local/var/postgres/server.log में कोई भी जानकारी शामिल कर सकते हैं? आपका इंस्टॉलेशन भ्रष्ट हो सकता है और होमबॉव जैसे ज्ञात स्रोत का उपयोग करके इसे साफ करना और फिर से स्थापित करना तेज हो सकता है।
जेम्स ऑलमैन

10
यह सब क्यों जरूरी है? आप जिस तरह से नोड शुरू करते हैं, उसी तरह आप क्यों नहीं शुरू कर सकते?
किन्नर होकेनहुल

32
कार्यक्रम शुरू करने और रोकने के लिए एक हास्यास्पद जटिल आदेश क्या है
ahnbizcad

3
यह अभी भी काम करता है लेकिन थोड़ा पुराना है। नीचे brew services start postgresqlदिया गया उत्तर और अधिक सरल और सीधा उत्तर है।
मथोरले

372

यदि आप मैन्युअल रूप से पोस्टग्रैसिकल (होमब्रे के माध्यम से स्थापित) शुरू करना और बंद करना चाहते हैं, तो सबसे आसान तरीका है:

brew services start postgresql

तथा

brew services stop postgresql

यदि आपके पास विशिष्ट संस्करण है, तो संस्करण को प्रत्यय देना सुनिश्चित करें, उदाहरण के लिए:

brew services start postgresql@10

7
काश मैं brew servicesजल्द ही इसके बारे में जानता ... यह एकमात्र समाधान है जो मेरे लिए काम कर रहा है। <3 धन्यवाद!
सीनलिंसले

5
brew tap gapple/servicesशराब बनाने की सेवा कमान फिर से काम करेगा
Fabian Leutgeb

4
लगता है brew tap homebrew/servicesअभी भी काम कर रहे हैं github.com/Homebrew/homebrew-services
kangkyu

4
के बाद यह काम initdbसफलतापूर्वक चलाया गया है। अन्यथा यह चुपचाप विफल हो जाता है (लेकिन प्रतीत होता है कि काम शुरू हो गया है, जैसा कि सेवा शुरू होने के साथ दिखाया गया है brew services list
दिमित्री

1
मुझे चलाने की आवश्यकता है brew services restart postgresql, क्योंकि db को pg_ctl के साथ शुरू करने या brew services startकहा कि "एक और सर्वर चल रहा हो सकता है" और db को pg_ctl से लटका कर रोक दिया।
10

181

मेरे पास लगभग एक ही मुद्दा था, और आपने फिक्स होने के रूप में initdb कमांड का हवाला दिया। यह मेरे लिए भी समाधान था, लेकिन मैंने नहीं देखा कि किसी ने इसे यहां पोस्ट किया है, इसलिए जो लोग इसे ढूंढ रहे हैं:

initdb /usr/local/var/postgres -E utf8

16
यह मेरे लिए भी काम करता है, initdb ने मुझे बताया कि मैंने पहले ही कॉन्फिग कर दिया था, इसलिए मैंने पूरी डायरेक्टरी को डिलीट कर दिया: "rm -rf / usr / local / var / postgres" फिर से आपका कमांड चला गया और मेरा सर्वर अब उठकर चल रहा है बहुत धन्यवाद सर!
जॉर्ज संपोय

5
हाँ, मुझे भागना पड़ा rm -rf /usr/local/var/postgresऔर फिर इसने मेरे लिए काम किया
ली मैकल्ली

2
मेरे लिए भी यही काम किया। Initdb से पहले, मुझे postgres dir ( chown _your username on your comp_ usr/local/var/postgres) को भी चेंज करना था , फिर initdb को। उसके बाद जब आप पुनः आरंभ करते हैं (यदि आपने होमब्रॉव के निर्देशों का पालन किया है) या मैन्युअल रूप से सर्वर स्वचालित रूप से शुरू होता है pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start
सेचर

2
बाद में initdb(यदि आवश्यक हो तो पुरानी निर्देशिका को हटाकर), brew services start postgresqlकाम करता है
दमित्री

यदि rm -rfआपके डेटाबेस में वर्तमान में मौजूद सब कुछ आईएनजी का विचार आपको थोड़ा डराता है, तो इसे पूरी तरह से हटाने के बजाय, आप mv /usr/local/var/postgres /usr/local/var/postgres.backupइसे नए बैकअप निर्देशिका में स्थानांतरित करने के लिए कुछ का उपयोग कर सकते हैं , फिर डेटाबेस को फिर से शुरू करने के लिए कमांड चलाएं।
हार्टले ब्रॉडी

102

यदि आपके कंप्यूटर को अचानक शुरू किया गया था

सबसे पहले, आपको फ़ाइल को हटाना होगा /usr/local/var/postgres/postmaster.pidफिर आप अपने इंस्टॉल के आधार पर कई अन्य उल्लिखित विधियों में से एक का उपयोग करके सेवा को पुनरारंभ कर सकते हैं।

आप पोस्टग्रेज के लॉग को देखकर यह सत्यापित कर सकते हैं कि क्या हो रहा है: tail -f /usr/local/var/postgres/server.log


2
आप यह देखने के tail -f /usr/local/var/postgres/server.logलिए जाँच कर सकते हैं कि क्या आपको उस फ़ाइल को हटाना चाहिए। रेफरी coderwall.com/p/zf-fww/…
user1448319

माइन अंडर / यूजर्स / <यूजर> / लाइब्रेरी / एप्लीकेशन / सपोर्ट / पोस्टग्रेज / var-9.6 / पोस्टमास्टर.पिड
BatteryAcid

होमब्रे के लिए पथ स्थापित है~/homebrew/var/postgres/postmaster.pid
blnc

2
वाह ... केवल यह मेरे लिए काम किया! क्या आप कृपया अधिक विस्तृत विवरण दे सकते हैं कि postmaster.pidअगर कंप्यूटर को अचानक से चालू किया गया तो हमें क्यों हटाना चाहिए ?
21

1
यह वास्तव में उपयोगी था
NinComPoop

81

एक अन्य दृष्टिकोण लंची मणि (लॉन्चर के लिए एक आवरण) का उपयोग कर रहा है:

brew install postgresql
initdb /usr/local/var/postgres -E utf8
gem install lunchy

पोस्टग्रेज शुरू करने के लिए:

lunchy start postgres

पोस्टग्रेज को रोकने के लिए:

lunchy stop postgres

अधिक जानकारी के लिए देखें: " होमब्रे और लंच के साथ मैक पर पोस्टग्रेक्यूएल कैसे स्थापित करें "


कैसे आप सेटअप postgres आप postgres के बजाय PostgreSQL उपयोग करना पड़ सकता पर निर्भर करता है
डेवोन चुंबन

72

यहां मेरे 2 सेंट: मैंने पोस्टग्रेज के लिए एक उपनाम बनाया है pg_ctl और इसे अंदर डाल दिया है।

alias postgres.server="sudo -u postgres pg_ctl -D /Library/PostgreSQL/9.2/data"

नया टर्मिनल लॉन्च करें।

और तब? आप इसके साथ अपना पोस्टग्रैस सर्वर शुरू / बंद कर सकते हैं:

postgres.server start
postgres.server stop

-D के साथ डेटा डायरेक्टरी को निर्दिष्ट करना यहाँ की कुंजी है
olore

3
मुझे "कृपया (unprivileged) उपयोगकर्ता के रूप में (सर्वर का उपयोग करने की प्रक्रिया) के रूप में लॉग इन (का उपयोग करके, उदाहरण के लिए," su ") मिलता रहा।" जब बस sudo चल रहा है। +1
pyb

धन्यवाद। सु का उपयोग करने के उपकरण के सुझावों को बुरी तरह विफल कर देता है। सुडो-यू शानदार ढंग से काम करता है। (एल कैपिटन पर)
uchuugaka

33

यदि आपने इसे स्थापित किया है, तो इसे स्टार्ट / स्टॉप / रीस्टार्ट करने के लिए अब तक का सबसे साफ तरीका brewकेवल इंस्टॉलेशन के साथ आने वाले लॉन्च कॉन्फ़िगरेशन फ़ाइल को अनलोड और / या लोड करना है:

launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist

पहली लाइन पोस्टग्रेट्स को रोक देगी और दूसरी लाइन इसे शुरू करेगी। किसी भी डेटा डायरेक्टरी आदि को निर्दिष्ट करने की आवश्यकता नहीं है क्योंकि सब कुछ उस फ़ाइल में है।


काढ़ा के माध्यम से ओएस एक्स पर स्थापित PostgreSQL 9.5.3 के लिए महान काम करता है !! धन्यवाद!
jpswain

यह एक आकर्षण की तरह काम करता है जब पोस्टग्रेज सर्वर को ठीक से बंद नहीं किया जाता है और आने वाले कनेक्शन को स्वीकार नहीं कर रहा है
ऑगस्टो समामे बैरिएन्टोस

5
Homebrew ही इन कमांड के लिए सरल आवरण है, जैसे: brew services start postgres(और बंद करो)। -vअंत पर फेंक दें और आप देख सकते हैं कि यह क्या कर रहा है।
मार्क एडिंगटन

28

Postgresql सर्वर शुरू करने के लिए:

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

Postgresql सर्वर को समाप्त करने के लिए:

pg_ctl -D /usr/local/var/postgres stop -s -m fast

आप इसे आसान बनाने के लिए CLI के माध्यम से एक उपनाम भी बना सकते हैं:

alias pg-start='pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start'
alias pg-stop='pg_ctl -D /usr/local/var/postgres stop -s -m fast'

इनके साथ आप पोस्टग्रेज शुरू करने के लिए "पीजी-स्टार्ट" टाइप कर सकते हैं और इसे बंद करने के लिए "पीजी-स्टॉप"।


3
मुझे त्रुटि मिली pg_ctl: directory "/usr/local/var/postgres" is not a database cluster directoryकि इसे कैसे ठीक किया जाए?
रोहमान मसिहार

22

परीक्षण के प्रयोजनों के लिए, मुझे लगता है कि PostgreSQL ऐप सबसे अच्छा विकल्प है!

एक ऐप चलाएं, और सर्वर ऊपर और चल रहा है। एप्लिकेशन बंद करें, और सर्वर नीचे चला जाता है।

http://postgresapp.com/


9

जब आप होमब्रे का उपयोग करके पोस्टग्रैस्कल स्थापित करें:

brew install postgres

आउटपुट के अंत में आप सर्वर शुरू करने के लिए इस तरीके को देखेंगे:

To have launchd start postgresql at login:
    ln -sfv /usr/local/opt/postgresql/*.plist ~/Library/LaunchAgents
Then to load postgresql now:
    launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist
Or, if you don't want/need launchctl, you can just run:
    postgres -D /usr/local/var/postgres

मुझे लगता है कि यह सबसे अच्छा तरीका है।

आप सुविधा के लिए अपने .profile में उपनाम जोड़ सकते हैं।


7

त्वरित डिस्पोजेबल परीक्षण डेटाबेस के लिए आप सर्वर को अग्रभूमि में चला सकते हैं।

एक नई निर्देशिका में एक नया पोस्टग्रेज डेटाबेस शुरू करें

mkdir db
initdb db -E utf8
createdb public

सर्वर को अग्रभूमि में प्रारंभ करें (सर्वर को रोकने के लिए ctrl-C)

postgres -d db

एक और शेल सत्र में, सर्वर से कनेक्ट करें

psql -d public

यह बहुत अच्छा लगता है लेकिन मेरे लिए काम नहीं करता है - यह पहले से चल रहे स्टेपब को करने के लिए सर्वर नहीं था। जब मैं सेवा शुरू करने का प्रयास करता हूं तो यह कहता है कि इसे PGDATA या config-file की आवश्यकता है, जो अभी तक मौजूद नहीं है। मैं क्या खो रहा हूँ?
20

7

मेरे पास एक ही समस्या है और पहली पोस्ट से सभी अपडेट करें। लेकिन चेक लॉग फाइल के बाद:

/usr/local/var/postgres/server.log

मैं सही कारण देखता हूं:

FATAL:  data directory "/usr/local/var/postgres" has group or world access
DETAIL:  Permissions should be u=rwx (0700).

इस निर्देशिका पर परिवर्तन की अनुमति के बाद

chmod 0700 /usr/local/var/postgres

सर्वर शुरू हो गया है।

हर बार लॉग फ़ाइल की जाँच करें।


5

PostgreSQL माउंटेन शेर में ऐप स्टोर के माध्यम से उपलब्ध Server.app में एकीकृत है । इसका मतलब है कि यह पहले से ही कॉन्फ़िगर है, और आपको केवल इसे लॉन्च करने की आवश्यकता है, और फिर उपयोगकर्ता और डेटाबेस बनाएं।

युक्ति : $ PGDATA को परिभाषित करने से शुरू न करें और इसी तरह से फ़ाइल स्थान लें।

आपके पास यह फ़ाइल होगी: /Library/Server/PostgreSQL/Config/org.postgresql.postgres.plist

शुरू करना:

sudo serveradmin start postgres

तर्कों के साथ प्रक्रिया शुरू हुई:

/Applications/Server.app/Contents/ServerRoot/usr/bin/postgres_real -D/ / PostgreSQL -c log_filename = PostgreSQL.log -c log_line_prefix =% t -c log_lock_waits = on -c log_statement = ddl -c logging -collector = on -c unix_socket_directory = / Private / var / pgsql_so_lateet_sql

आप सुडोल कर सकते हैं:

sudo -u _postgres psql template1

या कनेक्ट करें:

psql -h localhost -U _postgres postgres

आप डेटा निर्देशिका, संस्करण, रनिंग स्थिति और इसके साथ आगे पा सकते हैं

sudo serveradmin fullstatus postgres  

बहुत कुछ नहीं मिला जो दिखाया गया कि पोस्टग्रेज में निर्मित का उपयोग कैसे किया जाए। सर्वरडैम कमांड खोजने में मेरी मदद की। साभार
जेसन एस

रूट उपयोगकर्ता (sudo) के रूप में सेवा चलाना निश्चित रूप से एक अच्छा विचार नहीं है, जैसे ही कोई सुरक्षा समस्या होती है, पूरे कंप्यूटर से छेड़छाड़ की जाती है।
कार्लोस बार्सिलोना

Postgresql रूट के रूप में नहीं चल रहा है, लेकिन _postgres के रूप में।
bbaassssiiee

5

इस उत्तर पर भिन्नता: https://stackoverflow.com/a/13103603/2394728

initdb `brew --prefix`/var/postgres/data -E utf8`` &&  pg_ctl -D /usr/local/var/postgres/data -l logfile start

आपको उस उत्तर के लिए एक लिंक जोड़ना चाहिए जिसका आप उल्लेख करते हैं।
जेफरी बोसबोम

यह मददगार था क्योंकि मेरा pg ठीक काम कर रहा था और अचानक यह काम करना बंद कर दिया और फ़ोल्डर को / var / postgres नहीं मिला।
8:15 पर shinesecret

क्या कोई कृपया टिप्पणी कर सकता है कि यह लिंक किए गए उत्तर से बेहतर क्यों है? जैसा कि मैंने देखा कि मैं पिछली बार से पहले से ही परेशान था, मुझे एक समान समस्या थी मैं इसका उपयोग करने जा रहा हूं क्योंकि यहां कोई कारण नहीं दिया गया है।
एमसीबी

4

विकास के उद्देश्यों के लिए, सबसे सरल तरीकों में से एक आधिकारिक साइट से Postgres.app को स्थापित करना है । इसे एप्लिकेशन फ़ोल्डर से शुरू या बंद किया जा सकता है या टर्मिनल में निम्न आदेशों का उपयोग किया जा सकता है:

# start
open -a Postgres

# stop
killall Postgres
killall postgres

18
killallशायद एक डेटाबेस को रोकने का सबसे अच्छा तरीका नहीं है।
ऋषिदिन

4
   # remove old database files (If there was any)
   $rm -rf /usr/local/var/postgres    # install the binary

    $ brew install postgresql

    # init it
    $ initdb /usr/local/var/postgres

    # start the postgres server
    $ postgres -D /usr/local/var/postgres

    # create your database
    $ createdb mydb


    # Access db.
    $ psql mydb
    psql (9.0.1)
    Type "help" for help.

4

यदि आपने काढ़ा का उपयोग करके स्थापित किया है, तो नीचे कमांड पर्याप्त होना चाहिए।

brew services restart postgresql

और यह कभी-कभी काम नहीं कर सकता है, उस मामले में दो आदेशों के नीचे निश्चित रूप से काम करना चाहिए

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

pg_ctl -D /usr/local/var/postgres start

1

उपर्युक्त उत्तरों में से किसी ने भी एक ही त्रुटि संदेश प्राप्त करने के बावजूद मेरे लिए समस्या तय नहीं की। मैं मौजूदा पोस्टमास्टर.पीड फ़ाइल को हटाकर और कनेक्शन की अनुमति नहीं देकर अपनी आवृत्ति वापस लाने और चलाने में सक्षम था।


1

Macports के लिए, बस लोड / अनलोड कमांड और रनिंग सर्वर के पोर्ट नाम का उपयोग करें:

sudo port load postgresql96-server
- or -
sudo port unload postgresql96-server

इसलिए आपको यह याद रखने की ज़रूरत नहीं है कि /Library/LaunchDaemons/org.macports.postgresql96.plistफ़ाइल कहाँ स्थित है



1

यदि आपने EnterpriseDB इंस्टॉलर का उपयोग करके पोस्टग्रेज स्थापित किए हैं तो @Kenial ने जो सुझाव दिया है वह जाने का तरीका है।

sudo -u postgres pg_ctl -D /Library/PostgreSQL/{version}/data start
sudo -u postgres pg_ctl -D /Library/PostgreSQL/{version}/data stop


1

$ brew upgrade postgres

यह मेरे लिए तय है।

यह, निश्चित रूप से, आपके पोस्टग्रेज संस्करण को अपग्रेड करेगा और किसी भी निर्भरता को अपडेट / स्थापित करेगा।

चेतावनी: यह जान लें कि आपके पोस्टग्रैस्कल संस्करण में बदलाव की संभावना है। मेरे लिए, यह कोई बड़ी बात नहीं थी।


0

मैक / OSX के लिए, मुझे वास्तव में इसके लिए LaunchRocket पसंद है और अन्य पृष्ठभूमि सेवाएं जिन्हें मैंने विकास में उपयोग किया है।

https://github.com/jimbojsb/launchrocket

इस साइट की स्थापना पर अच्छा निर्देश है: http://macappstore.org/launchrocket/

यह आपको सिस्टम वरीयताएँ में एक अच्छी स्क्रीन देता है जो आपको लॉगिन पर लॉन्च, रिबूट, रूट, लॉन्च करने की अनुमति देता है।


0

इसने मेरे लिए हर बार काम किया, जो क्रेग रिंगर से प्रेरित था:

brew install proctools
sudo pkill -u postgres

proctools pkill शामिल हैं। यदि आपके पास ब्रू नहीं है: https://brew.sh/



0

कुछ बढ़त का मामला है जो शायद किसी के लिए उपयोगी होगा:

विकल्प है, कि आपके पास कुछ PID से भरे पोस्टग्रैड्स होंगे। लेकिन अगर आपकी मशीन फिर से शुरू होती है, और पोस्टग्रेजेशन से पहले फिर से वापस आ जाएगी, तो कुछ अन्य प्रक्रिया उस पीआईडी ​​को ले जाएगी। यदि ऐसा होगा, तो दोनों pg_ctl स्थिति और काढ़ा सेवा के बारे में पोस्टग्रेज स्टेटस के बारे में पूछा जाएगा, आपको बताएगा कि यह यूपी है। बस ps aux | grep और जांचें कि क्या यह वास्तव में पोस्टग्रेड है


0

Homebrew रास्ता है !!

सेवा शुरू करने के लिए:

brew services start postgresql   

इसे सूचीबद्ध करने के लिए:

brew services list |grep postgres

सेवा को रोकने के लिए:

brew services stop postgresql 

0

यदि आपने इसे काढ़ा और सीधे मैक पैकेज से स्थापित नहीं किया है, तो यह मेरे लिए पोस्टग्रेएसक्यू 12 के लिए काम किया जब सभी डिफ़ॉल्ट स्थानों, चर, आदि का उपयोग किया गया।

$ sudo su postgres
bash-3.2$ /Library/PostgreSQL/12/bin/pg_ctl -D /Library/PostgreSQL/12/data/ stop

0

मैं उसी समस्या का सामना कर रहा था। इन सभी समाधानों की कोशिश की लेकिन कोई भी काम नहीं किया।

अंत में इसे से Django सेटिंग्स में postgres होस्ट बदलकर काम कर पाने में कामयाब localhostकरने के लिए127.0.0.1

चीयर्स अगर यह मदद करता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.