Як підключити Postgres до серверу localhost за допомогою pgAdmin в Ubuntu?


103

Я встановив Postgres за допомогою цієї команди

sudo apt-get install postgresql postgresql-client postgresql-contrib libpq-dev

Використовуючи psql --versionна терміналі я отримуюpsql (PostgreSQL) 9.3.4

потім я встановив pgadminс

sudo apt-get install pgadmin3

Пізніше я відкрив інтерфейс користувача та створив сервер з цією інформацією

введіть тут опис зображення

але ця помилка з'являється

введіть тут опис зображення

як я можу це виправити?


завантажте postgresql v9.3 за цим посиланням https://www.enterprisedb.com/downloads/postgres-postgresql-downloads#windows і знову запустіть pgadmin III, ви отримаєте локальний хост вже встановити не потрібно підключатися.
Dhavalkumar Prajapati

Відповіді:


29

Ви не створили користувача db. Якщо це лише свіжа установка, користувач за замовчуванням є, postgresа пароль повинен бути порожнім. Після доступу до нього ви можете створити потрібних користувачів.


43
Якщо я це роблю, з’являється ця помилка Error connecting to the server: fe_sendauth: no password supplied
TuGordoBello

Тут, на панелі openuse, пароль користувача postgres не порожній, але не визначений (знак оклику в / etc / shadow). Неможливо ввести пароль.
вул.

Просто перевірена, щоб перевірити, і так, Pg видає password authentication failedкористувача, якого не існує під час використання md5auth.
Крейг Рінгер

1
як створити користувача?
ahnbizcad

2
"Помилка підключення до сервера: fe_sendauth: пароль не
вводиться

174

Змінення пароля для рольових постгресів:

sudo -u postgres psql postgres

alter user postgres with password 'postgres';

Тепер підключіться до pgadmin, використовуючи postgres ім’я користувача та postgres пароля

Тепер ви можете створювати ролі та бази даних за допомогою pgAdmin

Як змінити пароль користувача PostgreSQL?


10
а можна просто .. 'sudo -u postgres psql', а потім введіть '\ пароль'. натисніть Enter. введіть новий пароль.
Джей Моді

1
На це слід прийняти відповідь. Дякую. Це дуже допомогло.
Прамеш Байрачаря

25

Це допомагає мені:


1. Відкрийте файл pg_hba.conf

sudo nano /etc/postgresql/9.x/main/pg_hba.conf

і змінити цей рядок:

Database administrative login by Unix domain socket
local   all             postgres                                md5

до

Database administrative login by Unix domain socket
local   all             postgres                                trust
  1. Перезавантажте сервер

    sudo service postgresql перезапуск

  2. Увійдіть в psql і встановіть пароль

    psql -U postgres

ALTER USER postgres with password 'new password';

  1. Знову відкрийте файл pg_hba.conf і змініть цей рядок:
Адміністративний вхід бази даних за допомогою сокета домену Unix
    місцеві всі постгреси довіряють

до

    Адміністративний вхід бази даних за допомогою сокета домену Unix
    локальні всі postgres md5
  1. Перезавантажте сервер

    sudo service postgresql перезапуск


Це працює.

введіть тут опис зображення


Корисні посилання
1: PostgreSQL (від ubuntu.com)


Це вирішило мою проблему, але чи можете ви пояснити, чому зміна входу db адміністратора на довірчий до встановлення пароля postgres в деяких випадках?
HostMyBus

@HostMyBus Привіт чоловіче, насправді я зовсім не згадую цей випадок. Спробуйте копати відповіді з Інтернету (я думаю, що для цього є гарне пояснення)
Артем Соловев

@HostMyBus - це функція безпеки. Якщо налаштовано довіру, будь-який користувач на машині може увійти до бази даних.
Simon

І вам насправді це не потрібно: Просто скористайтеся відповіддю WiredIn
Simon

4

Створіть спочатку користувача. Ви повинні зробити це як postgres користувача. Оскільки в обліковому записі системної пошти не присвоєно жодного пароля, ви можете спочатку встановити пароль або перейти так:

sudo /bin/bash
# you should be root now  
su postgres
# you are postgres now
createuser --interactive

і програма підкаже вам.


sudo -u postgres -iпризведе до питання пароля. У моїй системі немає пароля, який ви можете ввести. Моя пропозиція працює завжди (гм, сподіваюся).
вул.

sudo -u postgress -iне призводить до питання щодо пароля (принаймні, на моєму Ubuntu після встановлення за замовчуванням). Або createuser --interactiveне призводить до запиту пароля ... :(
Ondřej Doněk

@ OndřejDoněk моя пропозиція спочатку була sudo / bin / bash, ти це зробив?
вул.

що слід ввести для ролі?
ahnbizcad

$ createuser --interactive Введіть назву ролі, яку потрібно додати: postgres Чи повинна нова роль бути суперрусером? (в / п)y
Elise Chant

2

Спочатку слід змінити пароль за допомогою терміналу. (ім’я користувача postgres)

postgres = # \ пароль postgres

Тоді вам буде запропоновано ввести пароль і підтвердити його.

Тепер ви зможете підключитися за допомогою pgadmin з новим паролем.


0

якщо ви відкриєте psqlконсоль у вікні терміналу, ввівши

$ psql

ви суперкористувацьке ім'я користувача буде показано перед =# , наприклад:

elisechant=#$

Це буде ім'я користувача, яке ви повинні використовувати для localhost.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.