Виклик команди 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.