我在某些服务器上运行了2 个PostgreSQL实例。一个在默认端口(5432)上,另一个实例在端口 5433 上。一些用户(和进程)只需要访问第二个实例(5433),我想设置它,以便当这些用户使用类似psql
或createdb
在他们的 shell 中,它会自动将他们引导到正确的 Postgres 实例,而不是他们必须输入-p 5433
每个命令。
我试图在 www.postgresql.org 上查找它,但找不到它……可能是我的错。有谁知道怎么做?
我在某些服务器上运行了2 个PostgreSQL实例。一个在默认端口(5432)上,另一个实例在端口 5433 上。一些用户(和进程)只需要访问第二个实例(5433),我想设置它,以便当这些用户使用类似psql
或createdb
在他们的 shell 中,它会自动将他们引导到正确的 Postgres 实例,而不是他们必须输入-p 5433
每个命令。
我试图在 www.postgresql.org 上查找它,但找不到它……可能是我的错。有谁知道怎么做?
最近将我的机器从 Mac OS X Lion (10.7.4) 更新到 Mountain Lion (10.8),我认为它破坏了我的 PostgreSQL 安装。它最初是通过 Homebrew 安装的。我不是 DBA,但希望有人能告诉我如何解决这个问题。
我无法连接(但在山狮之前能够连接):
$ psql -U rails -d myapp_development
psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/pgsql_socket/.s.PGSQL.5432"?
但 Postgres 显然仍在运行:
$ ps aux | grep postgres
meltemi 2010 0.0 0.0 2444124 5292 ?? Ss Wed01PM 0:00.02 postgres: rails myapp_development [local] idle
meltemi 562 0.0 0.0 2439312 592 ?? Ss Wed12PM 0:02.28 postgres: stats collector process
meltemi 561 0.0 0.0 2443228 1832 ?? Ss Wed12PM 0:01.57 postgres: autovacuum launcher process
meltemi 560 0.0 0.0 2443096 596 ?? Ss Wed12PM 0:02.89 postgres: wal writer process
meltemi 559 0.0 0.0 2443096 1072 ?? Ss Wed12PM 0:04.01 postgres: writer process
meltemi 466 0.0 0.0 2443096 3728 ?? S Wed12PM 0:00.85 /usr/local/bin/postgres -D /usr/local/varpostgres -r /usr/local/var/postgres/server.log
它正在响应来自本地 Rails 应用程序的查询(测试数据库和开发数据库)
User Load (0.2ms) SELECT "users".* FROM "users"
Rendered users/index.html.haml within layouts/application (1.3ms)
好像没有/var/pgsql_socket/
目录,更别说/var/pgsql_socket/.s.PGSQL.5432
上面提到的socket文件了!?!也许安装山狮消除了这一点?
$ ls -l /var/ | grep pg
drwxr-x--- 2 _postgres _postgres 68 Jun 20 16:39 pgsql_socket_alt
我该如何解决这个问题?
Mac OS X (Lion) Server 包括用于某些系统实用程序(Wiki 服务器、caldav 等)的Postgres (9.0.5)。我即将开始将此服务器用于某些 Rails 应用程序,并且想知道如何正确设置我的“工具包”。我希望 Postgres 的版本从开发到生产都是一样的(9.1.3)……虽然我认为这不是绝对强制性的。
因为 Apple 可能不会在今年夏天的 Mountain Lion 之前将 Postgres 的系统版本更新到 9.0.x 以上,在服务器上获取 9.1.3 的最佳方法是什么?我被警告不要更换系统版本,因为它可能会搞砸 Apple 的某些工具,或者可能会在 Lion 更新时被覆盖。
Postgres 是否真的可以在同一台服务器上愉快地运行其自身的多个版本……在同一操作系统实例下?如果是这样,那么我假设我可以将 9.1.3 安装到 /usr/local/ 并在那里创建新的集群......单独安装系统?但我担心冲突。不知道。从来没有试过这个?!?
也许还有另一种方法来处理这个问题?