MySQL ip cím szabályozás
Ha szabályozni akarjuk, hogy melyik felhasználó milyen ip címről jöhet be, akkor a user táblában kell a host mező tartalmát átírni az adott felhasználónál. Hasznos parancsok:
show databases; // Megmutatja, milyen adatbázisok vannak
connect mysql; // MySQL adatbázishoz csatlakozás
update user set host = ‘172.168.0.1’ where user = ‘foouser’; // Adott felhasználó csak a megadott ip címről jelentkezhet be
flush previleges; // A beállítások érvényre juttatása
Nekem az utolsó parancs hibát dobott:
The FLUSH PRIVILEGES command had an error:
ERROR 1146 (42S02): Table ‘mysql.servers’ doesn’t exist
Ez olyankor történhet, ha egy adatbázis frissítés során nem lett létrehozva a mysql.servers tábla. Ekkor létre kell hozni azt.
Nem csak a bejelentkezéshez lehet host-ot megadni. A jogosultságok a következő táblák alapján, a következő precedencia szerint kerülnek meghatározásra: USER, DB/HOST, TABLES_PRIV, COLUMNS_PRIV. Mindegyik tartalmaz host mezőt.
A táblák update-elgetése, majd a flush kiadása helyett használhatjuk a GRANT parancsokat is.
A jogosultságokról egy remek cikk is ír.
Azonban javaslok valamilyen adminisztrációs eszközt, ahol ezeket grafikus felületen lehet megadni.
Dump készítése:
mysqldump –user=username –password=password database > filetosaveto.sql