Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Nie można połączyć się z serwerem MySQL na (IP lub nazwa domeny)

Jeśli wykonasz normalną instalację MySQL na Debianie, zostanie on skonfigurowany tak, aby blokować połączenia zewnętrzne z bazą danych.

Oznacza to, że nadal musisz poinformować MySQL, że dostęp z zewnątrz jest w porządku. Aby to zrobić, musisz zaktualizować adres powiązania dla MySQL. Jest to skonfigurowane w my.cnf , który w systemach opartych na Debianie znajduje się w /etc/mysql/my.cnf .

Tam znajdź sekcję, która mówi

[mysqld]

Tam musisz upewnić się, że

  • wiersz skip-networking jest albo skomentowany (komentarz zaczyna się od „#”), albo go nie ma, i
  • Adres powiązania jest ustawiony na 0.0.0.0 (co to jest, jeśli nie ma wiersza bind-address) lub do adresu IP twojego serwera.

Po wykonaniu tej czynności powinieneś ponownie uruchomić usługę MySQL. Następnie musisz utworzyć użytkownika, który ma dostęp zdalny. Można to zrobić za pomocą zapytania SQL:

GRANT ALL ON yourdatabase.* TO [email protected]'*' IDENTIFIED BY 'yourpassword';

Możesz zmienić gwiazdkę dla adresu IP, z którego będziesz się łączyć, jeśli jest za każdym razem taka sama.

Na koniec musisz otworzyć port 3306 (port, którego używa MySQL) na swoim firewallu. Zwykle nie jest to konieczne, ponieważ jest już otwarte w większości systemów, ale można to zrobić za pomocą następującego polecenia iptables.

/sbin/iptables -A INPUT -i eth0 -p tcp --destination-port 3306 -j ACCEPT
service iptables save

Źródło:1



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. jak dodać datę i godzinę z nazwą pliku kopii zapasowej za pomocą mysqldump z wiersza poleceń i zdefiniować ścieżkę pliku kopii zapasowej

  2. Jak mogę zaktualizować konkretny rekord bez uprawnień SELECT?

  3. Załaduj plik danych MySQL

  4. Czy MySql obsługuje sp_getapplock?

  5. Mysql:Jak wysłać zapytanie do kolumny, której typ jest bitowy?