Baza NetIIS-a može da postane korumpirana usled više razloga - restart servera, gubitak električne energije, problem sa hard diskom na kojem se nalazi baza ili slično. Kao posledica nekog od pobrojanih incidenata može da se dogodi da se baza zatekne u nekonzistentnom stanju.
Jedan simptom koji može da se desi je kada se u catalina.out logu pojavi sledeća greška:
Caused by: java.sql.SQLException: Illegal operation on empty result set.
Sličan je simptom kod korišćenja klijentske aplikacije da korisnik ne može da se uloguje. Tada se u Java log-u tipično pojavi ista greška kao gore.
Rešenje
Rešenje je da se uloguje na mašinu gde je instaliran NetIIS/MERA preko SSH i sprovedu sledeći koraci
Zaustaviti NetIIS/MERU (service tomcat stop);
Pokrenuti skriptu prema uputstvu dole:
cd /usr/local/tomcat/webapps/netiis/WEB-INF/classes/
java -cp /usr/local/tomcat/lib/mysql-connector-java-5.1.5-bin.jar:/usr/local/tomcat/webapps/netiis/WEB-INF/lib/commons-logging-1.1.1.jar:/usr/local/tomcat/webapps/netiis/WEB-INF/lib/log4j-1.2.17.jar:. yu.ac.bg.rcub.netiis.test.TestSQL
Broj 5.1.5 zameniti sa verzijom koja se zaista nalazi na sistemu. Konkretno, na AMRES NetIIS-u je zaista 5.1.5;
Ako se u izlazu skripte pojavio tekst „DB Corrupted“ pokrenuti skriptu još jednom;
Pokrenuti NetIIS/MERU (servicetomcat start).
2. Table crashed and should be repaired
Problem
Drugi simptom koji može da se desi je kada se u catalina.out logu pojavi sledeća greška:
is marked as crashed and should be repaired.
npr: ./netiis/rrd_cache is marked as crashed and should be repaired.
Rešenje
Rešenje je da se uradi repair baze. Provera da li je repair potreban se vrši sa:
mysqlcheck netiis
Operacija repair se pokreće sa:
mysqlcheck --repair netiis
Pažnja
Ukoliko je krah nastao zbog nedostatka prostora na disku osloboditi makar 1GB slobodnog prostora!
Pažnja
Ukoliko je krah nastao zbog problema sa rrd_cache tabelom oporavak može da potraje i nekoliko desetina sati u zavisnosti od veličine tabele. Razmotriti da se tabela napravi od nule u ovom slučaju.