LINUX.ORG.RU

Как подключиться к локальной базе данных в DBeaver?

 


0

1

Можно в DBeaver создать базу данных или подключиться к тем что у меня созданы (в консоли). Или в DBeaver можно только подключаться к удаленным?

Я пробовала просто создать новое подключение, но требовался какой-то пароль. У меня не стоит пароля и я его не задавала, когда устанавливала postgresql. В консоли работаю без пароля. Пароль рута тут не подходит. Не понимаю, какой пароль нужен. Или может я неправильно подключаюсь.

Ответ на: комментарий от Anoxemian

The server requested password-based authentication, but no password was provided.

anonymous
()

По умолчанию, «в консоли» используется peer auth, DBeaver такое не умеет. Тебе надо настроить в постгресе аутентификацию по паролю.

hippi90 ★★★★★
()
Ответ на: комментарий от anonymous

Поищи сокет в /var/run/postgresql, через него и подключайся.

Это для кого совет? DBeaver через сокет подключаться не умеет. Только через сеть. И через сеть можно подключаться и к локальной БД (адрес 127.0.0.1). Нужно только настроить разрешения и задать пароль. Как настроить доступ postgresql через сеть - есть масса мануалов.

sigurd ★★★★★
()
Ответ на: комментарий от sigurd

Это для кого совет?

Не для четырёхзвёздных ламерков, вам уже ничем не помочь.

через сеть можно подключаться и к локальной БД

А ещё можно с пола руками есть.

Большинство либ, работающих с сетью, поддерживает Unix socket из коробки, и даже если нет, её всегда можно притащить, DBeaver же на основе эклипса сделан, он расширяем.

  1. Запускаем БД для теста.
  2. Чекаем подключение через сокет в консоли.
  3. Создаём подключение в дебилвере.
  4. Добавляем либу junixsocket, не забываем жмякнуть кнопочку для скачивания.
  5. Правим шаблон DSN для драйвера.
  6. Подключаемся (пароль спросит, но вводить его не теруется).
  7. Радуемся, что избежали поражения мозга, во время крафта звёзд на ЛОРе.
anonymous
()
Ответ на: комментарий от anonymous

Небольшая поправочка: шаблон DSN таки глобальный, лучше его не править, а сразу прописать всё, начиная с третьего слеша, в поле «Host» в настройках подключения.

anonymous
()
Ответ на: комментарий от anonymous

Не для четырёхзвёздных ламерков, вам уже ничем не помочь.

Не собираюсь обмазываться вашим java-гамном в каждом отдельном приложении! Я просто открываю сетевой доступ и любой клиент получает доступ без дополнительных говно-библиотек. Все равно, рано или поздно потребуется удаленный доступ к БД. Лично для меня никогда не возникала даже мысль о тоннах javа-либ для доступа к БД. У меня не только java нет на серверах БД, но и графика отсутствует. И никакая разработка не идет на рабочих серверах, только удаленный доступ.
Админам локал-хоста это не понять!

sigurd ★★★★★
()
Последнее исправление: sigurd (всего исправлений: 2)

Исправь pg_hba.conf. Там надо включить доступ.

ox55ff ★★★★★
()
Ответ на: комментарий от Legioner

Каких? Относительно обычной настройки соединения понадобилось только добавить библиотеку. Слишком тяжело для пятизвёздочника, понимаю.

anonymous
()
Ответ на: комментарий от anonymous

Это ненужные усилия, которые нужно будет проводить при каждом апгрейде, как минимум.

Legioner ★★★★★
()
Ответ на: комментарий от KRex

да, именно так и подключаюсь в консоли

anonymous
()
Ответ на: комментарий от anonymous

Неубедительно оправдываешься, ламерок.

Да мне пофиг на мнение анонимуса! Проблемму доступа к локальной БД я решаю без всяких костылей, используя штатную функцию СУБД - сетевой доступ.

sigurd ★★★★★
()

Тебе надо показать pg_hba.conf и сиськи. И все будет хорошо.

anonymous
()
Ответ на: комментарий от sigurd

Какие ещё костыли, ламерок? Юникс сокет и является штатным средством доступа в рамках одного хоста.

anonymous
()
Ответ на: комментарий от KRex

Database administrative login by Unix domain socket

local all postgres peer

TYPE DATABASE USER ADDRESS METHOD

«local» is for Unix domain socket connections only

local all all peer

IPv4 local connections:

host all all 127.0.0.1/32 md5

IPv6 local connections:

host all all ::1/128 md5

Allow replication connections from localhost, by a user with the

replication privilege.

local replication all peer host replication all 127.0.0.1/32 md5 host replication all ::1/128 md5

alissia
() автор топика
Ответ на: комментарий от alissia

Тут все хорошо. Этого достаточно host all all 127.0.0.1/32 md5. Осталось пароль задать postgres.

sudo -u postgres psql
\password

Не забудь перезапуск сделать

sudo systemctl restart postgresql
KRex
()
Ответ на: комментарий от anonymous

Какие ещё костыли, ламерок?

Костылями я называю установку дополнительных либ для доступа к unix-сокету и правку шаблонов.
Зачем такие извращения, если есть штатный доступ по сети? В том числе и к локальной БД, если на сервере БД есть джава и прочая графика.
Обычно такие извращения заканчиваются вопросами «почему у меня все локально работает, а по сети - нет»

sigurd ★★★★★
()
Ответ на: комментарий от anonymous

То что ты делаешь это глупость. Если jdbc драйвер не умеет в юникс-сокет, то нужно просто в hba добавить запись с «host» и адрес либо маску, далее подключиться по tcp localhost.

anonymous
()
Ответ на: комментарий от anonymous

Глупость и недоразумение — это ты, а я просто установил библиотеку.

anonymous
()
Ответ на: комментарий от sigurd

Шаблон править не нужно, это было для наглядности, а установка библиотеки может быть извращением только для совсем уж сферического ламерка (что ты именно такой, впрочем, с первого же комментария понятно было).

есть штатный доступ по сети

Как будто доступ через сокет менее «штатный».

Обычно такие извращения заканчиваются вопросами

У бестолкового ламерья, безусловно.

Я, к слову, не настаивал на этом на как единственно верном варианте, а показал как сделать элементарную вещь, аналогично тому, как к БД без пароля подключается psql. А ты возбудился от того, что твою бестолковость расчехлили и выставили на общее обозрение.

anonymous
()
Ответ на: комментарий от anonymous

Я, к слову, не настаивал на этом на как единственно верном варианте, а показал как сделать элементарную вещь, аналогично тому, как к БД без пароля подключается psql. А ты возбудился от того, что твою бестолковость расчехлили и выставили на общее обозрение.

Странно, но по моему - это ты возбудился, и начал доказывать, что установив дополнительную либу, можно расширить функционал DBeaver. Но так и не смог убедить, чем это проще изменения одной строки в конфиге PostgreSQL для сетевого доступа как к локальной, так и любой удаленной БД. А всех, кто не хочет ставить дополнительные (левые) либы объявил ламерами. И пофиг, что на сервере БД может не быть ни джавы, ни графики для ее запуска. Как раз это - позиция ламера - админа локал-хоста, привыкшего тащить все на один комп.

sigurd ★★★★★
()
Последнее исправление: sigurd (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.