Как восстановить пароли, хранящиеся в DBeaver
Для DBeaver 6.1.3+ пароли теперь хранятся в файле “json” с новым шифрованием.
Где найти файл хранящий сохраненные пароли, Вы можете узнать на страницах официальной документации.
А потом Вы можете использовать скрипт на питоне 2/3 для расшифровки и вывода результатов.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import sys
import base64
import os
import json
from Crypto. Cipher import AES
if len ( sys . argv ) < 2 :
filepath = os . path . expanduser ( «~/.local/share/DBeaverData/workspace6/General/.dbeaver/credentials-config.json» )
else :
filepath = sys . argv [ 1 ]
# Python 3
#PASSWORD_DECRYPTION_KEY = bytes([-70, -69, 74, -97, 119, 74, -72, 83, -55, 108, 45, 101, 61, -2, 84, 74])
#PASSWORD_DECRYPTION_KEY = bytes([186, 187, 74, 159, 119, 74, 184, 83, 201, 108, 45, 101, 61, 254, 84, 74])
# Python 2
PASSWORD_DECRYPTION_KEY = bytearray ( [ 186 , 187 , 74 , 159 , 119 , 74 , 184 , 83 , 201 , 108 , 45 , 101 , 61 , 254 , 84 , 74 ] )
data = open ( filepath , ‘rb’ ) . read ( )
# Python 3
# decryptor = AES.new(PASSWORD_DECRYPTION_KEY, AES.MODE_CBC, data[:16])
# Python 2
decryptor = AES. new ( str ( PASSWORD_DECRYPTION_KEY ) , AES. MODE_CBC , data [ : 16 ] )
# The ‘-8’ was observed in my case, I’m not sure it will be the same in every case
# Basically this was the string ‘\x08\x08\x08\x08\x08\x08\x08\x08’ in the decrypted output
output = decryptor. decrypt ( data [ 16 : ] ) [ :- 11 ]
print ( json. dumps ( json. loads ( output ) , indent = 4 , sort_keys = True ) )
Вывод будет похож на что-то подобное:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
{ «mariaDB-16e4609c25e-2737c22fbf07523e» : { «#connection» : { «user» : «root» , «password» : «XXXXXXXXXXX» } , «network/ssh_tunnel» : { «user» : «woreg» } } , «profile:255.255.255.255» : { «network/ssh_tunnel» : { «user» : «remo» } } }
{
«mariaDB-16e4609c25e-2737c22fbf07523e» : {
«#connection» : {
«password» : «XXXXXXXXXXXXXXX» ,
«user» : «root»
} ,
«network/ssh_tunnel» : {
«user» : «remo»
}
} ,
«profile:255.255.255.255» : {
«network/ssh_tunnel» : {
«user» : «remo»
}
}
}
Установка и настройка Dbeaver для работы с витриной данных Лайт
Для управления базами данных витрины рекомендуется использовать DBeaver — это бесплатное программное обеспечение с открытым исходным кодом для управления базами данных (БД). Для взаимодействия с реляционными БД в витрине используется программный интерфейс JDBC (через JDBC-драйвер).
Для подключения к базе данных витрины необходимо выполнить следующие действия:
- установить приложение DBeaver (менеджер баз данных);
- получить у системного программиста учетные записи для доступа к базе данных (название БД, логин и пароль пользователя БД);
- настроить приложение DBeaver;
- установить и настроить JDBC-драйвер для работы с базой данных витрины;
- выполнить проверку подключения к базе данных витрины.
Установка приложения DBeaver
Для установки DBeaver скачайте дистрибутив приложения с официального сайта https://dbeaver.io/download/.
Установите программу стандартным способом в соответствии с операционной системой, установленной на вашем компьютере.
Установка и настройка JDBC-драйвера
Дистрибутив с актуальной версией JDBC-драйвера находится в установочном пакете витрины данных.
Процесс установки JDBC-драйвера и настройки подключения к базам данных в приложении Dbeaver, работающем под операционными системами Windows или Linux (на примере Ubuntu, версия 20.04), идентичный. Для этого выполните следующие действия:
- Откройте приложение Dbeaver;
- В главном меню приложения выберите Базы данных/Database и нажмите пункт Управление драйверами/Driver Manager;
- В открывшемся окне Менеджер драйверов/Driver Manager нажмите кнопкуНовый/New;
- В открывшемся окне Создать драйвер/Create new driver заполните следующую информацию:
- Имя драйвера/Driver Name: DtmDriver;
- Имя класса/Class Name: ru.datamart.prostore.jdbc.Driver;
- Шаблон URL/URL Template: jdbc:prostore://:.
- Установите галочку в поле Без авторизации/No authentication и Пустой пароль/Allow Empty Password;
- Во вкладке Библиотеки/Libraries нажмите кнопку Добавить файл и укажите путь к jar-файлу JDBC-драйвера укажите путь к jar-файлу с JDBC-драйвер;
- Нажмите кнопку Ок;
- Проверьте, что драйвер был добавлен в приложение. Для этого откройте окно Менеджер драйверов»/«Driver Manager (Базы данных/Database> Управление драйверами/Driver Manager) и в поисковой строке введите название драйвера – DtmDriver.
Подключение к базе данных витрины для ОС Windows/Linux
Для подключения к базам данных через JDBC-драйвер, выполните следующие действия:
- Откройте Dbeaver;
- В главном меню приложения выберите пункт База данных/Database > Новое соединение/Connect to a Database;
- В окне Создать соединение/Connect to a Database в поисковой строке введите dtmdriver;
- Выберите DtmDriver и нажмите кнопку Далее/Next; В окне Настройка соединения/Connection Settings заполните следующие поля:
— Хост — DNS-name или IP адрес сервера базы данных. Например, 172.16.0.17.
— Порт — порт для сервера базы данных, например, 9090.
В результате выполненных действий, в поле JDBC URL будет отображено следующее значение jdbc:prostore://172.16.0.17:9090; - Нажмите кнопку Тест соединения/Connection test для проверки подключения.
В случае успешного подключение отобразится сообщение о корректном подключении: - Закройте окно проверки соединения, для этого нажмите кнопку OK;
- В окне Настройка базового соединения/Connection Settings нажмите кнопку Готово/Finish.
Проверка загрузки данных в БД витрины
FROM INFORMATION_SCHEMA.schemata
WHERE schema_name = UPPER(‘test_upload_data’);
Результат выполнения должен быть Пустым.
2. Для создания тестовой БД с таблицей Trip выполните следующий sql-запрос:
CREATE TABLE test_upload_data.trip (
Как в Dbeaver восстановить сохраненный пароль
Я использую клиент баз данных DBeaver и бывают ситуации когда нужно вспомнить введенный ранее пароль для подключения. В этом клиенте нет штатных средств хранения пароля, он находится в xml в зашифрованном виде. Но не все так плохо, об этом ниже.
Первым делом, нужно открыть конфигурационный файл:
.dbeaver4\General\.dbeaver-data-sources.xml — для Windows
HOME/.dbeaver4/General/.dbeaver-data-sources.xml — для Linux
Найти в файле примерно такого содержания строку:
url=»jdbc:sqlserver://192.168.1.1:1433″ user=»user_db» password=»xxxxxxxxxxxxxx» type=»dev»>
Использование SQLite Manager для работы с СУБД SQLite
![]()
MV framework поддерживает СУБД MySQL и SQLite. Ниже представлена технология работы с базой данных SQLite, которая является компактной и быстро переносимой с одного сервера на другой, при этом обладает всеми необходимыми возможностями для современной СУБД.
MV работает с SQLite по средствам библиотеки PDO. На большинстве серверов оно включено, но если база данных не запускается по причине отсутствия драйвера, то здесь можно прочитать о его настройке. SQLite хранит всю информацию в одном файле «userfiles/database/sqlite/database.sqlite».
Дополнение к браузеру Mozilla Firefox под названием SQLite Manager более не поддерживается, и для полноценной работы с SQLite лучше всего подойдет приложение DBeaver, которое можно скачать в бесплатной версии Community Edition по ссылке https://dbeaver.io/download
DBeaver позволяет работать с базой данных по аналогии с phpMyAdmin для MySQL.
Когда DBeaver будет установлен, нужно его запустить и выбрать файл нужной базы данных «userfiles/database/sqlite/database.sqlite». Для этого нажимаем на Файл -> Новый -> Database Connection и в списке вариантов СУБД выбираем SQLite. Далее выбираем файл нашей базы из папки userfiles.

После подключения файла базы данных к DBeaver в левой колонке появится список таблиц, а в правой видны данные и структуры таблиц, с которыми можно работать.

Для создания новой таблицы необходимо нажать в левой колонке на «Таблицы» правой кнопкой мыши и далее выбрать создать объект «Таблица», после чего в правой части экрана откроется окно для ввода полей таблицы.
Для перехода в уже созданную таблицу достаточно нажать на название таблицы в левой колонке. В верхней части на вкладках можно посмотреть структуру таблицы и список записей таблицы.
В целом, работа в DBeaver не сильно отличается от работы в phpMyAdmin для MySQL. Также можно управлять таблицами и индексами, выполнять прямые запросы и создавать триггеры. Вся работа происходит только с одним файлом, который затем копируется с локального сервера на рабочий. При этом, важно не забывать ставить права на запись для файла базы данных и папки в которой он находится. В зависимости от конфигурации сервера права могут быть: 777, 770, 775 и другие.
Настройка PDO SQLite
Если драйвер PDO для SQLite подключен, то при вызове функции phpinfo() можно увидеть информацию о версии драйвера. Если же данной информации нет, то это значит, что драйвер не подключен и его надо включить в настройках PHP.

В папке библиотек (расширений) PHP должны быть файлы php_pdo_sqlite.dll и php_sqlite3.dll.

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

После перезапуска сервера в phpinfo() должна появиться информация о подключении драйвера PDO для SQLite, как на скриншоте выше.
