鉴于:
$which psql
/Library/PostgreSQL/12/bin/psql
$which createdb
/Library/PostgreSQL/12/bin/createdb
最近我创建了一个数据库:
$createdb -U postgres postgres
Password:
但是,我不明白为什么服务器版本因客户端而异。
$psql -U postgres
Password for user postgres:
psql (12.1, server 9.6.2)
Type "help" for help.
如何在 12.1 上创建服务器?
createdb
不会创建新的数据库实例(不幸的是,又名“集群”,因为该术语已经发展到其他用途)。它只是在已经运行的实例中创建一个新数据库,与CREATE DATABASE
SQL 命令一样。要创建新实例,请使用
initdb
或pg_ctl initdb
。您显然已经创建并运行了一个 9.6 实例。您可能应该弄清楚其中的原因和内容,然后将其关闭,关闭并删除它,或者升级它。您可以让它继续运行并为您的新实例选择一个新端口,但这可能会造成更多与您已经拥有的相同类型的混淆。