Вызов команды psql без выбора базы данных.

11

Синтаксис psqlклиента командной строки

psql [option...] [dbname [username]]

Я передаю команду ALTER DATABASE x RENAME to yэтой команде:

echo `ALTER DATABASE x RENAME to y` | psql

В настоящее время я получаю ошибку

psql: FATAL:  database "myuser" does not exist

Похоже, psqlкоманда пытается открыть базу данных с тем же именем, что и текущее имя пользователя.

Как я могу запустить psqlкоманду без выбора базы данных?

Редактировать :

Обходной путь - это, конечно, просто создать пустую базу данных для пользователя.

Использование базы данных xв качестве параметра не работает, так как это блокирует переименование.

Alex
источник

Ответы:

1

В Ubuntu:

sudo -u postgres psql
postgres=# ALTER DATABASE "old" RENAME TO "new";
ALTER DATABASE
postgres=# \q
alditis
источник