Решите проблему ошибки PostgreSQL «psql: FATAL: база данных «root» не существует».

Узнайте, как решить распространенную ошибку PostgreSQL «psql: FATAL: база данных «root» не существует». Новые пользователи PostgreSQL часто сталкиваются с этой ошибкой при первом входе в PostgreSQL.

Требования

  • Облачный сервер под управлением Linux (любой дистрибутив)
  • Установленный и запущенный PostgreSQL

Переключитесь на пользователя PostgreSQL

Если в прошлом вы пользовались MySQL/MariaDB, вы можете привыкнуть входить в базу данных с помощью команды mysql -u root -p из любой учетной записи. Однако в PostgreSQL используется другая модель безопасности.

PostgreSQL имеет собственного пользователя в системе, который создается при установке PostgreSQL. Пользователь postgres может входить в PostgreSQL без пароля. Никакой другой пользователь не может войти в PostgreSQL.

Это означает, что перед использованием PostgreSQL вам необходимо переключиться на эту учетную запись пользователя с помощью команды :

su - postgres

Затем вы сможете войти в клиент PosgreSQL с помощью команды:

psql

Вы не сможете получить доступ к базе данных из командной строки как любой другой пользователь.

Что означает ошибка

Когда вы входите в PostgreSQL под любым пользователем, кроме пользователя postgres, он будет пытаться ввести вас в базу данных с тем же именем, что и ваша учетная запись. Это означает, что если вы попытаетесь использовать команду psql от имени root, она попытается ввести вас в корень базы данных. Если вы попытаетесь войти в систему под именем jdoe, она будет искать базу данных jdoe, и так далее.

Не найдя такой базы данных, PostgreSQL выдает сообщение об ошибке: «База данных [ваше имя пользователя] не существует».

Оцените статью
cdelat.ru
Добавить комментарий