Стартиране на сървър чрез rqlite

Тази страница е за потребители, които искат да използват сървърна база данни и представлява кратко, въвеждащо ръководство за базова работа с rqlite под Windows. За пълните възможности, разширени настройки и актуална документация на rqlite, моля посетете официалния сайт: https://rqlite.io

Самата програма DinoDent е тази, която се грижи за базата данни - нейното създаване, обновяване и съвместимоста ѝ с текущата версия. Потребителят не е необходимо ръчно да създава таблици или да поддържа структурата на базата данни.

1. Локално стартиране (само на един компютър)

Това е препоръчителният вариант за тестово стартиране.

  1. Изтеглете win64 версията на rqlite от GitHub и я разархивирайте на вашия компютър.
  2. Отворете папкатa.
  3. Отворете Command Prompt/Terminal в тази папка.
  4. Напишете:

rqlited.exe -http-addr 0.0.0.0:4001 -http-adv-addr 192.168.0.110:4001 data

Сървърът вече работи само на този компютър. Базата данни се съхранява в папка data намираща се в директорията на rqlited.exe. За да свържете DinoDent към сървъра, излезте от профила си и от прозореца за вход изберете: Общи настройки-> Път към базата данни-> Промени-> Сървърна база данни(rqlite)

2. Стартиране в локална мрежа (LAN / Wi-Fi)

Използва се, ако няколко компютъра свързани в една и съща мрежа трябва да ползват базата данни едновременно.

2.1 Намиране на IP адреса на компютъра

  1. Натиснете Start
  2. Напишете cmd и натиснете Enter
  3. Напишете:

ipconfig

Потърсете ред от вида:

Wireless LAN adapter Wi-Fi:
IPv4 Address : 192.168.0.110

Запомнете IP адреса (например 192.168.0.110).

2.2 Разрешаване на достъп Firewall

Стартирате терминала като администратор и изпълнявате една от двете команди:

Вариант 1 – достъп от цялата мрежа (LAN + Wi-Fi):

netsh advfirewall firewall add rule name=”rqlite HTTP 4001” dir=in action=allow protocol=TCP localport=4001

Вариант 2 – достъп само от LAN (по-сигурно):

netsh advfirewall firewall add rule name=”rqlite HTTP 4001 LAN” dir=in action=allow protocol=TCP localport=4001 remoteip=192.168.0.0/24 profile=private

2.3 Стартиране на rqlite

rqlited.exe -http-addr 0.0.0.0:4001 -http-adv-addr 192.168.0.110:4001 data

3. Зареждане на съществуваща база данни

  • Стартирате конзолния клиент чрез rqlite.exe -H 127.0.0.1 -p 4001
  • Изпълнявате следната команда: .restore C:\път\до\database.db

4. Добавяне на потребител и парола (препоръчително)

В папката на rqlite създайте файл auth.json със съдържание:

{ “users”: [ { “username”: “admin”, “password”: “password123”, “perms”: [“query”, “execute”, “status”, “ready”] } ] }

След това стартирате сървъра с добавяне на аргумент -auth auth.json:

rqlited.exe -http-addr 0.0.0.0:4001 -http-adv-addr 192.168.0.110:4001 -auth auth.json data

5. HTTPS (криптирана връзка)

Ако искате комуникацията между клиентите и сървъра да е криптирана, използвайте сертификат и частен ключ. Ако ги генерирате сами, ще трябва да посочите и CA сертификат както при сървъра, така и при настройките на клиента, или да го добавите ръчно в хранилището на операционната система на използваните устройства.

rqlited.exe -http-addr 0.0.0.0:4001 -http-adv-addr 192.168.0.110:4001 -http-cert server.crt -http-key server.key data

6. HTTPS + mTLS

Използвайки криптографска библиотека (напр. OpenSSL) създавате CA сертификат, сертификат и частен ключ за сървъра и за клиента и ги настройвате. Сървърът се стартира с:

rqlited.exe -http-addr 0.0.0.0:4001 -http-adv-addr 192.168.0.110:4001 -http-cert server.crt -http-key server.key -http-ca-cert ca.crt -http-verify-client data

ВАЖНО: Тъй като заявките към сървърната база данни не се изпращат в атомични транзакции, прекъсване или нестабилност на връзката може да доведе до неконсистентни данни. Поради тази причина използването на rqlite като уеб сървър не се препоръчва.