---
url: https://next.zammad.org/sr/reference/config-db-server.md
---

# Сервис базе података

Ова страна треба само да појасни делове релевантне за Zammad и није намењена
као комплетан приручник. Релевантна је само ако већ покрећете PostgreSQL
сервер и желите да на њему поставите и Zammad базу података.

::: warning
Уколико користите софтвер за организацију конекција на базу података као што је PgBouncer, обратите пажњу да користите начин организације који је потпуно
подржан у оквиру PostgreSQL. Обично је под називом „session connection pooling”. Начин организација на основу трансакција
није подржан и може довести до грешака приликом миграције базе података.
:::

У наставку се налазе локације релевантних PostgreSQL конфигурацијских
фајлова које треба подесити. Имајте на уму да се верзије могу разликовати од
вашег окружења - прилагодите где је потребно.

::: tabs

\=== Debian & Ubuntu

```ansi
/etc/postgresql/{your version}/main/postgresql.conf
```

\=== CentOS & OpenSUSE

```ansi
/var/lib/pgsql/data/postgresql.conf
```

\=== Остали

Не можете пронаћи своје конфигурацијске фајлове? Покрените следећу команду за добијање путање:

```sh
sudo -u postgres psql -c 'SHOW config_file'
```

:::

## Прилагодите величину поол-а

У оквиру `database.yml` (директоријум `config/`) можете дефинисати дозвољену
величину поол-а. Подразумевано, сваки Zammad процес заузима до `50` веза
(`pool: 50`).

Ово би требало да буде сасвим довољно за *сваки* случај употребе. Ако
доживљавате тиме-оутове везе са базом података или сличне грешке поол-а, то
обично указује на друге проблеме релевантне за ваш PostgreSQL.

## Прилагодите `max_connections` (обавезно)

Zammad подразумевано користи до 200 веза. У зависности од вашег окружења и
оптерећења, можда ће бити потребно променити ову вредност.

### Одредите вредност

Да би вам помогао да одредите број, Zammad долази са функцијом за
израчунавање предлога. Након покретања, тражи унос одређених целобројних
вредности и додатно користи интерно познате вредности за прорачун. Имајте на
уму да је предлог специфичан за инстанцу. To значи да морате покренути
прорачун на систему где желите да подесите `max_connection` вредност.

Покрените га користећи команду:

```sh
rake zammad:db:max_connections
```

### Прилагодите вредност

Повећајте максимални дозвољени број веза:

```sh
сед -и "/max_connections/c\\max_connections = 2000" <postgresql-configuration-file>
```

Примените промене рестартовањем PostgreSQL и Zammad-а (у овом редоследу):

```sh
systemctl рестарт postgresql заммад
```

## Прилагодите PostgreSQL за веће инстанце (опционо)

::: warning
Проверите прво подешавања у наставку и обезбедите да ваш систем може да испуни захтеве! Подешавања у наставку су она која смо
пронали корисним, све остало је ван оквира ове документације!
:::

Нека побољшања кеширања:

```sh
сед -и "/shared_buffers/c\\схаред_буфферс = 2GB" <postgresql-configuration-file>
```

```sh
сед -и "/temp_buffers/c\\темп_буфферс = 256MB" <postgresql-configuration-file>
```

```sh
сед -и "/work_mem/c\\work_mem = 10MB" <postgresql-configuration-file>
```

```sh
сед -и "/max_stack_depth/c\\max_stack_depth = 5MB" <postgresql-configuration-file>
```

Примените промене рестартовањем PostgreSQL и Zammad-а (у овом редоследу):

```sh
systemctl рестарт postgresql заммад
```
