Files
Baradb/docs/ru/installation.md
T
dimgigov c55d3080cf
CI / test (push) Has been cancelled
CI / verify (push) Has been cancelled
Clients CI / build-server (push) Has been cancelled
Clients CI / test-python (push) Has been cancelled
Clients CI / test-javascript (push) Has been cancelled
Clients CI / test-nim (push) Has been cancelled
Clients CI / test-rust (push) Has been cancelled
Update documentation and clients for v1.1.0
Documentation updates:
- Fix v0.1.0 → v1.1.0 version numbers in en, ru, fa, zh docs
- Add missing Window Functions, Multi-Tenant ERP, Supported Keywords sections
  to ru, fa, zh baraql.md (~105 lines each)
- Expand Turkish and Arabic baraql.md (110 → 268 lines)
- Expand Turkish and Arabic installation.md (62 → 307 lines)
- Add new Bulgarian documentation files (18 new files)

Client updates:
- Python: Full async/await rewrite with asyncio, request queueing
- Rust: Full async/await rewrite with tokio, async examples
- Nim: Update README to v1.1.0
- All clients now support async patterns consistently
2026-05-14 23:05:47 +03:00

6.4 KiB

BaraDB - Руководство по установке

Требования

  • Компилятор Nim >= 2.2.0
  • Заголовочные файлы OpenSSL (для поддержки TLS)
  • Операционная система: Linux, macOS, Windows

Поддерживаемые платформы

ОС Архитектура Статус
Linux x86_64 Полная поддержка
Linux ARM64 Полная поддержка
macOS x86_64 Полная поддержка
macOS ARM64 (Apple Silicon) Полная поддержка
Windows x86_64 Поддерживается
FreeBSD x86_64 🟡 Тестировалось сообществом

Установка Nim

Linux

# Официальный установщик
curl https://nim-lang.org/choosenim/init.sh -sSf | sh

# Ubuntu/Debian
sudo apt-get update
sudo apt-get install nim

# Fedora
sudo dnf install nim

# Arch Linux
sudo pacman -S nim

macOS

# Homebrew
brew install nim

# MacPorts
sudo port install nim

Windows

# Using choosenim
curl.exe -A "MSYS2_$(uname -m)" -L https://nim-lang.org/choosenim/init.ps1 | powershell -

# Using winget
winget install nim

# Using scoop
scoop install nim

Проверка установки

nim --version
# Ожидается: Nim Compiler Version 2.2.0 или выше

Установка OpenSSL

Linux

# Ubuntu/Debian
sudo apt-get install libssl-dev

# Fedora
sudo dnf install openssl-devel

# Arch Linux
sudo pacman -S openssl

macOS

OpenSSL уже включён в систему. При необходимости:

brew install openssl

Windows

OpenSSL поставляется вместе с Nim для Windows. Для ручной сборки, скачайте с slproweb.com.

Сборка BaraDB

Клонирование репозитория

git clone https://github.com/katehonz/barabaDB.git
cd barabaDB

Установка зависимостей

nimble install -d -y

Варианты сборки

Отладочная сборка

nim c -d:ssl -o:build/baradadb src/baradadb.nim

Релизная сборка (Рекомендуется)

nim c -d:ssl -d:release --opt:speed -o:build/baradadb src/baradadb.nim

Использование Nimble Tasks

# Отладочная сборка
nimble build_debug

# Релизная сборка
nimble build_release

Уменьшение размера бинарника

nim c -d:ssl -d:release --opt:size -o:build/baradadb src/baradadb.nim
strip build/baradadb

Проверка сборки

./build/baradadb --version
# Ожидается: BaraDB v1.1.0 — Multimodal Database Engine

Запуск тестов

Все тесты

nim c -d:ssl -r tests/test_all.nim

Конкретные наборы тестов

# Тесты хранилища
nim c -d:ssl -r tests/test_storage.nim

# Тесты движка запросов
nim c -d:ssl -r tests/test_query.nim

# Тесты протокола
nim c -d:ssl -r tests/test_protocol.nim

Бенчмарки

nim c -d:ssl -d:release -r benchmarks/bench_all.nim

Варианты установки

Системная установка

# Собираем релизный бинарник
nimble build_release

# Устанавливаем в /usr/local/bin
sudo cp build/baradadb /usr/local/bin/
sudo chmod +x /usr/local/bin/baradadb

# Создаём директорию для данных
sudo mkdir -p /var/lib/baradb
sudo chmod 755 /var/lib/baradb

Предварительно собранный бинарник

Скачайте последний релиз для вашей платформы:

# Linux x86_64
wget https://github.com/katehonz/barabaDB/releases/latest/download/baradadb-linux-amd64
chmod +x baradadb-linux-amd64
mv baradadb-linux-amd64 /usr/local/bin/baradadb

# Linux ARM64
wget https://github.com/katehonz/barabaDB/releases/latest/download/baradadb-linux-arm64
chmod +x baradadb-linux-arm64
mv baradadb-linux-arm64 /usr/local/bin/baradadb

# macOS
wget https://github.com/katehonz/barabaDB/releases/latest/download/baradadb-darwin-amd64
chmod +x baradadb-darwin-amd64
mv baradadb-darwin-amd64 /usr/local/bin/baradadb

Docker

# Скачать официальный образ
docker pull barabadb/barabadb:latest

# Запустить
docker run -d \
  -p 9472:9472 \
  -p 9470:9470 \
  -p 9471:9471 \
  -v baradb_data:/data \
  barabadb/barabadb

Docker Compose

docker-compose up -d

Встраиваемое использование (Nim проекты)

Добавьте в ваш файл .nimble:

requires "barabadb >= 0.1.0"

Используйте в коде:

import barabadb/storage/lsm

var db = newLSMTree("./data")
db.put("key", cast[seq[byte]]("value"))
let (found, val) = db.get("key")
db.close()

Первый запуск

# Запуск сервера
./build/baradadb

# Ожидаемый вывод:
# BaraDB v1.1.0 — Multimodal Database Engine
# BaraDB TCP listening on 127.0.0.1:9472

# Проверка через HTTP API
curl http://localhost:9470/health

# Интерактивная оболочка
./build/baradadb --shell

Устранение проблем при установке

"cannot open file: hunos"

nimble install -d -y

"BaraDB requires SSL support"

Всегда компилируйте с -d:ssl:

nim c -d:ssl -o:build/baradadb src/baradadb.nim

Медленная компиляция

Используйте параллельную компиляцию:

nim c -d:ssl -d:release --parallelBuild:4 -o:build/baradadb src/baradadb.nim

Большой размер бинарника

Используйте оптимизацию размера:

nim c -d:ssl -d:release --opt:size --passL:-s -o:build/baradadb src/baradadb.nim

Следующие шаги