Sziasztok!
Adatok: SuSE 10.2 / Apache 2.2.3 / PHP 5.2.0 / MySQL 5.0.26 / Drupal 5.12 / phpMyAdmin 3.0.1
A hibajelenség:
Az oldal megjelenik, de nem lehet belépni még a rendszergazda felhasználónak sem.
A következő található az error_log-ban:
PHP Warning: Table 'drupal.sessions'; doesn't exist\nquery: SELECT u.*, s.* FROM users u INNER JOIN sessions s ON u.uid = s.uid WHERE s.sid = '...'; in /includes/database.mysqli.inc on line 156
(Nagyon úgy tűnik, hogy a "sessions" rendszertáblával van gondom. A napló szerint egy éjszakai automatikus cron futás után jelentkezett a hiba.)
Megpróbáltam a "repair table sessions" parancsot, de hatástalan. (A drupal.org-on zömében idáig jut el minden bejelentés.) Napi mentésem nincs, illetve ha lenne is, az adatbázis export fájlban is ez található:
-- Tábla szerkezet: `sessions`
--
-- használatban(#145 - Table './portal/sessions' is marked as crashed and should be repaired)
--
-- A tábla adatainak kiíratása `sessions`
--
-- használatban (#145 - Table './portal/sessions' is marked as crashed and should be repaired)
Próbáltam még exportálni, kitörölni és visszaállítani az adatbázist, kombinálva a "repair table sessions" parancsal is, de ugyanoda jukadok ki.
Próbáltam a /tmp-ből kitörölni a "sess_" kezdetű fájlokat, hátha (ugyanis mint látszik, nem vagyok nagy guru).
Tudna valaki még tanácsot adni?
Már válaszolok is
Megvan, mindenkitől elnézést. A lényeg, hogy a 'sessions' tábla nem létezett, egyszerűen létre kellett hozni. Onnan látszik, hogy nem vagyok nagy tudor, hogy azt hittem, ez egy amolyan "láthatatlan" rendszertábla, amit a phpMyAdmin nem mutat. Azért tűnt el, mert amikor gyorsan biztonsági másolatot készítettem a már rossz adatbázisról, a hibás "session" táblát nem mentette el az SQL fájlba. Aztán töröltem az adatbázis tartalmát, megpróbáltam egy jóval korábbi mentést visszaállítani. - Ez volt a hiba, hiszen így hiába állítottam vissza a hibás adatbázis mentését, így már nem volt session tábla - adogathattam én ki a repair parancsokat a nem létező táblára... :-) :-P
Akkor jöttem rá az egészre, amikor újratelepítettem egy zsír új Drupalt, és lám, volt egy session táblám! Innen már egyszerű volt: exportáltam, az mentést visszaállítottam, és importáltam egy jó "session" táblát.
Csak azért írtam le, hátha valaki ezt elolvasva egyszer nem a saját kárán tanul.