Din root
konto, og denne erklæring gælder for enhver konto, er muligvis kun blevet tilføjet med localhost-adgang (hvilket anbefales).
Du kan tjekke dette med:
SELECT host FROM mysql.user WHERE User = 'root';
Hvis du kun ser resultater med localhost
og 127.0.0.1
, kan du ikke oprette forbindelse fra en ekstern kilde. Hvis du ser andre IP-adresser, men ikke den, du opretter forbindelse fra - er det også en indikation.
Du skal tilføje IP-adressen for hvert system, som du vil give adgang til, og derefter give privilegier:
CREATE USER 'root'@'ip_address' IDENTIFIED BY 'some_pass';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'ip_address';
Hvis du ser %
, jamen så er der et helt andet problem, da det er "enhver fjernkilde". Hvis du dog ønsker, at nogen/alle systemer skal forbindes via root, skal du bruge %
jokertegn for at give adgang:
CREATE USER 'root'@'%' IDENTIFIED BY 'some_pass';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
Til sidst skal du genindlæse tilladelserne, og du skulle være i stand til at have fjernadgang:
FLUSH PRIVILEGES;