Files
Baradb/docs/ru/troubleshooting.md
T

168 lines
3.3 KiB
Markdown

# Руководство по устранению проблем
## Проблемы с установкой
### Nim не найден
```bash
curl https://nim-lang.org/choosenim/init.sh -sSf | sh
echo 'export PATH=$HOME/.nimble/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
```
### Ошибка компиляции SSL
**Решение:** Всегда компилируйте с `-d:ssl`:
```bash
nim c -d:ssl -d:release -o:build/baradadb src/baradadb.nim
```
### Отсутствуют зависимости
```bash
nimble install -d -y
```
## Проблемы с выполнением
### Порт уже используется
```bash
BARADB_PORT=5433 ./build/baradadb
# или
lsof -ti:9472 | xargs kill -9
```
### Permission denied
```bash
mkdir -p ./data
chmod 755 ./data
```
### Недостаточно памяти
```bash
BARADB_MEMTABLE_SIZE_MB=32 \
BARADB_CACHE_SIZE_MB=128 \
BARADB_VECTOR_EF_CONSTRUCTION=100 \
./build/baradadb
```
### Диск заполнен
```bash
curl -X POST http://localhost:9470/api/admin/compact
./build/baradadb --compact
```
## Проблемы с запросами
### Синтаксическая ошибка
```sql
-- Правильно
SELECT name, age FROM users WHERE age > 18;
-- Неправильно (пропущена запятая)
SELECT name age FROM users WHERE age > 18;
```
### Таблица не найдена
```sql
CREATE TYPE User {
name: str,
age: int32
};
```
### Несовпадение типов
```sql
-- Правильно
SELECT * FROM users WHERE age > 18;
-- Неправильно
SELECT * FROM users WHERE age > '18';
```
## Проблемы с соединением
### Connection refused
```bash
ps aux | grep baradadb
./build/baradadb
sudo ufw allow 9472
```
### Ошибка аутентификации
```bash
BARADB_AUTH_ENABLED=true \
BARADB_JWT_SECRET="correct-secret" \
./build/baradadb
```
### SSL/TLS ошибки
```bash
BARADB_TLS_ENABLED=false ./build/baradadb
```
## Проблемы с производительностью
### Медленные запросы
```bash
curl -X POST http://localhost:9470/api/explain \
-d '{"query": "SELECT * FROM large_table"}'
```
Решения:
1. Добавить индексы: `CREATE INDEX idx_users_name ON users(name);`
2. Использовать LIMIT: `SELECT * FROM users LIMIT 100;`
3. Увеличить кэш: `BARADB_CACHE_SIZE_MB=1024`
### Высокая загрузка CPU
```bash
BARADB_COMPACTION_INTERVAL_MS=300000 ./build/baradadb
```
### Высокое потребление памяти
```bash
BARADB_MEMTABLE_SIZE_MB=64
BARADB_CACHE_SIZE_MB=256
BARADB_VECTOR_M=8
```
## Проблемы кластера
### Raft split-brain
Убедитесь в нечётном количестве узлов (3, 5, 7).
### Отставание репликации
```bash
BARADB_REPLICATION_MODE=async
```
## Режим отладки
```bash
BARADB_LOG_LEVEL=debug \
BARADB_LOG_FILE=/tmp/baradb_debug.log \
./build/baradadb
```
## Получение помощи
1. Проверьте логи: `tail -f /var/log/baradb/baradb.log`
2. Проверьте метрики: `curl http://localhost:9470/metrics`
3. Запустите диагностику: `./build/baradadb --diagnose`
4. Откройте issue с версией BaraDB и логами