Ik gebruik het volgende commando:
mysql -u root -h 127.0.0.1 -p
en de foutmelding is:
ERROR 2003 (HY000): Can't connect to MySQL server on '127.0.0.1' (111)
Wie kan me helpen om het op te lossen?
Antwoord 1, autoriteit 100%
Als u ubuntu
gebruikt, moet u de volgende stappen volgen om deze fout te voorkomen (als er geen replicatie is ingeschakeld):
- voer het commando
vim /etc/mysql/my.cnf
- commentaar
bind-address = 127.0.0.1
met het # symbool - start je mysql-server één keer opnieuw.
uit
Bijwerken
Als u in stap 1 bind-address
niet kunt vinden in het bestand my.cnf
, zoek het dan op in /etc/mysql/mysql.conf.d/mysqld.cnf
bestand.
Update indien MySQL-replicatie is ingeschakeld
Probeer verbinding te maken met de MySQL-server op IP
waarvoor de MySQL-server is gebonden in ‘my.cnfinstead of
localhost of 127.0.0.1`.
Antwoord 2, autoriteit 7%
Probeer localhost
in plaats van 127.0.0.1
om verbinding te maken of in uw connection-config
. Werkte voor mij op een Debian Squeeze Server
Antwoord 3, autoriteit 4%
Dit gebeurt wanneer u vergeet de database te starten voordat u er verbinding mee maakt:
mysql.server start
dan
mysql -u root -p -h 127.0.0.1
Antwoord 4, autoriteit 3%
In mijn geval (externe verbinding) hielp het uitschakelen van de firewall op de server.
service iptables stop
Antwoord 5, autoriteit 3%
Dit probleem kan optreden omdat uw MySQL-server niet is geïnstalleerd en niet actief is.
Om dat te doen, start u de opdrachtprompt als admin en voert u de opdracht in:
"C:\Program Files (x86)\MySQL\MySQL Server 5.1\bin\mysqld" --install
Als u het bericht “service succesvol geïnstalleerd” krijgt, moet u de MySQL-service starten. Om dat te doen: ga naar het venster Services
(Taakbeheer -> Services -> Services openen)
Zoek naar MySQL en start het vanuit de bovenste navigatiebalk.
Als u vervolgens mysql.exe probeert te openen, zal het werken.
Antwoord 6, autoriteit 3%
kijk naar het bestand my.cnf
, als het de sectie [client]
bevat en de port
een andere is dan de echte luisterpoort ( standaard 3306), moet u de server verbinden met de expliciete parameter -P 3306
, bijv.
mysql -u root -h 127.0.0.1 -p -P 3306
Antwoord 7
U moet de parameter bind-address wijzigen in 127.0.0.1 in het mysql-configuratiebestand (my.ini of my.cnf) of de parameter gebruiken die daar is gedefinieerd.
Als dat niet werkt, moet u controleren of de mysql-service daadwerkelijk actief is.
Antwoord 8
Als u op een niet-standaard poort draait, kunt u proberen --port=<port num>
te gebruiken
mits --skip-networking
not enabled.
Antwoord 9
Ik heb alleen dit probleem…. draait in Win7 en wamp server… na dit lezen
Gevonden dat Antivirus Firewall het probleem heeft veroorzaakt.
Antwoord 10
Ik zat ook met hetzelfde probleem.
Het volgende heeft me geholpen het probleem op te lossen:
ga naar configuratiescherm-> Administratieve tools–>services hierin zul je zeker de MySQL-service zien: klik met de rechtermuisknop en zeg start(force start).
Antwoord 11
Voor Docker-gebruikers– Wanneer u probeert om lokale sql te verbinden met behulp van mysql -u root -h 127.0.0.1 -p
en uw database is draait op Dockercontainer, zorg ervoor dat de mysql-service actief is (verifieer met behulp van docker ps
en controleer ook of u zich in de juiste poort bevindt), als de container niet werkt, krijgt u een verbindingsfout.
Best practice is om de ip’s in /etc/hosts
op uw computer in te stellen:
127.0.0.1 db.local
en uitvoeren door mysql -u root -h db.local -p
Antwoord 12
Probeer iptables niet af te sluiten en open poort 3306.
sudo iptables -A INPUT -i eth0 -p tcp -m tcp --dport 3306 -j ACCEPT
of sudo ufw allow 3306
als je ufw gebruikt.
controleer: netstat -lnp | grep mysql
je zou zo moeten krijgen:
cp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 2048/mysqld
tcp6 0 0 :::33060 :::* LISTEN 2048/mysqld
unix 2 [ ACC ] STREAM LISTENING 514961 2048/mysqld /var/run/mysqld/mysqld.sock
unix 2 [ ACC ] STREAM LISTENING 514987 2048/mysqld /var/run/mysqld/mysqlx.sock
als je null hebt, verwijder dan # voor poort = 3306 in het cnf-bestand.
Antwoord 13
Als je al het bovenstaande hebt geprobeerd en het nog steeds niet werkt. Controleer firewall.
Ik probeerde verbinding te maken vanaf een Windows-machine met een MySql Server 5.7.32 geïnstalleerd op een VirtualBox-machine met CentOs7. Ik heb alles geprobeerd en het werkte niet, hoewel ik de machine kon pingen, kon ik geen verbinding maken met de MySql-server.
Op CentOs7 zijn de commando’s om de firewall te controleren:
Stap 1: Controleer de status van uw firewallservice:
systemctl status firewallid.service
Stap 2: Schakel de firewallservice uit
systemctl stop firewallid.service
Antwoord 14
Ik heb de installatiemap gewijzigd bij het opnieuw installeren, en het werkte.
Antwoord 15
ik herstart gewoon mijn mysql-server en het probleem is opgelost
in windows net stop MySQL dan net start MySQl
ubuntu linux sudo-service start mysql
Antwoord 16
Zorg ervoor dat uw MySql-server op localhost draait.
Op Linux
Om te controleren of de MySql-server actief is:
sudo service mysql status
MySql-server gebruiken:
sudo service mysql start
Op Windows
Om te controleren of de MySql-server actief is:
C:\Windows\system32>net start
Als MySql niet in de lijst staat, moet u MySql starten/uitvoeren.
MySql-server gebruiken:
C:\Windows\system32>net start mysql
Hopelijk helpt dit.