Dado:
$which psql
/Library/PostgreSQL/12/bin/psql
$which createdb
/Library/PostgreSQL/12/bin/createdb
Recentemente criei um banco de dados:
$createdb -U postgres postgres
Password:
No entanto, não entendo por que a versão do servidor varia do cliente.
$psql -U postgres
Password for user postgres:
psql (12.1, server 9.6.2)
Type "help" for help.
Como posso criar o servidor no 12.1 também?
createdb
não cria uma nova instância de banco de dados (também conhecido como 'cluster', infelizmente, pois esse termo cresceu outros usos). Ele apenas cria um novo banco de dados em uma instância já em execução, da mesma forma que oCREATE DATABASE
comando SQL.Para criar uma nova instância, use
initdb
oupg_ctl initdb
.Você claramente já tem uma instância 9.6 criada e em execução. Você provavelmente deve descobrir por que e o que está nele, e desligá-lo, desligá-lo e excluí-lo ou atualizá-lo. Você pode deixá-lo em execução e escolher uma nova porta de sua nova instância, mas isso provavelmente criará ainda mais confusão do mesmo tipo que você já tem.