sql >> Database teknologi >  >> RDS >> Mysql

Kan ikke oprette forbindelse til MySQL-server på (ip eller domænenavn)

Hvis du laver en normal installation af MySQL på Debian, vil den blive konfigureret til at blokere eksterne forbindelser til databasen.

Det betyder, at du stadig skal fortælle MySQL, at ekstern adgang er OK. For at gøre dette skal du opdatere bindeadressen for MySQL. Dette er konfigureret i my.cnf , som på Debian-baserede systemer er placeret i /etc/mysql/my.cnf .

Find det afsnit, der siger

derinde
[mysqld]

Derinde skal du sørge for at

  • linjen skip-networking er enten kommenteret (kommentarer starter med et '#') eller ikke der, og
  • Bind-adresse er sat til enten 0.0.0.0 (hvilket det er, hvis der ikke er nogen linjebindingsadresse) eller til din servers IP-adresse.

Når du har gjort dette, skal du genstarte din MySQL-tjeneste. Derefter skal du oprette en bruger, der har tilladt fjernadgang. Dette kan gøres med en SQL-forespørgsel:

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

Du kan udskifte stjernen for den IP-adresse, du vil oprette forbindelse fra, hvis den er den samme hver gang.

Til sidst skal du åbne port 3306 (den port MySQL bruger) på din firewall. Dette er normalt ikke nødvendigt, da det allerede er åbent på de fleste systemer, men det kan gøres ved at bruge følgende iptables-kommando.

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

Kilde:1



  1. PRIMÆR NØGLE-problem med oprettelse af tabeller i Rails ved hjælp af rake db:migrate-kommando med mysql

  2. importer allerede oprettet sqlite-database (xamarin)

  3. Datokolonnearitmetik i PostgreSQL-forespørgsel

  4. Hvordan virker MIN() og MAX() på CHAR/VARCHAR-strenge i MySQL?