PDA

Bekijk Volledige Versie : Probleem MySQL Change



tomvbr
22/06/13, 21:35
Hoi Webhosters =)

Ik heb even wat doms gedaan.

Writed this commands:
mysql> update db set Host='84.200.xx' where Db='hadmijndbnaam';
mysql> update user set Host='84.200.xx' where user='weblogin';

After that:

/etc/init.d/mysqld/restart

Wat ik dacht:
Hiermee kan ik vanaf een andere server verbinden met deze server.. :nono:

Wat is nu het probleem:
1045 - Access denied for user 'root'@'localhost' (using password: YES) op mijn site.
Kan niet inloggen in terminal met mysql -u name -p

Wie weet hoe ik dit ongedaan kan maken?
En hoe ik eventueel simpel een ip kan toewijzen aan de database (na herstel) portforwarding etc allemaal al gedaan.

Thanks!

Bart L
22/06/13, 22:10
Met de mysql init file moet je weer het e.a. kunnen herstellen.
http://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html

Mark17
22/06/13, 22:21
Wat in ieder geval kan is de mysql server starten op dezelfde manier als waarmee je het root wachtwoord kunt resetten. Vervolgens kun je als je dat doet ook de andere gegevens aanpassen. Na een herstart van MySQL zou het dan moeten werken.

tomvbr
22/06/13, 22:45
Ok bedankt! Weet een van jullie ook wat ik nu verkeerd heb gedaan? Waardoor ging het fout?

tomvbr
23/06/13, 11:10
Het probleem is hierdoor niet hersteld.
Ik kan niet inloggen localhost dus ik kan mijn wachtwoord wel resetten, maar meer ook niet.

mysql> update user set Host='84.200.xx' where user='weblogin';
Volgens mij heb ik met deze command alleen dat ip toegestaan.

SF-Jeroen
23/06/13, 12:22
Ik gok dat je nog wel vanaf een andere locatie kan inloggen (met Heidi / Navicat), en alleen niet meer lokaal? 84.xxx is neem ik aan een IP wat op je server gebound is?

Yourwebhoster
23/06/13, 15:42
Stuur anders een PM dan kijk ik met je mee.

SebastiaanStok
23/06/13, 19:14
MySQL kan worden gestart met de optie skip-grant-tables
http://stackoverflow.com/questions/1708409/how-to-start-mysql-with-skip-grant-tables

Hiermee kan je privileges weer goed zetten, doe dit echter niet blindelings! MySQL word gestart zonder enige vorm van authenticatie bescherming.
Iedereen kan dus verbinding maken en je gegevens zien en aanpassen, zorg dat de Firewall uitdrukkelijk GEEN toegang geeft van buitenaf!

Beter is om in de toekomst gebruik te maken van GRANT http://dev.mysql.com/doc/refman/5.1/en/grant.html
Zo doe je toegang toevoegen en niet bijwerken ;) verwijderen doe je met REVOKE http://dev.mysql.com/doc/refman/5.1/en/revoke.html

OT. Toegang van buitenaf regelen via de database is uit oogpunt van veiligheid erg risicovol, persoonlijk ben ik meer voorstander van de toegang van buitenaf te regelen via een configuratie bestand. Het is moeilijker om een configuratie bestand aan te passen met een SQL injectie dan een tabel :thumbdown:

The-BosS
24/06/13, 03:11
OT. Toegang van buitenaf regelen via de database is uit oogpunt van veiligheid erg risicovol, persoonlijk ben ik meer voorstander van de toegang van buitenaf te regelen via een configuratie bestand. Het is moeilijker om een configuratie bestand aan te passen met een SQL injectie dan een tabel :thumbdown:

Tja om die reden zet je ook een firewall op je server (of hardware firewall voor je server) die enkel toelaat van bepaalde (of geen) ip adressen van buitenaf te connecteren, dan mag je nog zoveel allow, grant, ... in je mysql doen als je wilt, maar werken zal het dan toch niet doen.