Łączenie 3CX z samodzielną bazą MySQL i Grafana
- Wprowadzenie
- Wymagania wstępne
- Krok 1: Przygotowanie bazy danych MySQL
- Konfiguracja bazy danych MySQL
- Zezwalanie na połączenia zdalne do bazy danych
- Ponowne uruchomienie bazy danych MySQL w celu zastosowania zmian
- Tworzenie dedykowanego użytkownika i bazy danych MySQL
- Tworzenie bazy danych
- Tworzenie użytkownika
- Nadawanie uprawnień
- Konfiguracja zapory sieciowej (jeśli dotyczy)
- Krok 2: Konfiguracja konektora danych (Data Connector) w 3CX
- Krok 3: Połączenie Grafana z instancją MySQL
Wprowadzenie
Ten przewodnik jest przeznaczony dla systemów działających na wersji V20 Update 7 i opisuje zwięzły proces łączenia systemu telefonicznego 3CX z samodzielną bazą danych MySQL w celu wizualizacji danych i raportowania za pomocą narzędzia Grafana.
Wymagania wstępne
- Działający serwer MySQL.
- Dostęp administracyjny do serwera MySQL.
- Dostęp do Konsoli Administracyjnej 3CX.
- Licencja 3CX 16SC lub wyższa (wymagana dla funkcjonalności konektora danych).
- Podstawowa wiedza z zakresu administracji MySQL oraz języka SQL.
Krok 1: Przygotowanie bazy danych MySQL
Konfiguracja bazy danych MySQL
Po zainstalowaniu bazy danych MySQL wprowadź następujące zmiany w konfiguracji:
Włącz parametr local_infile w konfiguracji MySQL. Upewnij się, że włączyłeś globalny parametr local_infile, który jest kluczowy dla sprawnego, masowego przesyłania danych przez 3CX. Aby to zrobić, edytuj plik konfiguracyjny MySQL i dodaj lub zmodyfikuj parametr local_infile w sekcji [mysqld]:
[mysqld] local_infile=1
Zezwalanie na połączenia zdalne do bazy danych
Domyślnie MySQL pozwala na połączenia tylko z hosta lokalnego (localhost). Musisz zezwolić na połączenia zdalne, aby centrala PBX mogła połączyć się z bazą danych. Aby to zrobić, edytuj plik konfiguracyjny MySQL i dodaj lub zmodyfikuj parametr bind-address:
bind-address = 0.0.0.0
Lokalizacja pliku konfiguracyjnego MySQL różni się w zależności od systemu operacyjnego:
- Linux: Typowe lokalizacje to /etc/mysql/my.cnf, /etc/my.cnf lub /etc/mysql/mysql.conf.d/mysqld.cnf.
- Windows: Zazwyczaj w lokalizacji C:\ProgramData\MySQL\MySQL Server X.Y\my.ini.
Ponowne uruchomienie bazy danych MySQL w celu zastosowania zmian
Po edycji pliku uruchom ponownie usługę MySQL, aby zmiany weszły w życie:
- Linux: sudo systemctl restart mysql
- Windows: Zrestartuj usługę MySQL z poziomu Menedżera Usług (Services Manager).
Tworzenie dedykowanego użytkownika i bazy danych MySQL
Zaloguj się do MySQL jako root lub użytkownik z uprawnieniami administracyjnymi:
mysql -u root -p
Wpisz hasło roota, jeśli zostaniesz o to poproszony.
Tworzenie bazy danychWybierz opisową nazwę dla swojej bazy danych CDR (np. 3cx_cdr_db).
CREATE DATABASE 3cx_cdr_db;
Wybierz silne hasło dla swojego nowego użytkownika. Przykład: CREATE USER 'cdrdb'@'%' IDENTIFIED BY '4zYThcp#KWB2aRmI2t5!P';
CREATE USER 'nasz_uzytkownik_3cx'@'host' IDENTIFIED BY 'twoje_haslo_uzytkownika_3cx';
Zastąp nasz_uzytkownik_3cx oraz twoje_haslo_uzytkownika_3cx wybranymi poświadczeniami.
Zastąp 'host' adresem IP serwera 3CX, jeśli chcesz zezwolić na połączenia z bazą tylko dla centrali PBX, lub zastąp 'host' znakiem '%', jeśli chcesz zezwolić na dostęp z dowolnego miejsca.
Przykłady:
CREATE USER 'uzytkownik_db'@'192.168.10.1' IDENTIFIED BY 'mojeHaslo'; – aby zezwolić na dostęp tylko z konkretnego IP CREATE USER 'uzytkownik_db'@'%' IDENTIFIED BY 'mojeHaslo'; – aby zezwolić na dostęp z dowolnego adresu IP
Na koniec wykonaj następujące polecenia, aby ustawić odpowiednie uprawnienia użytkownika do bazy danych:
GRANT INSERT, SELECT, CREATE, ALTER, DROP, INDEX, LOCK TABLES ON 3cx_cdr_db.* TO 'nasz_uzytkownik_3cx'@'host';
FLUSH PRIVILEGES;
Ponownie zastąp 3cx_cdr_db, nasz_uzytkownik_3cx oraz host wartościami podanymi powyżej.
Konfiguracja zapory sieciowej (jeśli dotyczy)
Upewnij się, że zapora sieciowa Twojego serwera MySQL zezwala na połączenia przychodzące na port MySQL (domyślnie: 3306) z adresu IP Twojego systemu telefonicznego 3CX.
- Linux (np. ufw):
sudo ufw allow from <Adres_IP_PBX_3CX> to any port 3306
sudo ufw reload
- Windows Firewall: Utwórz regułę przychodzącą, aby zezwolić na połączenia TCP na porcie 3306 z adresu IP Twojej centrali 3CX PBX.
Krok 2: Konfiguracja konektora danych (Data Connector) w 3CX
- W Konsoli Administracyjnej 3CX przejdź do Admin > „Integrations” (Integracje) > „Data Connector”.
- Wybierz „MySQL” i wprowadź następujące dane:
- Host: Adres IP lub nazwa FQDN (jeśli jest dostępna) hosta, na którym zainstalowano serwer MySQL.
- Port: Port bazy danych (domyślnie: 3306).
- Database Name: Nazwa bazy danych utworzonej w kroku 1.
- Username: Nazwa użytkownika dla nowego użytkownika utworzonego w kroku 1.
- Password: Hasło skonfigurowane dla nowego użytkownika.
- Data Types: Wybierz, jakie dane mają zostać przesłane.
- Frequency: Ustaw częstotliwość transferu danych z centrali PBX do serwera MySQL.
- Zapisz konfigurację i kliknij przycisk „Test” w swojej centrali, aby zweryfikować połączenie z bazą danych MySQL i potwierdzić otrzymanie komunikatu o sukcesie. Jeśli test się nie powiedzie, sprawdź ponownie hosta, port, nazwę bazy, użytkownika i hasło. Upewnij się także, że wszelkie zapory sieciowe na hoście MySQL lub w sieci zezwalają na połączenia z adresu IP Twojej centrali PBX.
Krok 3: Połączenie Grafana z instancją MySQL
- Zaloguj się do swojej instancji Grafana (np. grafana.com lub własna hostowana instancja Grafana).
- Przejdź do menu konfiguracji Grafana (ikona koła zębatego), kliknij „Data Sources” (Źródła danych) i kliknij „Add data source” (Dodaj źródło danych).
- Wyszukaj i wybierz „MySQL”.
- Skonfiguruj źródło danych w sekcji „Connection” (Połączenie), wprowadzając następujące szczegóły:
- Host: Wprowadź adres IP lub FQDN oraz port swojej bazy danych MySQL w formacie: IP/FQDN:3306.
- Database: Nazwa bazy danych utworzonej w kroku 1.
- User: Nazwa użytkownika dla nowego użytkownika utworzonego w kroku 1.
- Password: Hasło skonfigurowane dla nowego użytkownika.
- Kliknij „Save & test” (Zapisz i przetestuj) i zweryfikuj, czy otrzymałeś komunikat „Data Connection OK”. Jeśli napotkasz błędy, sprawdź ponownie szczegóły połączenia oraz konfigurację SSL. Upewnij się również, czy jakiekolwiek zapory sieciowe zezwalają na połączenia z adresów IP Grafana.
Ostatnia aktualizacja
Ten dokument został ostatnio zaktualizowany 2 czerwca 2026 r.
https://www.3cx.pl/docs/konfiguracja-mysql/
