🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: ee.prog
Article #52

Re: arusaamatus mysql-is

#52
From: Tõnu Sergo
Date: Tue, 20 Jul 2004 11:40
62 lines
4487 bytes
Gunnar Koppel wrote:
> Terr!
> 
> Selline inetu lugu juhtus, et sai tehtud andmebaasi kasutavates skriptides
> rida muudatusi (�kshaaval, testitud ja kasutusse antud) ja siis ka tehtud
> �hte mysql-i tabelisse selline muudatus:
> 
> alter table xtabel add ms enum('e', 'j') not null default 'e';
> 
> Toodud muudatus oli ettevaatav, st et �kski skript seda ei vajanud, uus
> veerg tabelisse oli vajalik edaspidiseks. Lisaks oli veeru nimi unikaalne
> k�igi kasutatavate andmebaaside piires, st et polnud v�imalik ka tabelite
> lohaka �hendamise korral segadust tekitada.
> 
> P�rast seda muudatust hakkas pihta seletamatu anomaalia: mysql tekitas �ha
> protsesse juurde, load kasvas taevasse ja mysql-iga suhtlemine polnud
> v�imalik, masin ise oli tatine. Kui mysql-ile restart teha, siis m�nda
> aega oli k�ik OK, aga tasapisi (s�ltuvalt kasutamise aktiivsusest) olukord
> taastus. Kuna mysqlis tehtud muudatus oli niiv�rd s��tu, j�i kahtlus ikka
> skriptidele, aga mysqli logidest ei leidnud mingit �hte konkreetset
> skripti, millega h�da kaasneks. K�ll aga j�i silma, et mitmete skriptide
> loodud �hendused j�id p�rast viimast p�ringut pikaks ajaks rippuma ja
> �henduse katkestamine toimus alles palju-palju hiljem. Ja kui ka lihtne
> 'insert' tabelisse (mitte muudetud tabel, isegi teine baas)  
> k�sureakliendi kaudu mysql-i t�itsa tummaks v�ttis, siis hakkas s�venema
> kahtlus, et kuidagi on k�ige taga tabelisse tehtud muudatus.
> 
> Ja k�sk:
> 
> alter table xtabel drop ms;
> 
> l�ikas m�dapaise lahti ja k�ik toimib j�lle ladusalt. Mingit �petlikku
> j�reldust �laltoodust kahjuks teha ei suuda, ka oleks vaja nimetet veerg
> ikkagi tabelisse tekitada. 
> 
> mysql oli alguses 3.23.49 (debiani pakiversioon), jamade k�igus uuendasin
> 4.0.18 peale, mis aga olukorda kuidagi ei muutnud.
> 
> Iga selgitav vihje on teretulnd.
> 

Kas mysql konfis v�i k�sureal oli log-slow-queries parameeter? Serveri enda
logist sa aegan�udvaid p�ringuid ei n�e.
show processlist k�suga t�en�oliselt protsesse juba uurisid aga uuri, kas
rakenduses ei ole p�ringut 'SELECT * FROM xtabel ...' ja mingil p�hjusel
j��b rakendus selle uue v�lja peale andmete t��tlemisel rippu v�i hakkab
uusi p�ringuid genereerima. 
Lihtsa insert lause rippuma j��mine viitab sellele, et tabel oli lukus,
protsessidest peaks n�ha olema, mis selle tabeliga tehakse.
Mina alustaks:
1. Vaataks, mis p�ringud j��vad pikaks ajaks staatusesse 'LOCKED'
2. Vaataks, mida 'slow query' log n�itab
3. Kui kahest eelnevast probleemi p�hjust ei leia, paneks mysql-i k�iki
	p�ringuid logima ja vaataks ega midagi ebatavalist silma ei hakka.
4. Kui targemaks pole saanud, prooviks lisada sama v�lja
	teise nimega ja vaataks, kas siis samuti probleeme tekib(v�imalik, et rakenduse
	jaoks siiski on sellel ms-l mingi eriline t�hendus, ms pole unikaalne ja
	lohaks join teeb pahandust vms.)
5. Kui ikka targemaks ei saa, siis t�staks andmebaasid m�ne teise OS-ga
	masinasse ja vaataks, kuidas mysql ennast seal �lal peab. Kui probleeme
	pole, siis kontrolliks, kas OS-l on ikka viimased lapid peal ja kui on,
	siis prooviks mysql-i ise kokku kompileerida.
Technical Details
Message-ID: <40fd04a0$0$3092$bb624dac@diablo.uninet.ee>
Path: arc1-ca.pugleaf.net!g2news1.google.com!news1.google.com!news.glorb.com!news.zanker.org!news.cambrium.nl!news.cambrium.nl!news2.euro.net!fi.sn.net!newsfeed2.fi.sn.net!newsfeed3.funet.fi!newsfeed1.funet.fi!newsfeeds.funet.fi!newsfeed.uninet.ee!diablo.uninet.ee!not-for-mail
References: <Pine.LNX.4.21.0407191746030.7289-100000@koi.raamatukoi.ee>

Show Full Headers
Complete Article Headers
X-Google-Thread: f8b3f,eda72fd89da48cea
X-Google-Thread: fecc9,eda72fd89da48cea
X-Google-Attributes: gidf8b3f,gidfecc9,public
X-Google-Language: ESTONIAN,ASCII
Path: arc1-ca.pugleaf.net!g2news1.google.com!news1.google.com!news.glorb.com!news.zanker.org!news.cambrium.nl!news.cambrium.nl!news2.euro.net!fi.sn.net!newsfeed2.fi.sn.net!newsfeed3.funet.fi!newsfeed1.funet.fi!newsfeeds.funet.fi!newsfeed.uninet.ee!diablo.uninet.ee!not-for-mail
Date: Tue, 20 Jul 2004 14:40:02 +0300
From: Tõnu Sergo <napoleonATautoidpunktee>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.4) Gecko/20030624 Netscape/7.1 (ax)
X-Accept-Language: en-us, en, lv
MIME-Version: 1.0
Newsgroups: ee.prog,ee.arvutid.unix.linux.vestlus
Subject: Re: arusaamatus mysql-is
References: <Pine.LNX.4.21.0407191746030.7289-100000@koi.raamatukoi.ee>
In-Reply-To: <Pine.LNX.4.21.0407191746030.7289-100000@koi.raamatukoi.ee>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 63
Message-ID: <40fd04a0$0$3092$bb624dac@diablo.uninet.ee>
NNTP-Posting-Host: 194.204.2.14
X-Trace: 1090323618 diablo.uninet.ee 3092 194.204.2.14