[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: MySQL 4.0 (sarge) --> MySQL 5.0 (etch) -- Please do "REPAIR TABLE"



04-06-07, Jarek Buczyński <jaro80@gmail.com> napisał(a):
Witam,

Po aktualizacji MySQl'a z wersji 4 na 5, pojawiają się takie błędy:

------------------------------------------------------------------
Version: '5.0.32-Debian_7etch1-log'
socket: '/var/run/mysqld/mysqld.sock'
port: 3306  Debian etch distribution
/etc/mysql/debian-start[8752]: Upgrading MySQL tables if necessary.
/etc/mysql/debian-start[8760]: Checking for crashed MySQL tables.
....
Checking for corrupt, not cleanly closed and upgrade needing tables..
...
Table upgrade required. Please do "REPAIR TABLE `adresy`"
to fix it!
------------------------------------------------------------------

Można to jakoś "hurtowo" naprawić, czy muszę łączyć się z każdą bazą i
osobno robić REPAIT TABLE ? - co raczej jest bardzo kłopotliwe bo baz jest
bardzo dużo

przeciez nie bedziesz tego robił recznie, tak na szybko skrypt ktory
prawie na pewno zadziała oprocz kilku bledow ktore nic nie zepsują
(zbackupuj pierw /var/lib/mysql)

#!/bin/bash
PASSWD=TWOJEHASLO
for i in `mysql -u root -p$PASSWD -e 'show databases'`
       do
               echo $i >> databases.idx
               echo "dodalem baze $i do indeksu baz "
       done
for c in `cat databases.idx`
       do
         for d in `mysql -u root -p$PASSWD -D $c -e 'show tables'`
           do
               mysql -u root -p$PASSWD -D $c -e "repair table $d"
           done
       done

kilka linijek a naprawi wszystko



--
Wojciech Ziniewicz
Unix SEX :{look;gawk;find;sed;talk;grep;touch;finger;find;fl
ex;unzip;head;tail; mount;workbone;fsck;yes;gasp;fsck;more;yes;yes;eje
ct;umount;makeclean; zip;split;done;exit:xargs!!;)}

Reply to: