Konfiguracja bazy danych (GNU/Linux)

Konfiguracja bazy MySQL

W celu skonfigurowania bazy MySQL do połączenia z hostem o podanym adresie IP należy umożliwić dostęp z zewnętrznego adresu IP i dodać odpowiedniego użytkownika.

Otworzyć w edytorze tekstowym plik konfiguracyjny mysqld.cnf wykonując polecenie:

$ sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

Przejść do wiersza który zaczyna się od dyrektywy bind-address i zmienić jej wartość z

# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address            = 127.0.0.1
na
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address            = 0.0.0.0

Zrestartować usługę MySQL wykonując polecenie:

$ sudo systemctl restart mysql

Następnie zalogować się do bazy MySQL poleceniem:

$ mysql -u root -p

Dodać nowego użytkownika poleceniem:

mysql> CREATE USER 'nazwa_uzytkownika@adres_ip' IDENTIFIED BY 'haslo';

Następnie nadać użytkownikowi uprawnienie do odczytu z bazy danych

mysql> GRANT SELECT on *.* TO 'nazwa_uzytkownika@adres_ip' WITH GRANT OPTION;

mysql> FLUSH PRIVILEGES;

mysql> exit;

Na koniec dodać do firewalla wyjątek pozwalający na połączenie się do bazy z podanego adresu IP:

$ sudo ufw allow from to any port 3306

Konfiguracja bazy PostgreSQL

W celu skonfigurowania bazy PostgreSQL do połączenia z hostem o podanym adresie IP należy umożliwić dostęp z zewnętrznego adresu IP i dodać wyjątek dla podanego hosta.

Poszukać lokalizacji plików konfiguracyjnych bazy PostgreSQL przy pomocy polecenia:

$ sudo -u postgres psql -c "SHOW config_file;"

Następnie otworzyć w edytorze tekstowym plik konfiguracyjny postgresql.conf wykonując przykładowo polecenie:

$ sudo nano /etc/postgresql/14/main/postgresql.conf

Przejść do wiersza który zaczyna się od dyrektywy listen_addresses odkomentować go i zmienić jej wartość z

listen_addresses = 'localhost'

na

listen_addresses = '*'

Zrestartować usługę PostgreSQL wykonując polecenie:

$ sudo systemctl restart postgresql

Następnie otworzyć do edycji plik konfiguracyjny pg_hba.conf

$ sudo nano /etc/postgresql/14/main/pg_hba.conf

Na końcu pliku dodać wpis o hoście na podanym adresie IP:

# TYPE DATABASE         USER            ADDRESS            METHOD
host        nazwa_bazy       nazwa_uzytk  adres_ip              md5

Po zapisaniu zmian przeładować konfigurację logując się do bazy danych przy pomocy programu psql wykonując w polecenie:

postgres=# SELECT pg_reload_conf();

Na koniec dodać do firewalla wyjątek pozwalający na połączenie się do bazy z podanego adresu IP:

$ sudo ufw allow from to any port 5432

Ta strona korzysta z plików cookie, aby zapewnić najlepszą obsługę na naszej stronie. Korzystając z naszej strony, wyrażasz zgodę na pliki cookie.
ZAPISZ