[comment]: # ({a313f054-b4128477})
# 4. Monitor MySQL with Zabbix agent 2

[comment]: # ({/a313f054-b4128477})

[comment]: # ({ad3dab41-2185307b})
#### Ievads

Šajā lapā ir aprakstītas darbības, kas nepieciešamas, lai sāktu MySQL servera pamata uzraudzību.

Lai uzraudzītu MySQL serveri, ir pieejamas vairākas pieejas: Zabbix aģents, Zabbix aģents 2 vai Open Database Connectivity (ODBC) standarts.
Šīs rokasgrāmatas galvenais uzsvars ir uz MySQL servera uzraudzību ar Zabbix aģentu 2, kas ir **ieteicamā** pieeja, pateicoties tās vienkāršajai konfigurēšanai dažādās vidēs.
Tomēr šajā lapā ir sniegtas arī instrukcijas par [citām pieejām](#other-approaches-to-monitor-mysql), tāpēc droši izvēlieties to, kas vislabāk atbilst jūsu prasībām.

[comment]: # ({/ad3dab41-2185307b})

[comment]: # ({0cf7feb5-831aae47})
**Kam šī rokasgrāmata ir paredzēta**

Šī rokasgrāmata ir paredzēta jauniem Zabbix lietotājiem un ietver minimālo darbību kopumu, kas nepieciešams, lai iespējotu MySQL servera pamata uzraudzību.
Ja meklējat padziļinātas pielāgošanas iespējas vai jums nepieciešama sarežģītāka konfigurācija, skatiet Zabbix rokasgrāmatas sadaļu [Configuration](/manual/config).

[comment]: # ({/0cf7feb5-831aae47})

[comment]: # ({519621df-2fd1df9d})
**Priekšnosacījumi**

Pirms turpināt ar šo ceļvedi, jums ir [jālejupielādē un jāinstalē](https://www.zabbix.com/download) Zabbix serveris, Zabbix lietotāja saskarne un Zabbix aģents 2 saskaņā ar jūsu OS paredzētajām instrukcijām.

Atkarībā no jūsu vides daži šajā ceļvedī aprakstītie soļi var nedaudz atšķirties.
Šis ceļvedis ir balstīts uz vidi, kurā darbojas Ubuntu.

[comment]: # ({/519621df-2fd1df9d})

[comment]: # ({8ae78277-ae0ef261})
#### Izveidojiet MySQL lietotāju

Lai uzraudzītu MySQL serveri, Zabbix ir nepieciešama piekļuve tam un tā procesiem.
Jūsu MySQL instalācijā jau ir lietotājs ar nepieciešamo piekļuves līmeni (lietotājs "zabbix", kas tika izveidots Zabbix instalēšanas laikā),
tomēr šim lietotājam ir vairāk privilēģiju, nekā nepieciešams vienkāršai uzraudzībai (privilēģijas DROP datubāzēm, DELETE ierakstu dzēšanai no tabulām u.c.).
Tāpēc ir jāizveido MySQL lietotājs, kas paredzēts *tikai* MySQL servera uzraudzībai.

1\. Pieslēdzieties MySQL klientam, izveidojiet lietotāju "zbx_monitor" (aizstājiet *<password>* lietotājam "zbx_monitor" ar pašu izvēlētu paroli)
un piešķiriet lietotājam nepieciešamās [GRANT](https://dev.mysql.com/doc/refman/8.0/en/grant.html) privilēģijas:

    mysql -u root -p
    # Enter password:

    mysql> CREATE USER 'zbx_monitor'@'%' IDENTIFIED BY '<password>';
    mysql> GRANT REPLICATION CLIENT,PROCESS,SHOW DATABASES,SHOW VIEW ON *.* TO 'zbx_monitor'@'%';
    mysql> quit;

Kad lietotājs ir izveidots, varat pāriet pie nākamā soļa.

[comment]: # ({/8ae78277-ae0ef261})

[comment]: # ({7d9d17aa-e6607c21})
#### Zabbix lietotāja saskarnes konfigurēšana

1\. Piesakieties Zabbix lietotāja saskarnē.

2\. [Izveidojiet hostu](/manual/config/hosts/host) Zabbix tīmekļa saskarnē:

-   Laukā *Host name* ievadiet hosta nosaukumu (piem., "MySQL server").
-   Laukā *Templates* ievadiet vai atlasiet veidni "MySQL by Zabbix agent 2", kas tiks [saistīta](/manual/config/templates/linking) ar hostu.
-   Laukā *Host groups* ievadiet vai atlasiet hostu grupu (piem., "Databases").
-   Laukā *Interfaces* pievienojiet saskarni ar tipu "Agent" un norādiet sava MySQL servera IP adresi.
    Šajā rokasgrāmatā MySQL servera, kas ir instalēts tajā pašā datorā, kur Zabbix serveris un Zabbix aģents 2, uzraudzībai tiek izmantots "127.0.0.1" (localhost).

![](../../../assets/en/manual/guides/mysql_host.png){width="600"}

-   Cilnē *Macros* pārslēdzieties uz *Inherited and host macros*, atrodiet tālāk norādītos makro un noklikšķiniet uz *Change* blakus makro vērtībai, lai to atjauninātu:
    -   {$MYSQL.DSN} - iestatiet MySQL servera datu avotu (MySQL Zabbix aģents 2 spraudņa konfigurācijas failā norādīto [nosauktās sesijas savienojuma virkni](/manual/appendix/config/zabbix_agent2_plugins/mysql_plugin#parameters)).
        Šajā rokasgrāmatā MySQL servera, kas ir instalēts tajā pašā datorā, kur Zabbix serveris un Zabbix aģents 2, uzraudzībai tiek izmantots noklusējuma datu avots "tcp://localhost:3306".
    -   {$MYSQL.PASSWORD} - iestatiet iepriekš [izveidotā MySQL lietotāja](#create-mysql-user) "zbx_monitor" paroli.
    -   {$MYSQL.USER} - iestatiet iepriekš [izveidotā MySQL lietotāja](#create-mysql-user) "zbx_monitor" nosaukumu.

![](../../../assets/en/manual/guides/mysql_macros.png){width="600"}

3\. Noklikšķiniet uz *Add*, lai pievienotu hostu. Šis hosts attēlos jūsu MySQL serveri.

[comment]: # ({/7d9d17aa-e6607c21})

[comment]: # ({bdcc4c70-339fa505})
#### Skatīt savāktos metriku datus

Apsveicam! Šajā brīdī Zabbix jau uzrauga jūsu MySQL serveri.

Lai skatītu savāktos metriku datus, dodieties uz izvēlnes sadaļu [*Uzraudzība → Hosti*](/manual/web_interface/frontend_sections/monitoring/hosts) un noklikšķiniet uz *Paneļi* blakus hostam.

![](../../../assets/en/manual/guides/mysql_hosts.png){width="600"}

Šī darbība jūs novirzīs uz hosta paneli (konfigurētu veidnes līmenī), kurā redzami svarīgākie no MySQL servera savāktie metriku dati.

![](../../../assets/en/manual/guides/mysql_dashboard.png){width="600"}

Alternatīvi, izvēlnes sadaļā [*Uzraudzība → Hosti*](/manual/web_interface/frontend_sections/monitoring/hosts) varat noklikšķināt uz [*Jaunākie dati*](/manual/web_interface/frontend_sections/monitoring/latest_data), lai sarakstā skatītu visus jaunākos savāktos metriku datus.
Ņemiet vērā, ka vienumam *MySQL: Calculated value of innodb_log_file_size* nav paredzami dati, jo vērtība tiks aprēķināta no pēdējās stundas datiem.

![](../../../assets/en/manual/guides/mysql_latestdata.png){width="600"}

[comment]: # ({/bdcc4c70-339fa505})

[comment]: # ({4cead10e-91c440fc})
#### Iestatiet problēmu brīdinājumus

Zabbix var paziņot jums par problēmu jūsu infrastruktūrā, izmantojot dažādas metodes.
Šajā rokasgrāmatā ir sniegti pamata konfigurācijas soļi e-pasta brīdinājumu nosūtīšanai.

1\. Dodieties uz [*Lietotāja iestatījumi → Profils*](/manual/web_interface/user_profile), pārslēdzieties uz *Media* cilni un [pievienojiet savu e-pastu](/manual/quickstart/login#adding-user).

![](../../../assets/en/manual/quickstart/new_media.png){width="600"}

2\. Izpildiet rokasgrāmatu par [problēmas paziņojuma saņemšanu](/manual/quickstart/notification).

Nākamreiz, kad Zabbix noteiks problēmu, jums vajadzētu saņemt brīdinājumu pa e-pastu.

[comment]: # ({/4cead10e-91c440fc})

[comment]: # ({77c86049-3e5fc0d5})
#### Pārbaudiet savu konfigurāciju

Lai pārbaudītu savu konfigurāciju, mēs varam simulēt reālu problēmu, atjauninot hosta konfigurāciju Zabbix lietotāja saskarnē.

1\. Atveriet sava MySQL servera hosta konfigurāciju Zabbix.

2\. Pārslēdzieties uz cilni *Macros* un atlasiet *Inherited and host macros*.

3\. Noklikšķiniet uz *Change* blakus, piemēram, iepriekš [konfigurētajai](#configure-zabbix-frontend) {$MYSQL.USER} makro vērtībai un iestatiet citu MySQL lietotājvārdu.

4\. Noklikšķiniet uz *Update*, lai atjauninātu hosta konfigurāciju.

5\. Pēc dažiem mirkļiem Zabbix noteiks problēmu "MySQL: Service is down", jo tas nevarēs izveidot savienojumu ar MySQL serveri.
Problēma parādīsies sadaļā [*Monitoring → Problems*](/manual/web_interface/frontend_sections/monitoring/problems).

![](../../../assets/en/manual/guides/mysql_problem.png){width="600"}

Ja brīdinājumi ir [konfigurēti](#set-up-problem-alerts), jūs saņemsiet arī problēmas paziņojumu.

6\. Mainiet makro vērtību atpakaļ uz iepriekšējo vērtību, lai novērstu problēmu un turpinātu MySQL servera uzraudzību.

[comment]: # ({/77c86049-3e5fc0d5})

[comment]: # ({599a98b0-69f193e9})
#### Citas pieejas MySQL uzraudzībai

Tā vietā, lai uzraudzītu MySQL serveri ar Zabbix aģents 2, varat izmantot arī Zabbix aģents vai Open Database Connectivity (ODBC) standartu.
Lai gan ir ieteicams izmantot Zabbix aģents 2, var būt konfigurācijas, kas neatbalsta Zabbix aģents 2 vai kurām nepieciešama pielāgota pieeja.

Galvenā atšķirība starp Zabbix aģents un ODBC ir datu ievākšanas metodē — Zabbix aģents tiek instalēts tieši MySQL serverī un ievāc datus, izmantojot tā iebūvēto funkcionalitāti,
savukārt ODBC izmanto ODBC draiveri, lai izveidotu savienojumu ar MySQL serveri un iegūtu datus, izmantojot SQL vaicājumus.

Lai gan daudzi konfigurācijas soļi ir līdzīgi MySQL servera uzraudzībai ar Zabbix aģents 2, pastāv dažas būtiskas atšķirības — jums jākonfigurē Zabbix aģents vai ODBC, lai varētu uzraudzīt MySQL serveri.
Tālāk sniegtās instrukcijas izskaidro šīs **atšķirības**.

[comment]: # ({/599a98b0-69f193e9})

[comment]: # ({c3f2cc9e-c7da6279})
##### MySQL uzraudzība ar Zabbix aģentu

Lai uzraudzītu MySQL serveri ar Zabbix aģentu, jums ir [jālejupielādē un jāinstalē](https://www.zabbix.com/download) Zabbix serveris, Zabbix lietotāja saskarne un Zabbix aģents saskaņā ar jūsu OS paredzētajām instrukcijām.

Kad esat veiksmīgi instalējis nepieciešamos Zabbix komponentus, jums ir jāizveido MySQL lietotājs, kā aprakstīts sadaļā [*MySQL lietotāja izveide*](#create-mysql-user).

Pēc MySQL lietotāja izveides jums ir jākonfigurē Zabbix aģents, lai tas varētu izveidot savienojumu ar MySQL serveri un to uzraudzīt.
Tas ietver vairāku [lietotāja parametru](/manual/config/items/userparameters) konfigurēšanu pielāgotu aģenta pārbaužu izpildei,
kā arī nepieciešamo akreditācijas datu nodrošināšanu Zabbix aģentam, lai tas varētu izveidot savienojumu ar MySQL serveri, izmantojot [iepriekš izveidoto](#create-mysql-user) lietotāju "zbx_monitor".

[comment]: # ({/c3f2cc9e-c7da6279})

[comment]: # ({ec14664c-81cd968b})
**Konfigurēt Zabbix aģentu**

1\. Dodieties uz Zabbix aģenta papildu konfigurāciju direktoriju.

    cd /usr/local/etc/zabbix/zabbix_agentd.d

::: noteimportant
Zabbix aģenta papildu konfigurāciju direktorijam jāatrodas tajā pašā direktorijā, kur ir jūsu Zabbix aģenta konfigurācijas fails (*zabbix_agentd.conf*).
Atkarībā no jūsu OS un Zabbix instalācijas šī direktorija atrašanās vieta var atšķirties no šajā rokasgrāmatā norādītās.
Noklusējuma atrašanās vietas skatiet Zabbix aģenta konfigurācijas faila [`Include`](/manual/appendix/config/zabbix_agentd#include) parametrā.
:::

Tā vietā, lai Zabbix aģenta konfigurācijas failā definētu visus nepieciešamos lietotāja parametrus MySQL servera uzraudzībai,
šie parametri tiks definēti atsevišķā failā papildu konfigurāciju direktorijā.

2\. Izveidojiet failu *template_db_mysql.conf* Zabbix aģenta papildu konfigurāciju direktorijā.

    vi template_db_mysql.conf

3\. Nokopējiet saturu no faila [*template_db_mysql.conf*](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/db/mysql_agent/template_db_mysql.conf?at=refs%2Fheads%2Frelease%2F7.4) (kas atrodas Zabbix repozitorijā) uz jūsu izveidoto failu *template_db_mysql.conf* un saglabājiet to.

4\. Pārstartējiet Zabbix aģentu, lai atjauninātu tā konfigurāciju.

    systemctl restart zabbix-agent

Kad esat konfigurējis Zabbix aģenta lietotāja parametrus, varat turpināt ar akreditācijas datu konfigurēšanu, kas ļaus Zabbix aģentam piekļūt MySQL serverim.

[comment]: # ({/ec14664c-81cd968b})

[comment]: # ({49d8d7e7-98d0d0b4})
5\. Pārejiet uz Zabbix aģents mājas direktoriju (ja tā jūsu sistēmā nepastāv, tā ir jāizveido; noklusējums: */var/lib/zabbix*).

    cd /var/lib/zabbix

6\. Izveidojiet *.my.cnf* failu Zabbix aģents mājas direktorijā.

    vi .my.cnf

7\. Iekopējiet tālāk norādīto saturu failā *.my.cnf* (aizstājiet *<password>* ar lietotāja "zbx_monitor" paroli).

    [client]
    user='zbx_monitor'
    password='<password>'

[comment]: # ({/49d8d7e7-98d0d0b4})

[comment]: # ({e1d7b01f-3d796e6b})
**Konfigurējiet Zabbix lietotāja saskarni un pārbaudiet savu konfigurāciju**

Lai konfigurētu Zabbix lietotāja saskarni, izpildiet norādījumus sadaļā [*Configure Zabbix frontend*](#configure-zabbix-frontend), veicot šādas izmaiņas:

-   Laukā *Templates* ierakstiet vai atlasiet veidni "MySQL by Zabbix agent", kas tiks [saistīta](/manual/config/templates/linking) ar hostu.
-   *Macros* konfigurēšana nav nepieciešama.

Kad esat konfigurējis Zabbix lietotāja saskarni, varat [skatīt savāktos metriku datus](#view-collected-metrics) un [iestatīt problēmu brīdinājumus](#set-up-problem-alerts).

Lai pārbaudītu savu konfigurāciju, izpildiet norādījumus sadaļā [*Test your configuration*](#test-your-configuration), veicot šādas izmaiņas:

-   MySQL servera hosta konfigurācijas sadaļā *Inherited and host macros* noklikšķiniet uz *Change* blakus makrosa {$MYSQL.PORT} vērtībai un iestatiet citu portu (piemēram, "6033").

![](../../../assets/en/manual/guides/mysql_port.png){width="600"}

[comment]: # ({/e1d7b01f-3d796e6b})

[comment]: # ({b2aad39e-876f1a94})
##### MySQL uzraudzība ar ODBC

Lai uzraudzītu MySQL serveri ar ODBC, jums ir [jālejupielādē un jāinstalē](https://www.zabbix.com/download) Zabbix serveris un Zabbix lietotāja saskarne.

Kad esat veiksmīgi instalējis nepieciešamos Zabbix komponentus, jums ir jāizveido MySQL lietotājs, kā aprakstīts sadaļā [*MySQL lietotāja izveide*](#create-mysql-user).

Pēc MySQL lietotāja izveides jums ir jākonfigurē ODBC.  
Tas ietver vienas no visbiežāk izmantotajām atvērtā pirmkoda ODBC API implementācijām — [unixODBC](https://www.unixodbc.org/) — un unixODBC draivera instalēšanu, kā arī ODBC draivera konfigurācijas faila rediģēšanu.

[comment]: # ({/b2aad39e-876f1a94})

[comment]: # ({f1ebeea4-445fc52a})
**ODBC konfigurēšana**

1\. Instalējiet unixODBC. Ieteicamais unixODBC instalēšanas veids ir izmantot Linux operētājsistēmas noklusējuma pakotņu repozitorijus.

    apt install unixodbc

2\. Instalējiet MariaDB unixODBC datubāzes draiveri. Lai gan jums ir MySQL datubāze, saderības apsvērumu dēļ tiek izmantots MariaDB unixODBC draiveris.

    apt install odbc-mariadb

3\. Pārbaudiet ODBC konfigurācijas failu *odbcinst.ini* un *odbc.ini* atrašanās vietu.

    odbcinst -j

Šīs komandas izpildes rezultātam jābūt līdzīgam šādam.

    unixODBC 2.3.9
    DRIVERS............: /etc/odbcinst.ini
    SYSTEM DATA SOURCES: /etc/odbc.ini
    FILE DATA SOURCES..: /etc/ODBCDataSources
    ...

4\. Lai konfigurētu ODBC draiveri MySQL datubāzes uzraudzībai, jums ir nepieciešams draivera nosaukums, kas atrodas failā *odbcinst.ini*.
Tālāk redzamajā *odbcinst.ini* faila piemērā draivera nosaukums ir "MariaDB Unicode".

    [MariaDB Unicode]
    Driver=libmaodbc.so
    Description=MariaDB Connector/ODBC(Unicode)
    Threading=0
    UsageCount=1

5\. Iekopējiet tālāk norādīto saturu failā *odbc.ini* (aizstājiet *<password>* ar lietotāja "zbx_monitor" paroli).
Šajā rokasgrāmatā tiek izmantota "127.0.0.1" (localhost) kā MySQL servera adrese, lai uzraudzītu MySQL serveri, kas ir instalēts tajā pašā datorā, kur ODBC draiveris.
Pievērsiet uzmanību datu avota nosaukumam (DSN) "test", kas būs nepieciešams, kad [konfigurēsiet Zabbix lietotāja saskarne](#configure-zabbix-frontend).

    [test]
    Driver=MariaDB Unicode
    Server=127.0.0.1
    User=zbx_monitor
    Password=<password>
    Port=3306
    Database=zabbix

[comment]: # ({/f1ebeea4-445fc52a})

[comment]: # ({f773e20d-062f32d6})
**Konfigurējiet Zabbix lietotāja saskarni un pārbaudiet savu konfigurāciju**

Lai konfigurētu Zabbix lietotāja saskarni, izpildiet norādījumus sadaļā [*Konfigurēt Zabbix lietotāja saskarni*](#configure-zabbix-frontend), veicot šādas izmaiņas:

-   Laukā *Templates* ierakstiet vai atlasiet veidni "MySQL by ODBC", kas tiks [saistīta](/manual/config/templates/linking) ar hostu.
-   *Interfaces* konfigurēšana nav nepieciešama.
-   MySQL servera hosta konfigurācijas sadaļā *Inherited and host macros* makro {$MYSQL.DSN} vērtībai jābūt iestatītai uz DSN nosaukumu no *odbc.ini* faila.

Kad esat konfigurējis Zabbix lietotāja saskarni, varat [skatīt savāktos metriku datus](#view-collected-metrics), [iestatīt problēmu brīdinājumus](#set-up-problem-alerts) un [pārbaudīt savu konfigurāciju](#test-your-configuration).

[comment]: # ({/f773e20d-062f32d6})

[comment]: # ({0ad07481-123e0265})
#### Skatīt arī

-   [Vienuma izveide](/manual/config/items/item) - kā sākt uzraudzīt papildu metriku.
-   [Problēmu eskalācijas](/manual/config/notifications/action/escalations) - kā izveidot vairāku soļu brīdinājumu scenārijus
    (piem., vispirms nosūtīt ziņojumu sistēmas administratoram, pēc tam, ja problēma netiek atrisināta 45 minūšu laikā, nosūtīt ziņojumu datu centra vadītājam).
-   [ODBC uzraudzība](/manual/config/items/itemtypes/odbc_checks) - kā iestatīt ODBC citos Linux distributīvos un kā sākt uzraudzīt papildu ar datubāzi saistītus metriku ar ODBC.
-   Veidne [*MySQL by Zabbix aģents*](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/db/mysql_agent?at=refs%2Fheads%2Frelease%2F7.4) - papildu informācija par *MySQL by Zabbix aģents* veidni.
-   Veidne [*MySQL by Zabbix aģents 2*](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/db/mysql_agent2?at=refs%2Fheads%2Frelease%2F7.4) - papildu informācija par *MySQL by Zabbix aģents 2* veidni.
-   Veidne [*MySQL by ODBC*](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/db/mysql_odbc?at=refs%2Fheads%2Frelease%2F7.4) - papildu informācija par *MySQL by ODBC* veidni.

[comment]: # ({/0ad07481-123e0265})
