首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Mac OS X上启动PostgreSQL服务器?

如何在Mac OS X上启动PostgreSQL服务器?

提问于 2017-12-13 10:03:38
回答 2关注 0查看 2.5K

我忘记了运行initdb命令。

通过运行这个命令

代码语言:txt
复制
ps auxwww | grep postgres

我看到postgres没有运行

代码语言:txt
复制
> ps auxwww | grep postgres
代码语言:txt
复制
remcat          1789   0.0  0.0  2434892    480 s000  R+   11:28PM   0:00.00 grep postgres

这引发了一个问题:我如何启动postgresql服务器?

更新:

代码语言:txt
复制
>pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start
代码语言:txt
复制
server starting
代码语言:txt
复制
sh: /usr/local/var/postgres/server.log: No such file or directory

更新2:

触摸不成功,所以我做了这个,而不是:

代码语言:txt
复制
> mkdir /usr/local/var/postgres
代码语言:txt
复制
> vi /usr/local/var/postgres/server.log
代码语言:txt
复制
> ls /usr/local/var/postgres/          
代码语言:txt
复制
server.log

但是当我尝试启动rails服务器时,我仍然看到:

代码语言:txt
复制
Is the server running on host "localhost" and accepting
代码语言:txt
复制
TCP/IP connections on port 5432?

更新3:

代码语言:txt
复制
> pg_ctl -D /usr/local/var/postgres status
代码语言:txt
复制
pg_ctl: no server running

更新4:

代码语言:txt
复制
代码语言:txt
复制
I found that there WAS NO pg_hba.conf (only pg_hba.conf.sample) so I modified the sample and renamed it (to remover the .sample). Here are the contents:
代码语言:txt
复制
代码语言:txt
复制
 # IPv4 local connections:
代码语言:txt
复制
 host    all             all             127.0.0.1/32           trust
代码语言:txt
复制
 # IPv6 local connections:
代码语言:txt
复制
 host    all             all             ::1/128                trust
代码语言:txt
复制
代码语言:txt
复制
but I don't understand this:
代码语言:txt
复制
代码语言:txt
复制
> pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start     
代码语言:txt
复制
server starting
代码语言:txt
复制
> pg_ctl -D /usr/local/var/postgres status                                     
代码语言:txt
复制
pg_ctl: no server running

also:

代码语言:txt
复制
sudo find / -name postgresql.conf
代码语言:txt
复制
find: /dev/fd/3: Not a directory
代码语言:txt
复制
find: /dev/fd/4: Not a directory

update 5:

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

update 6:

代码语言:txt
复制
this seems odd:
代码语言:txt
复制
代码语言:txt
复制
> egrep 'listen|port' /usr/local/var/postgres/postgresql.conf
代码语言:txt
复制
egrep: /usr/local/var/postgres/postgresql.conf: No such file or directory
代码语言:txt
复制
代码语言:txt
复制
though, I did do this:
代码语言:txt
复制
代码语言:txt
复制
>sudo find / -name "*postgresql.conf*"
代码语言:txt
复制
find: /dev/fd/3: Not a directory
代码语言:txt
复制
find: /dev/fd/4: Not a directory
代码语言:txt
复制
/usr/local/Cellar/postgresql/9.0.4/share/postgresql/postgresql.conf.sample
代码语言:txt
复制
/usr/share/postgresql/postgresql.conf.sample

代码语言:txt
复制
so I did this:
代码语言:txt
复制
代码语言:txt
复制
egrep 'listen|port' /usr/local/Cellar/postgresql/9.0.4/share/postgresql/postgresql.conf.sample 
代码语言:txt
复制
#listen_addresses = 'localhost'     # what IP address(es) to listen on;
代码语言:txt
复制
#port = 5432                # (change requires restart)
代码语言:txt
复制
                # supported by the operating system:
代码语言:txt
复制
                #   %r = remote host and port
代码语言:txt
复制
代码语言:txt
复制
so I tried this:
代码语言:txt
复制
代码语言:txt
复制
> cp /usr/local/Cellar/postgresql/9.0.4/share/postgresql/postgresql.conf.sample /usr/local/Cellar/postgresql/9.0.4/share/postgresql/postgresql.conf        
代码语言:txt
复制
> cp /usr/share/postgresql/postgresql.conf.sample /usr/share/postgresql/postgresql.conf 
代码语言:txt
复制
代码语言:txt
复制
still getting the same "Is the server running?" message.
相关文章

相似问题

相关问答用户
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档