Как добавить базу данных в новый кластер в PostgreSQL?
Я использую
sudo pg_createcluster -u=$USER --datadir=candisDatabase -l=candisDatabase/candis.psql.log 9.6 candisCluster
создать новый кластер базы данных с указанным каталогом как candisDatabase
под учетной записью $USER ("rupav").
pg_lsclusters
Ver Cluster Port Status Owner Data directory Log file
9.6 candisCluster2 5433 online rupav candisDatabase candisDatabase/candis.psql.log
9.6 main 5432 online postgres /var/lib/postgresql/9.6/main /var/log/postgresql/postgresql-9.6-main.log
кластер создан успешно, и я могу запустить / запустить новый кластер и сервер CandisCluster2 с pg_ctlcluster 9.6 candisCluster2 start
успешно
Ниже приведено состояние нового кластера (используя pg_ctlcluster 9.6 candisCluster2 status
):
/usr/lib/postgresql/9.6/bin/postgres "-D" "candisDatabase" "-c" "config_file=/etc/postgresql/9.6/candisCluster2/postgresql.conf"
Теперь этот сервер прослушивает порт 5433, как я могу добавить создание роли, базы данных и пароля в данном кластере. По умолчанию (после установки postgresql) я могу сделать sudo -u postgres psql
войти в оболочку psql.
Короче говоря, я хотел бы, чтобы все мои таблицы в каталоге данных были указаны как candisDatabase
который принадлежит пользователю, отличному от postgres
,
Сведения о системе: я нахожусь на 'Ubuntu 17.10 (Oracle VM, хост, являющийся окнами), и версия postgresql - 9.6
1 ответ
Учитывая, что вы указали пользователя, вы не хотите, чтобы су postgres
, su пользователю, которого вы указали вместо.
если это ты просто делаешь
psql "port=5433 dbname=postgres"