Вызов команды 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в качестве параметра не работает, так как это блокирует переименование.

Ответы:



1

В Ubuntu:

sudo -u postgres psql
postgres=# ALTER DATABASE "old" RENAME TO "new";
ALTER DATABASE
postgres=# \q
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.