<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.itcollege.ee/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Sistomin</id>
	<title>ICO wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.itcollege.ee/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Sistomin"/>
	<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php/Special:Contributions/Sistomin"/>
	<updated>2026-05-09T22:47:29Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Talk:Wine&amp;diff=9047</id>
		<title>Talk:Wine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Talk:Wine&amp;diff=9047"/>
		<updated>2010-05-07T09:37:09Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Valitud teema oleks võinud rohkem ja laialdasemalt IT näidetaga või programmidega kirjeldatud. Sobiv oleks kirjeldada või võtta&amp;lt;br /&amp;gt; aluseks tarkvarade seadistust, jõudluse parandamist, rohkem turvalisuse juttu, Microsofti ja Unix keskkonnas sobivate programmide &amp;lt;br /&amp;gt;eelistusi kasutajate poolt.&lt;br /&gt;
Mõnes kohas tekkisid väiksed kirjavead nagu: &amp;lt;b&amp;gt;1993nda aastani ja 1993ndal.&amp;lt;/b&amp;gt; &amp;lt;br /&amp;gt; Siin kohal kasutaks stiili mõttes paremat ülesehitust:&amp;lt;br /&amp;gt;&amp;lt;b&amp;gt;2. veebruari 1993. a. või 1993-ndal&amp;lt;/b&amp;gt;. Sidekriips peaks olema arvu ja teksti vahel.&amp;lt;br /&amp;gt;&lt;br /&gt;
Teaduskirjandus ja artikklite kasutus on korrektne ja isik omab head materjalide kasutamise oskust.&amp;lt;br /&amp;gt; &lt;br /&gt;
Valitud teema on huvitav ja praktiline ning kindlasti tasub uurida rohkem selle teema kohta.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kokkuvõtteks hindaksin isikut hindega väga tubli, kuna teema vastas kriteeriumitele ja autor oskas teema kohta kirjutada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retsensiooni autor: Sergei Istomin&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Tarkvaraline_RAID_Ubuntus&amp;diff=9026</id>
		<title>Tarkvaraline RAID Ubuntus</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Tarkvaraline_RAID_Ubuntus&amp;diff=9026"/>
		<updated>2010-05-07T08:07:33Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Tarkvara RAIDI installeerimine kasutades GUI */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
On olemas kaks võimalust, kuidas läheneda &#039;&#039;RAID-le&#039;&#039;: Raudvara &#039;&#039;RAID&#039;&#039; ja Tarkvara &#039;&#039;RAID&#039;&#039;.&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; on sisse ehitatud Linuxi kernelisse ja seega võib kasutaja mõelda kui kasulik võib olla osta harjumuspäraseid kontrollereid, mis omavad sisse ehitatud &#039;&#039;RAID&#039;&#039; võimalusi.&lt;br /&gt;
Teised kasutajad leiavad, et mõtekam on osta harjumusest &#039;&#039;RAID&#039;&#039; süsteeme, mis on eelnevalt konfigureeritud. Võimalus kasutada tarkvara(kerneli-baasil) või raudvara(kontrolleri-baasil) &#039;&#039;RAID&#039;&#039; lahendusi, mis võivad osutuda keerulisteks. &lt;br /&gt;
&lt;br /&gt;
==Autor== &lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=Tarkvara RAID=&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; tähendab, et üks massiiv on manageeritud kerneli poolt kui spetsiaalse raudvara &#039;&#039;RAID-ga&#039;&#039;. Kernel organiseerib kõik andmed paljudel ketastel samal ajal jookseb ainult üks virtuaalne seade rakendustel. Tarkvara RAID implementeerib erinevaid &#039;&#039;RAID&#039;&#039; tasemeid kerneli ketta (blokk seadme) koodil. Tarkvara &#039;&#039;RAID&#039;&#039; töötab odavamate IDE ketastel samamoodi nagu &#039;&#039;SCSI&#039;&#039; ketaste peal. Tänapäeva kiired protsessorid lubavad oma jõudlusel ületada Raudvara &#039;&#039;RAIDI&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;MD&#039;&#039; draiver Linuxi Kernelis on näide ühest &#039;&#039;RAID&#039;&#039; lahendusest, mis ei sõltu raudvarast. Tarkvara baasil massiivi jõudlus sõltub serveri protsessori jõudlusest ja laadimisest. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Eeldused, mida annab tarkvara &#039;&#039;RAID&#039;&#039;:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
1. Threadi taasehitatav protsessi&amp;lt;br /&amp;gt;&lt;br /&gt;
2. Massiivide teiseldavus Linuxi masinate vahel ilma rekonstrueerimiseta&amp;lt;br /&amp;gt;&lt;br /&gt;
3. Tagaplaani massiivi rekonstruktsioon kasutades süsteemi ressursse&amp;lt;br /&amp;gt;&lt;br /&gt;
4. &#039;&#039;Hot swapping&#039;&#039; ketta toetus&amp;lt;br /&amp;gt;&lt;br /&gt;
5. Automaatne &#039;&#039;CPU&#039;&#039; avastamine, et oleks eelistus teatud protsessori optimeerimisest&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tarkvara RAIDI installeerimine kasutades GUI==&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; võibolla konfigureeritud Red Hat Linuxi installeerimise ajal. Selles peatükis räägime, kuidas konfigureerida tarkvara &#039;&#039;RAIDI&#039;&#039; installeerimise ajal kasutades &#039;&#039;Disk Druid&#039;&#039; kasutajaliidest. &amp;lt;br /&amp;gt;&lt;br /&gt;
Kasutades versiooni: &amp;lt;b&amp;gt;Red Hat Linx 9&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Enne &#039;&#039;RAID&#039;&#039; kettaseadme loomist peab ennem looma &#039;&#039;RAID&#039;&#039; partitsioonid, kasutades järgmist samm-haaval juhendit:&amp;lt;br /&amp;gt;&lt;br /&gt;
1.Ketta partitsioneerimise häälestuse juures tuleb valida:&amp;lt;b&amp;gt;Manually partition with Disk Druid.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.&amp;lt;b&amp;gt;&#039;&#039;Disk Druid&#039;&#039;&amp;lt;/b&amp;gt; ekraanil tuleks valida: New to create a new partition.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.Edasi ei ole enam võimalik anda monteerimise punkti(Seda on võimalik teha siis, kui on loodud &#039;&#039;RAID&#039;&#039; seade). &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4.Järgmisena tuleks valida &#039;&#039;software RAID&#039;&#039; failisüsteemi tüübiks&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid-edit.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit: [http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-edit.png RAID partitsioon]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5.&amp;lt;b&amp;gt;&#039;&#039;Allowable Drives&#039;&#039;&amp;lt;/b&amp;gt; alt tuleks valida kettad mille peale luuakse &#039;&#039;RAID&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui arvuti või kettaseadme administraatoril on mitu ketast, siis kõik olemas olevad kettad võetakse arvesse süsteemi poolt ja need märgistatakse linnukesega ära.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tuleks ära võtta linnukesed nendelt ketastelt, kus ei looda &#039;&#039;RAID&#039;&#039; massiivi.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
6.Järgmisena tuleks sisestada ketta partitsioooni sobiv suurus.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
7.Valige &amp;lt;b&amp;gt;&#039;&#039;Fixed size&#039;&#039;&amp;lt;/b&amp;gt;, et luua kindla suurusega ketta partitsioon, siis valige &#039;&#039;Fill all space up to (MB)&#039;&#039; ja sisestage suurus &#039;&#039;MB-s&#039;&#039;, et anda partitsiooni suurus või&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;&#039;&#039;Fill to maximum allowable size&#039;&#039;&amp;lt;/b&amp;gt;, et kõik vabad olevad partitsiooni suurused täidetakse kõvakettal.&amp;lt;br /&amp;gt; &lt;br /&gt;
Kui administraator või kasutaja teevad rohkem kui ühe partitsiooni, siis jagatakse vaba ruum ketta peal.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
8.Valige &amp;lt;b&amp;gt;&#039;&#039;Force to be a primary partition&#039;&#039;&amp;lt;/b&amp;gt;, et partitsioon peaks olema &#039;&#039;primary partition&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
9.Valige &amp;lt;b&amp;gt;&#039;&#039;Check for bad blocks&#039;&#039;&amp;lt;/b&amp;gt; kui kasutaja soovib, et installeerimise käigus kontrollitakse vigaseid blokke kõvakettal enne formateerimist.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
10.Vajutage &amp;lt;b&amp;gt;&#039;&#039;OK&#039;&#039;&amp;lt;/b&amp;gt;, et naaseda peamenüüsse.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Korrake need sammud kõik uuesti läbi, et luua nii palju partitsioone kui vajalik.&amp;lt;br /&amp;gt;&lt;br /&gt;
Ketaste partitsioneerimisel on võimalus luua teisi ketta tüüpe peale &#039;&#039;RAIDI&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
1.Valige &#039;&#039;RAID&#039;&#039; nupp &amp;lt;b&amp;gt;&#039;&#039;Disk Druidi&#039;&#039;&amp;lt;/b&amp;gt; häälestus paneelil.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.Järgmisena ilmub pilt, kus kasutaja loob omale &#039;&#039;RAID&#039;&#039; seadme.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid-config.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-config.png RAID seadmed]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.Sisestage installeerimise koht.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4.Valige failisüsteemi tüüp partitsiooni jaoks.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5.Valige seadme nimi nagu näiteks md0 &#039;&#039;RAID&#039;&#039; seadmele.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
6.Valige oma &#039;&#039;RAID&#039;&#039; tase. Valida võib &#039;&#039;RAID 0&#039;&#039;, &#039;&#039;RAID 1&#039;&#039; ja &#039;&#039;RAID 5&#039;&#039; hulgas.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
NB!&lt;br /&gt;
RAID partitsiooni loomisel tuleks tähelepanna &amp;quot;/boot&amp;quot; partitsioon. Selle partitsooni puhul on vaja valida RAID tase 1, &lt;br /&gt;
ja see peab kasutama ühte kahest kettaseadmest(IDE esimeseks, SCSI teiseks). &lt;br /&gt;
Kui kasutaja ei loo RAID partitsiooni &amp;quot;/boot&amp;quot; tüüpi, siis kasutaja loob &amp;quot;/&amp;quot; partitsiooni tüüpi. See on RAID tase 1 &lt;br /&gt;
ja kasutusel peab olema järgmised kaks esimest ketast(IDE esimene, SCSI teiseks)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
7.Järgmised &#039;&#039;RAID&#039;&#039; partitsioonid, mida kasutaja lõi, ilmnevad &#039;&#039;RAID&#039;&#039; kasutajate loetelus. Valige milline partitsioon nendest&amp;lt;br /&amp;gt;&lt;br /&gt;
partitsioonidest peab olema kasutatud, et luua &#039;&#039;RAID&#039;&#039; seade.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
8.Kui konfigureerida &#039;&#039;RAID 1&#039;&#039; või &#039;&#039;RAID 5&#039;&#039;, siis tuleks täpsustada vabade partitsioonide arvu. Kui tarkvara &#039;&#039;RAID&#039;&#039; peaks&lt;br /&gt;
kukkuma, siis võetakse automaatselt kasutusele vaba ketas. Igale vabale ketta partitsioonile tuleks luua lisaks&lt;br /&gt;
tarkvara &#039;&#039;RAID&#039;&#039;. Eelmisel sammul, valige &#039;&#039;RAID&#039;&#039; seadmetele ja vabadele partitsioonidele. &lt;br /&gt;
&lt;br /&gt;
9.Peale vajutades OK, &#039;&#039;RAID&#039;&#039; tase ilmub &amp;lt;b&amp;gt;Drive Summary&amp;lt;/b&amp;gt; loetellu. Peale seda võib jätkata installeerimiseprotsessiga.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Lisa küsimuste tekkimiseks tuleks vaadata &#039;&#039;Red Hat Linux instructions Guid&#039;&#039;.&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid-dd.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-dd.png RAID on loodud]&lt;br /&gt;
&lt;br /&gt;
10.&#039;&#039;RAIDI&#039;&#039; massiiv on loodud.&lt;br /&gt;
&lt;br /&gt;
==Tarkvara RAIDI installeerimine kasutades kernelit ja mdadm==&lt;br /&gt;
&lt;br /&gt;
Hallates &#039;&#039;md&#039;&#039; gruppe võib olla väga keeruline ja raske. See nõuab failide redigeerimist, kus igasugune vea tegemine võib tekitada &#039;&#039;RAID&#039;&#039; gruppide kadumist. &amp;lt;br /&amp;gt;Kasutaja peab olema selle juures ettevaatlik.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Mdadm&#039;&#039; tööriist on suur ja omab erinevaid funktsioone: &lt;br /&gt;
&lt;br /&gt;
    1.&amp;lt;b&amp;gt;&#039;&#039;Assemble&#039;&#039;&amp;lt;/b&amp;gt;(Koostama): Koostab eelnevatelt loodud massiivi komponentidelt, aktiivsesse massiivi. &lt;br /&gt;
    2.&amp;lt;b&amp;gt;&#039;&#039;Build&#039;&#039;&amp;lt;/b&amp;gt;(Ehitama): Ehitada massiiv, mis igal seadmel teeb superbloki. &lt;br /&gt;
    3.&amp;lt;b&amp;gt;&#039;&#039;Create&#039;&#039;&amp;lt;/b&amp;gt;(Looma): Luua uus &#039;&#039;RAID&#039;&#039; massiiv koos superblokiga igale seadmele.&lt;br /&gt;
    4.&amp;lt;b&amp;gt;&#039;&#039;Monitor&#039;&#039;&amp;lt;/b&amp;gt;(Monitoorimine): On võimalus monitoorida ühte või mitut md seadet, mis toimib erinevatel seadmetel.&lt;br /&gt;
    5.&amp;lt;b&amp;gt;&#039;&#039;Grow&#039;&#039;&amp;lt;/b&amp;gt;(Kasvatama): Muudab suurust (kasvamise või kahanemise) või ümberkujundada md seadme. &lt;br /&gt;
    See lubab lisada  seadmeid, nii nagu vaja läheb. &lt;br /&gt;
    6.&amp;lt;b&amp;gt;&#039;&#039;Incremental Assembly&#039;&#039;&amp;lt;/b&amp;gt;(Suurendamise blokk): Lisage üksik seade massiivile.&lt;br /&gt;
    7.&amp;lt;b&amp;gt;&#039;&#039;Manage&#039;&#039;&amp;lt;/b&amp;gt;(Manageerimine): See funktsioon lubab manageerida spetsiifilisi &#039;&#039;RAID&#039;&#039; massiivi komponente&lt;br /&gt;
    nagu lisades uusi vabu seadmeid või eemaldades vigaseid seadmeid.  &lt;br /&gt;
    8.&amp;lt;b&amp;gt;&#039;&#039;Misc&#039;&#039;&amp;lt;/b&amp;gt;(Mitmesugusus): See on funktsioon, mis sisaldab kõiki teisi funktsioone, mida läheb vaja. &lt;br /&gt;
    9.&amp;lt;b&amp;gt;&#039;&#039;Auto-detect&#039;&#039;&amp;lt;/b&amp;gt;(Automaatne leiduvus): Sellel funktsioonil on võimalus leida aktiivseid kerneleid.&lt;br /&gt;
&lt;br /&gt;
Operatsioonisüsteem &#039;&#039;CentOS 5.3&#039;&#039; kasutati järgmisel süsteemil: &lt;br /&gt;
&lt;br /&gt;
     1.Emaplaat: GigaByte MAA78GM-US2H &lt;br /&gt;
     2.Protsessor: AMD Phenom II X4 920 &lt;br /&gt;
     3.Mälu: 8GB &lt;br /&gt;
     4.Kernel: Linux 2.6.30 &lt;br /&gt;
     5.Opsüsteem ja üles laadimise ketas on IBM DTLA-307020 (20GB ketas on Ulta ATA/100 peal)&lt;br /&gt;
     6./home on  Seagate ST1360827AS&lt;br /&gt;
     7.Testimiseks on kasutusel kaks ketast: Seagate ST3500641AS-RK koos 16 MB cachega. Seal on /dev/sdb ja /dev/sdb. &amp;lt;br /&amp;gt;&lt;br /&gt;
     &amp;lt;b&amp;gt;&#039;&#039;RAID 1&#039;&#039; on loodud /dev/sdb ja /dev/sdc ketaste vahel!&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==ID ketaste paigaldamine==&lt;br /&gt;
Et luua &#039;&#039;RAID 1&#039;&#039; grupp on vaja alguses määrata ketaste &#039;&#039;ID&#039;&#039;, mis on üks &#039;&#039;RAID&#039;&#039; gruppide osa. Selle tüübi nimetus on &#039;&#039;&amp;quot;fd&amp;quot;&#039;&#039; (Linuxi automaatne tuvastamine) ja seda on vaja paigutada kõikidele partitsioonidele ja/või ketastele, mis kasutavad &#039;&#039;RAID&#039;&#039; gruppe. &lt;br /&gt;
Kasutajal on võimalus kergelt kontrollida partitsiooni tüüpe: &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Näide &#039;&#039;fd&#039;&#039; kohta:&amp;lt;br /&amp;gt;&lt;br /&gt;
Iga partitsiooneerimise juures peaks esimese ketta partitsiooni tüübi muutma &#039;&#039;Linux RAID autodetect&#039;&#039;, mis on &#039;&#039;fd&#039;&#039; tüüpi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Järgmisena näeme, milline on &#039;&#039;fd&#039;&#039; tüüpi partitsiooni ketas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Device Boot    Start       End    Blocks   Id  System&lt;br /&gt;
/dev/hda1   *         1       262   2104483+  fd  Linux raid autodetect&lt;br /&gt;
/dev/hda2           263       524   2104515   82  Linux swap&lt;br /&gt;
/dev/hda3           525      1314   6345675   fd  Linux raid autodetect&lt;br /&gt;
/dev/hda4          1315      2434   8996400    5  Extended&lt;br /&gt;
/dev/hda5          1315      1837   4200966   fd  Linux raid autodetect&lt;br /&gt;
/dev/hda6          1838      2434   4795371   fd  Linux raid autodetect&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid1.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ Partitsiooni tüübid]&lt;br /&gt;
&lt;br /&gt;
==Loome RAID, mis kasutab mdadm==&lt;br /&gt;
Tööriist &#039;&#039;mdadm&#039;&#039; lubab kergelt luua &#039;&#039;RAID&#039;&#039; grupi. Selles näiteks luuakse kahe kettaga &#039;&#039;RAID-1&#039;&#039; grupp.&lt;br /&gt;
[[Image:Raid2.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ mdadm tööriist]&lt;br /&gt;
&lt;br /&gt;
Valikud mida kuvatakse ekraanile on kergelt arusaadavad. Esimene valik on &amp;quot;-create&amp;quot; sellega saab luua &#039;&#039;RAID&#039;&#039; grupp. &lt;br /&gt;
Peale &amp;quot;-verbose&amp;quot; valikut on &#039;&#039;md&#039;&#039; seade ja selle all mõeldakse /dev/md0. Peale seda on &#039;&#039;RAID&#039;&#039; tase (&amp;quot;-level&amp;quot;) - selle all mõeldakse &#039;&#039;RAID 1&#039;&#039;. Lõpuks on &#039;&#039;RAID&#039;&#039; seadmed spetsifitseeritud kasutades &amp;quot;-raid-devices&amp;quot; valikut. &amp;lt;br /&amp;gt;Ekraani peal on näha, kas kasutajal on failisüsteem ketta partitsiooni peal. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;RAID&#039;&#039; töötab blokk tasemel. Seega on see &#039;&#039;RAID&#039;&#039; kontroller. Olgu see tarkvara &#039;&#039;RAID&#039;&#039; või Raudvara &#039;&#039;RAID&#039;&#039;, see töötab &#039;&#039;RAID&#039;&#039; grupi seadmete blokkidel. &amp;lt;br /&amp;gt;See tähendab, et ta on failisüsteemist eraldatud. Järelikult kohe kui &#039;&#039;RAID 1&#039;&#039; grupp on loodud, siis on kettad sünkroniseeritud. &amp;lt;br /&amp;gt;Esimese partitsiooni blokid on kopeeritud teise partitsiooni kettale.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid3.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ Aktiivsed RAID1]&lt;br /&gt;
&lt;br /&gt;
Pange tähele, et sünkroniseerimise protsess leiab aset &amp;quot;cat-misel&amp;quot; faili sisu on /proc/mdstat.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid4.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid5.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid6.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pildid on pärit:[http://www.linux-mag.com/id/7475/1/ Sünkroniseerimise protsess]&lt;br /&gt;
&lt;br /&gt;
Peale sünkroniseerimise lõpetamist, peaks pilt järgnevalt välja nägema:&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid7.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pildid on pärit:[http://www.linux-mag.com/id/7475/1/ &#039;&#039;RAID&#039;&#039; sünkroniseerimise protsessi lõpp]&lt;br /&gt;
&lt;br /&gt;
Nii kaugele jõudes saab failisüsteem luua md seadmele &lt;br /&gt;
&lt;br /&gt;
[[Image:Raid8.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ failisüsteemi output]&lt;br /&gt;
&lt;br /&gt;
Järgmisena võib hakata paigaldama failisüsteem. Näiteks: Järgnev rida oli lisatud /etc/fstab:&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid9.jpg]]&lt;br /&gt;
&lt;br /&gt;
Süsteem on paigaldatud kasutades &amp;quot;mount -a&amp;quot; (Eeldades, et paigaldatud asukoht eksisteerib).&lt;br /&gt;
&lt;br /&gt;
Et olla kindel, et failisüsteem on paigaldatud, tuleks kontrollida failisüsteem üle:&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid10.jpg]]&lt;br /&gt;
&lt;br /&gt;
==RAID grupi monitoorimine==&lt;br /&gt;
Siis kui &#039;&#039;RAID&#039;&#039; grupp on püsti ja failisüsteem on loodud, järgmine samm oleks monitoorida massiiv. &amp;lt;br /&amp;gt;Seal on mõningaid juppe, mida saab monitoorida massiivis. Lisaks tuleks arusaada massiivi detailidest.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid11.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/2/ loodud failisüsteem]&lt;br /&gt;
&lt;br /&gt;
Väljundis on näha kui palju seadmeid on &#039;&#039;RAID&#039;&#039; massiivis kui paljud seadmed on kukkunud ja kui paljudel seadmetel on märgistatud lisa ruumi.&lt;br /&gt;
&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Raid Level&#039;&#039;&amp;lt;/b&amp;gt;(RAID tase) - Meie olukorras on &amp;quot;raid1&amp;quot;In this case it is “raid1″&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Array Size&#039;&#039;&amp;lt;/b&amp;gt;(Massiivi suurus) - RAID massiivi suurus, mis antud olukorras on 465.76GiB.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Raid Devices&#039;&#039;&amp;lt;/b&amp;gt;(RAID seadmed) - Antud seadmete arv RAID grupi ja pildi peal on see 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Total Devices&#039;&#039;&amp;lt;/b&amp;gt;(Kokku seadmeid) - Kokku arv seadmeid RAID massiivis, mis on antud olukorras 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Active Devices&#039;&#039;&amp;lt;/b&amp;gt;(Aktiivsed seadmed) - Arv aktiivseid seadmeid, mis on pildi peal näha 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Working Devices&#039;&#039;&amp;lt;/b&amp;gt;(Töötavad seadmed) - Arv töötavaid seadmeid massiivis, mida on 2. &lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Failed Devices&#039;&#039;&amp;lt;/b&amp;gt;(Kukkunud seadmeid) - Arv kukkunud seadmeid, mis on meie puhul 0.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Spare Devices&#039;&#039;&amp;lt;/b&amp;gt;(Vabu seadmeid) - Arv vabu seadmeid, mida kasutab massiiv, mis on antud hetkel 0.&lt;br /&gt;
&lt;br /&gt;
Käsule &#039;&#039;mdadm&#039;&#039; on olemas valik &amp;quot;-mail [address]&amp;quot;, mis lubab sul lisada emaili aadress, siis kui on toimumas midagi, siis saadetakse email siht aadressile. Järgmised käsud on vabalt valitavad: &lt;br /&gt;
&lt;br /&gt;
    &#039;&#039;-program&#039;&#039;: Lubab lisada programm ja mida jooksutatakse, millal iganes on intsident leitud. &lt;br /&gt;
    &lt;br /&gt;
    &#039;&#039;-syslog&#039;&#039;: See käsk lubab raporteerida kõik süsteemis olevad vead syslogi.&lt;br /&gt;
&lt;br /&gt;
Lisaks võib informatsiooni saada faili väljundist /proc/mdstat&lt;br /&gt;
&lt;br /&gt;
Liigume käsuga &#039;&#039;&amp;quot;cat&amp;quot;&#039;&#039; faili väljundisse /proc/mdstat. &amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid12.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/2/ /proc/mdstat väljund]&lt;br /&gt;
&lt;br /&gt;
Väljund näitab aktiivseid seadmeid. &#039;&#039;RAID 1&#039;&#039; ütleb, milline seade on primaarne seade. Vaadata tuleb kõige &#039;&#039;madalamat&#039;&#039; numbrit, mis on antud massiivi seadmetes antud.&amp;lt;br /&amp;gt; Antud olukorras on sdb1 sellepärast, et ta on märgistatud &amp;quot;[0]&amp;quot;. Järgmine rida allpool sisaldab numbri blokke, mis näitab iga seadme staatust.&amp;lt;br /&amp;gt; Antud olukorras on andmete sektsioon näidatud &amp;quot;[UU]&amp;quot;. Esimene &amp;quot;U&amp;quot; vasakul annab teada esimesest seadmest(sdc1) ja teine &amp;quot;U&amp;quot; parempool on seade (/dev/sdb1). &amp;lt;br /&amp;gt;&amp;quot;U&amp;quot; tähendab, et seade on üleval ja töötab.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vaadates /proc/mdstat, siis võib otsekohe öelda, kas seade on kukkunud, siis peaks kasutaja nägema sellist märki &amp;quot;_&amp;quot;, &amp;quot;U&amp;quot; asemel.&lt;br /&gt;
&lt;br /&gt;
=Raudvara RAID=&lt;br /&gt;
&lt;br /&gt;
Raudvara baasil ehitatud süsteemid mangeerivad RAID-i alamsüsteeme iseseisvalt ilma hostita ja esitab hostile ainult üksikut ketast RAID massiivile.&lt;br /&gt;
&lt;br /&gt;
Raudvara RAID seade on selline seade, mis ühendatakse SCSI kontrollerile ja esitatakse RAID massiive üksiku SCSI kettale. &lt;br /&gt;
Väline RAID süsteem liigutab kõiki RAID tarkust töödeldes kontrollerisse, mis asub väljaspool ketta alamsüsteemi. Terve alamsüsteem on ühendatud hostile ja läbi normaalse SCSI kontrolleri ja esineb hostile üksiku kettana.&lt;br /&gt;
&lt;br /&gt;
RAID-i kontrollerid toodetakse tüüpilises kaardi formaadis nagu SCSI kontrollerid operatsiooni süsteemidele aga tegelikuses käsitlevad kõigi ketaste suhtlemist iseendaga. &amp;lt;br /&amp;gt;Sellistes olukordades tuleks paigaldada kettad RAID kontrolleritesse nagu paigaldaks SCSI kontrollerit aga, siis tuleks neid lisada RAID kontrolleri konfiguratsioonidesse ja operatsioonisüsteem ei teeks neile vahet.&lt;br /&gt;
&lt;br /&gt;
==Raudvara RAID tootjad==&lt;br /&gt;
&lt;br /&gt;
Mõned Raudvara RAID-i tootjad:&lt;br /&gt;
&lt;br /&gt;
[http://www.3ware.com/3ware_home.htm 3ware]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.hds.com/ Hitachi Data Systems]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.synetic.net/ Synetic Inc]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Eestist saadavad RAID tehnoloogiad:&lt;br /&gt;
&lt;br /&gt;
[http://www.asbis.ee/ Asbis]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.tigma.ee/ Tigma]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Terve hulk erinevaid tootjaid leiad sellelt lehelt [http://www.dmoz.org/Computers/Hardware/Storage/Subsystems/RAID/ RAID Stuff]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Kasulikud lingid=&lt;br /&gt;
&lt;br /&gt;
[http://wiki.archlinux.org/index.php/Installing_with_Software_RAID_or_LVM Installing with Software RAID or LVM]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/s1-raid-approaches.html RAID Approaches]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linux-mag.com/id/7475/2/ Linux Software RAID - A Belt and a Pair of Suspenders]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linuxhomenetworking.com/wiki/index.php/Quick_HOWTO_:_Ch26_:_Linux_Software_RAID Quick HOWTO : Linux Software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.cyberciti.biz/tips/raid-hardware-vs-raid-software.html Software RAID vs Hardware RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://blog.taragana.com/index.php/archive/which-one-is-better-software-raid-or-hardware-raid/ Which one is better Hardware RAID or Software RAID?]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linux.com/news/hardware/servers/8222-benchmarking-hardware-raid-vs-linux-kernel-software-raid Benchmarking Hardware RAID vs Linux Kernel software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://en.gentoo-wiki.com/wiki/RAID/Software Software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.howtoforge.com/replacing_hard_disks_in_a_raid1_array Replacing A Failed Hard Drive In A Software RAID1 Array]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://linux.yyz.us/why-software-raid.html Linux: Why software RAID?]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://linas.org/linux/raid.html RAID and Data Storage Protection Solutions for Linux]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://slacksite.com/slackware/raid.html Building a Software RAID System in Slackware]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Tarkvaraline_RAID_Ubuntus&amp;diff=9024</id>
		<title>Tarkvaraline RAID Ubuntus</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Tarkvaraline_RAID_Ubuntus&amp;diff=9024"/>
		<updated>2010-05-07T08:04:52Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Tarkvara RAIDI installeerimine kasutades GUI */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
On olemas kaks võimalust, kuidas läheneda &#039;&#039;RAID-le&#039;&#039;: Raudvara &#039;&#039;RAID&#039;&#039; ja Tarkvara &#039;&#039;RAID&#039;&#039;.&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; on sisse ehitatud Linuxi kernelisse ja seega võib kasutaja mõelda kui kasulik võib olla osta harjumuspäraseid kontrollereid, mis omavad sisse ehitatud &#039;&#039;RAID&#039;&#039; võimalusi.&lt;br /&gt;
Teised kasutajad leiavad, et mõtekam on osta harjumusest &#039;&#039;RAID&#039;&#039; süsteeme, mis on eelnevalt konfigureeritud. Võimalus kasutada tarkvara(kerneli-baasil) või raudvara(kontrolleri-baasil) &#039;&#039;RAID&#039;&#039; lahendusi, mis võivad osutuda keerulisteks. &lt;br /&gt;
&lt;br /&gt;
==Autor== &lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=Tarkvara RAID=&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; tähendab, et üks massiiv on manageeritud kerneli poolt kui spetsiaalse raudvara &#039;&#039;RAID-ga&#039;&#039;. Kernel organiseerib kõik andmed paljudel ketastel samal ajal jookseb ainult üks virtuaalne seade rakendustel. Tarkvara RAID implementeerib erinevaid &#039;&#039;RAID&#039;&#039; tasemeid kerneli ketta (blokk seadme) koodil. Tarkvara &#039;&#039;RAID&#039;&#039; töötab odavamate IDE ketastel samamoodi nagu &#039;&#039;SCSI&#039;&#039; ketaste peal. Tänapäeva kiired protsessorid lubavad oma jõudlusel ületada Raudvara &#039;&#039;RAIDI&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;MD&#039;&#039; draiver Linuxi Kernelis on näide ühest &#039;&#039;RAID&#039;&#039; lahendusest, mis ei sõltu raudvarast. Tarkvara baasil massiivi jõudlus sõltub serveri protsessori jõudlusest ja laadimisest. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Eeldused, mida annab tarkvara &#039;&#039;RAID&#039;&#039;:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
1. Threadi taasehitatav protsessi&amp;lt;br /&amp;gt;&lt;br /&gt;
2. Massiivide teiseldavus Linuxi masinate vahel ilma rekonstrueerimiseta&amp;lt;br /&amp;gt;&lt;br /&gt;
3. Tagaplaani massiivi rekonstruktsioon kasutades süsteemi ressursse&amp;lt;br /&amp;gt;&lt;br /&gt;
4. &#039;&#039;Hot swapping&#039;&#039; ketta toetus&amp;lt;br /&amp;gt;&lt;br /&gt;
5. Automaatne &#039;&#039;CPU&#039;&#039; avastamine, et oleks eelistus teatud protsessori optimeerimisest&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tarkvara RAIDI installeerimine kasutades GUI==&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; võibolla konfigureeritud Red Hat Linuxi installeerimise ajal. Selles peatükis räägime, kuidas konfigureerida tarkvara &#039;&#039;RAIDI&#039;&#039; installeerimise ajal kasutades &#039;&#039;Disk Druid&#039;&#039; kasutajaliidest. &amp;lt;br /&amp;gt;&lt;br /&gt;
Kasutades versiooni: &amp;lt;b&amp;gt;Red Hat Linx 9&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Enne &#039;&#039;RAID&#039;&#039; kettaseadme loomist peab ennem looma &#039;&#039;RAID&#039;&#039; partitsioonid, kasutades järgmist samm-haaval juhendit:&amp;lt;br /&amp;gt;&lt;br /&gt;
1.Ketta partitsioneerimise häälestuse juures tuleb valida:&amp;lt;b&amp;gt;Manually partition with Disk Druid.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.&amp;lt;b&amp;gt;&#039;&#039;Disk Druid&#039;&#039;&amp;lt;/b&amp;gt; ekraanil tuleks valida: New to create a new partition.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.Edasi ei ole enam võimalik anda monteerimise punkti(Seda on võimalik teha siis, kui on loodud &#039;&#039;RAID&#039;&#039; seade). &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4.Järgmisena tuleks valida &#039;&#039;software RAID&#039;&#039; failisüsteemi tüübiks&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid-edit.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit: [http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-edit.png RAID partitsioon]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5.&amp;lt;b&amp;gt;&#039;&#039;Allowable Drives&#039;&#039;&amp;lt;/b&amp;gt; alt tuleks valida kettad mille peale luuakse &#039;&#039;RAID&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui arvuti või kettaseadme administraatoril on mitu ketast, siis kõik olemas olevad kettad võetakse arvesse süsteemi poolt ja need märgistatakse linnukesega ära.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tuleks ära võtta linnukesed nendelt ketastelt, kus ei looda &#039;&#039;RAID&#039;&#039; massiivi.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
6.Järgmisena tuleks sisestada ketta partitsioooni sobiv suurus.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
7.Valige &amp;lt;b&amp;gt;&#039;&#039;Fixed size&#039;&#039;&amp;lt;/b&amp;gt;, et luua kindla suurusega ketta partitsioon, siis valige &#039;&#039;Fill all space up to (MB)&#039;&#039; ja sisestage suurus &#039;&#039;MB-s&#039;&#039;, et anda partitsiooni suurus või&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;&#039;&#039;Fill to maximum allowable size&#039;&#039;&amp;lt;/b&amp;gt;, et kõik vabad olevad partitsiooni suurused täidetakse kõvakettal.&amp;lt;br /&amp;gt; &lt;br /&gt;
Kui administraator või kasutaja teevad rohkem kui ühe partitsiooni, siis jagatakse vaba ruum ketta peal.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
8.Valige &amp;lt;b&amp;gt;&#039;&#039;Force to be a primary partition&#039;&#039;&amp;lt;/b&amp;gt;, et partitsioon peaks olema &#039;&#039;primary partition&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
9.Valige &amp;lt;b&amp;gt;&#039;&#039;Check for bad blocks&#039;&#039;&amp;lt;/b&amp;gt; kui kasutaja soovib, et installeerimise käigus kontrollitakse vigaseid blokke kõvakettal enne formateerimist.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
10.Vajutage &amp;lt;b&amp;gt;&#039;&#039;OK&#039;&#039;&amp;lt;/b&amp;gt;, et naaseda peamenüüsse.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Korrake need sammud kõik uuesti läbi, et luua nii palju partitsioone kui vajalik.&amp;lt;br /&amp;gt;&lt;br /&gt;
Ketaste partitsioneerimisel on võimalus luua teisi ketta tüüpe peale &#039;&#039;RAIDI&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
1.Valige &#039;&#039;RAID&#039;&#039; nupp &amp;lt;b&amp;gt;&#039;&#039;Disk Druidi&#039;&#039;&amp;lt;/b&amp;gt; häälestus paneelil.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.Järgmisena ilmub pilt, kus kasutaja loob omale &#039;&#039;RAID&#039;&#039; seadme.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid-config.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-config.png RAID seadmed]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.Sisestage installeerimise koht.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4.Valige failisüsteemi tüüp partitsiooni jaoks.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5.Valige seadme nimi nagu näiteks md0 &#039;&#039;RAID&#039;&#039; seadmele.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
6.Valige oma &#039;&#039;RAID&#039;&#039; tase. Valida võib &#039;&#039;RAID 0&#039;&#039;, &#039;&#039;RAID 1&#039;&#039; ja &#039;&#039;RAID 5&#039;&#039; hulgas.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
NB!&lt;br /&gt;
&#039;&#039;RAID&#039;&#039; partitsiooni loomisel tuleks tähelepanna &amp;quot;/boot&amp;quot; partitsioon. Selle partitsooni puhul on vaja valida &#039;&#039;RAID&#039;&#039; tase 1, &lt;br /&gt;
ja see peab kasutama ühte kahest kettaseadmest(&#039;&#039;IDE&#039;&#039; esimeseks, &#039;&#039;SCSI&#039;&#039; teiseks). &lt;br /&gt;
Kui kasutaja ei loo &#039;&#039;RAID&#039;&#039; partitsiooni &amp;quot;/boot&amp;quot; tüüpi, siis kasutaja loob &amp;quot;/&amp;quot; partitsiooni tüüpi. See on &#039;&#039;RAID&#039;&#039; tase 1 &lt;br /&gt;
ja kasutusel peab olema järgmised kaks esimest ketast(&#039;&#039;IDE&#039;&#039; esimene, &#039;&#039;SCSI&#039;&#039; teiseks)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
7.Järgmised &#039;&#039;RAID&#039;&#039; partitsioonid, mida kasutaja lõi, ilmnevad &#039;&#039;RAID&#039;&#039; kasutajate loetelus. Valige milline partitsioon nendest&amp;lt;br /&amp;gt;&lt;br /&gt;
partitsioonidest peab olema kasutatud, et luua &#039;&#039;RAID&#039;&#039; seade.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
8.Kui konfigureerida &#039;&#039;RAID 1&#039;&#039; või &#039;&#039;RAID 5&#039;&#039;, siis tuleks täpsustada vabade partitsioonide arvu. Kui tarkvara &#039;&#039;RAID&#039;&#039; peaks&lt;br /&gt;
kukkuma, siis võetakse automaatselt kasutusele vaba ketas. Igale vabale ketta partitsioonile tuleks luua lisaks&lt;br /&gt;
tarkvara &#039;&#039;RAID&#039;&#039;. Eelmisel sammul, valige &#039;&#039;RAID&#039;&#039; seadmetele ja vabadele partitsioonidele. &lt;br /&gt;
&lt;br /&gt;
9.Peale vajutades OK, &#039;&#039;RAID&#039;&#039; tase ilmub &amp;lt;b&amp;gt;Drive Summary&amp;lt;/b&amp;gt; loetellu. Peale seda võib jätkata installeerimiseprotsessiga.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Lisa küsimuste tekkimiseks tuleks vaadata &#039;&#039;Red Hat Linux instructions Guid&#039;&#039;.&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid-dd.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-dd.png RAID on loodud]&lt;br /&gt;
&lt;br /&gt;
10.&#039;&#039;RAIDI&#039;&#039; massiiv on loodud.&lt;br /&gt;
&lt;br /&gt;
==Tarkvara RAIDI installeerimine kasutades kernelit ja mdadm==&lt;br /&gt;
&lt;br /&gt;
Hallates &#039;&#039;md&#039;&#039; gruppe võib olla väga keeruline ja raske. See nõuab failide redigeerimist, kus igasugune vea tegemine võib tekitada &#039;&#039;RAID&#039;&#039; gruppide kadumist. &amp;lt;br /&amp;gt;Kasutaja peab olema selle juures ettevaatlik.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Mdadm&#039;&#039; tööriist on suur ja omab erinevaid funktsioone: &lt;br /&gt;
&lt;br /&gt;
    1.&amp;lt;b&amp;gt;&#039;&#039;Assemble&#039;&#039;&amp;lt;/b&amp;gt;(Koostama): Koostab eelnevatelt loodud massiivi komponentidelt, aktiivsesse massiivi. &lt;br /&gt;
    2.&amp;lt;b&amp;gt;&#039;&#039;Build&#039;&#039;&amp;lt;/b&amp;gt;(Ehitama): Ehitada massiiv, mis igal seadmel teeb superbloki. &lt;br /&gt;
    3.&amp;lt;b&amp;gt;&#039;&#039;Create&#039;&#039;&amp;lt;/b&amp;gt;(Looma): Luua uus &#039;&#039;RAID&#039;&#039; massiiv koos superblokiga igale seadmele.&lt;br /&gt;
    4.&amp;lt;b&amp;gt;&#039;&#039;Monitor&#039;&#039;&amp;lt;/b&amp;gt;(Monitoorimine): On võimalus monitoorida ühte või mitut md seadet, mis toimib erinevatel seadmetel.&lt;br /&gt;
    5.&amp;lt;b&amp;gt;&#039;&#039;Grow&#039;&#039;&amp;lt;/b&amp;gt;(Kasvatama): Muudab suurust (kasvamise või kahanemise) või ümberkujundada md seadme. &lt;br /&gt;
    See lubab lisada  seadmeid, nii nagu vaja läheb. &lt;br /&gt;
    6.&amp;lt;b&amp;gt;&#039;&#039;Incremental Assembly&#039;&#039;&amp;lt;/b&amp;gt;(Suurendamise blokk): Lisage üksik seade massiivile.&lt;br /&gt;
    7.&amp;lt;b&amp;gt;&#039;&#039;Manage&#039;&#039;&amp;lt;/b&amp;gt;(Manageerimine): See funktsioon lubab manageerida spetsiifilisi &#039;&#039;RAID&#039;&#039; massiivi komponente&lt;br /&gt;
    nagu lisades uusi vabu seadmeid või eemaldades vigaseid seadmeid.  &lt;br /&gt;
    8.&amp;lt;b&amp;gt;&#039;&#039;Misc&#039;&#039;&amp;lt;/b&amp;gt;(Mitmesugusus): See on funktsioon, mis sisaldab kõiki teisi funktsioone, mida läheb vaja. &lt;br /&gt;
    9.&amp;lt;b&amp;gt;&#039;&#039;Auto-detect&#039;&#039;&amp;lt;/b&amp;gt;(Automaatne leiduvus): Sellel funktsioonil on võimalus leida aktiivseid kerneleid.&lt;br /&gt;
&lt;br /&gt;
Operatsioonisüsteem &#039;&#039;CentOS 5.3&#039;&#039; kasutati järgmisel süsteemil: &lt;br /&gt;
&lt;br /&gt;
     1.Emaplaat: GigaByte MAA78GM-US2H &lt;br /&gt;
     2.Protsessor: AMD Phenom II X4 920 &lt;br /&gt;
     3.Mälu: 8GB &lt;br /&gt;
     4.Kernel: Linux 2.6.30 &lt;br /&gt;
     5.Opsüsteem ja üles laadimise ketas on IBM DTLA-307020 (20GB ketas on Ulta ATA/100 peal)&lt;br /&gt;
     6./home on  Seagate ST1360827AS&lt;br /&gt;
     7.Testimiseks on kasutusel kaks ketast: Seagate ST3500641AS-RK koos 16 MB cachega. Seal on /dev/sdb ja /dev/sdb. &amp;lt;br /&amp;gt;&lt;br /&gt;
     &amp;lt;b&amp;gt;&#039;&#039;RAID 1&#039;&#039; on loodud /dev/sdb ja /dev/sdc ketaste vahel!&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==ID ketaste paigaldamine==&lt;br /&gt;
Et luua &#039;&#039;RAID 1&#039;&#039; grupp on vaja alguses määrata ketaste &#039;&#039;ID&#039;&#039;, mis on üks &#039;&#039;RAID&#039;&#039; gruppide osa. Selle tüübi nimetus on &#039;&#039;&amp;quot;fd&amp;quot;&#039;&#039; (Linuxi automaatne tuvastamine) ja seda on vaja paigutada kõikidele partitsioonidele ja/või ketastele, mis kasutavad &#039;&#039;RAID&#039;&#039; gruppe. &lt;br /&gt;
Kasutajal on võimalus kergelt kontrollida partitsiooni tüüpe: &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Näide &#039;&#039;fd&#039;&#039; kohta:&amp;lt;br /&amp;gt;&lt;br /&gt;
Iga partitsiooneerimise juures peaks esimese ketta partitsiooni tüübi muutma &#039;&#039;Linux RAID autodetect&#039;&#039;, mis on &#039;&#039;fd&#039;&#039; tüüpi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Järgmisena näeme, milline on &#039;&#039;fd&#039;&#039; tüüpi partitsiooni ketas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Device Boot    Start       End    Blocks   Id  System&lt;br /&gt;
/dev/hda1   *         1       262   2104483+  fd  Linux raid autodetect&lt;br /&gt;
/dev/hda2           263       524   2104515   82  Linux swap&lt;br /&gt;
/dev/hda3           525      1314   6345675   fd  Linux raid autodetect&lt;br /&gt;
/dev/hda4          1315      2434   8996400    5  Extended&lt;br /&gt;
/dev/hda5          1315      1837   4200966   fd  Linux raid autodetect&lt;br /&gt;
/dev/hda6          1838      2434   4795371   fd  Linux raid autodetect&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid1.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ Partitsiooni tüübid]&lt;br /&gt;
&lt;br /&gt;
==Loome RAID, mis kasutab mdadm==&lt;br /&gt;
Tööriist &#039;&#039;mdadm&#039;&#039; lubab kergelt luua &#039;&#039;RAID&#039;&#039; grupi. Selles näiteks luuakse kahe kettaga &#039;&#039;RAID-1&#039;&#039; grupp.&lt;br /&gt;
[[Image:Raid2.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ mdadm tööriist]&lt;br /&gt;
&lt;br /&gt;
Valikud mida kuvatakse ekraanile on kergelt arusaadavad. Esimene valik on &amp;quot;-create&amp;quot; sellega saab luua &#039;&#039;RAID&#039;&#039; grupp. &lt;br /&gt;
Peale &amp;quot;-verbose&amp;quot; valikut on &#039;&#039;md&#039;&#039; seade ja selle all mõeldakse /dev/md0. Peale seda on &#039;&#039;RAID&#039;&#039; tase (&amp;quot;-level&amp;quot;) - selle all mõeldakse &#039;&#039;RAID 1&#039;&#039;. Lõpuks on &#039;&#039;RAID&#039;&#039; seadmed spetsifitseeritud kasutades &amp;quot;-raid-devices&amp;quot; valikut. &amp;lt;br /&amp;gt;Ekraani peal on näha, kas kasutajal on failisüsteem ketta partitsiooni peal. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;RAID&#039;&#039; töötab blokk tasemel. Seega on see &#039;&#039;RAID&#039;&#039; kontroller. Olgu see tarkvara &#039;&#039;RAID&#039;&#039; või Raudvara &#039;&#039;RAID&#039;&#039;, see töötab &#039;&#039;RAID&#039;&#039; grupi seadmete blokkidel. &amp;lt;br /&amp;gt;See tähendab, et ta on failisüsteemist eraldatud. Järelikult kohe kui &#039;&#039;RAID 1&#039;&#039; grupp on loodud, siis on kettad sünkroniseeritud. &amp;lt;br /&amp;gt;Esimese partitsiooni blokid on kopeeritud teise partitsiooni kettale.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid3.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ Aktiivsed RAID1]&lt;br /&gt;
&lt;br /&gt;
Pange tähele, et sünkroniseerimise protsess leiab aset &amp;quot;cat-misel&amp;quot; faili sisu on /proc/mdstat.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid4.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid5.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid6.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pildid on pärit:[http://www.linux-mag.com/id/7475/1/ Sünkroniseerimise protsess]&lt;br /&gt;
&lt;br /&gt;
Peale sünkroniseerimise lõpetamist, peaks pilt järgnevalt välja nägema:&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid7.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pildid on pärit:[http://www.linux-mag.com/id/7475/1/ &#039;&#039;RAID&#039;&#039; sünkroniseerimise protsessi lõpp]&lt;br /&gt;
&lt;br /&gt;
Nii kaugele jõudes saab failisüsteem luua md seadmele &lt;br /&gt;
&lt;br /&gt;
[[Image:Raid8.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ failisüsteemi output]&lt;br /&gt;
&lt;br /&gt;
Järgmisena võib hakata paigaldama failisüsteem. Näiteks: Järgnev rida oli lisatud /etc/fstab:&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid9.jpg]]&lt;br /&gt;
&lt;br /&gt;
Süsteem on paigaldatud kasutades &amp;quot;mount -a&amp;quot; (Eeldades, et paigaldatud asukoht eksisteerib).&lt;br /&gt;
&lt;br /&gt;
Et olla kindel, et failisüsteem on paigaldatud, tuleks kontrollida failisüsteem üle:&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid10.jpg]]&lt;br /&gt;
&lt;br /&gt;
==RAID grupi monitoorimine==&lt;br /&gt;
Siis kui &#039;&#039;RAID&#039;&#039; grupp on püsti ja failisüsteem on loodud, järgmine samm oleks monitoorida massiiv. &amp;lt;br /&amp;gt;Seal on mõningaid juppe, mida saab monitoorida massiivis. Lisaks tuleks arusaada massiivi detailidest.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid11.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/2/ loodud failisüsteem]&lt;br /&gt;
&lt;br /&gt;
Väljundis on näha kui palju seadmeid on &#039;&#039;RAID&#039;&#039; massiivis kui paljud seadmed on kukkunud ja kui paljudel seadmetel on märgistatud lisa ruumi.&lt;br /&gt;
&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Raid Level&#039;&#039;&amp;lt;/b&amp;gt;(RAID tase) - Meie olukorras on &amp;quot;raid1&amp;quot;In this case it is “raid1″&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Array Size&#039;&#039;&amp;lt;/b&amp;gt;(Massiivi suurus) - RAID massiivi suurus, mis antud olukorras on 465.76GiB.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Raid Devices&#039;&#039;&amp;lt;/b&amp;gt;(RAID seadmed) - Antud seadmete arv RAID grupi ja pildi peal on see 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Total Devices&#039;&#039;&amp;lt;/b&amp;gt;(Kokku seadmeid) - Kokku arv seadmeid RAID massiivis, mis on antud olukorras 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Active Devices&#039;&#039;&amp;lt;/b&amp;gt;(Aktiivsed seadmed) - Arv aktiivseid seadmeid, mis on pildi peal näha 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Working Devices&#039;&#039;&amp;lt;/b&amp;gt;(Töötavad seadmed) - Arv töötavaid seadmeid massiivis, mida on 2. &lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Failed Devices&#039;&#039;&amp;lt;/b&amp;gt;(Kukkunud seadmeid) - Arv kukkunud seadmeid, mis on meie puhul 0.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Spare Devices&#039;&#039;&amp;lt;/b&amp;gt;(Vabu seadmeid) - Arv vabu seadmeid, mida kasutab massiiv, mis on antud hetkel 0.&lt;br /&gt;
&lt;br /&gt;
Käsule &#039;&#039;mdadm&#039;&#039; on olemas valik &amp;quot;-mail [address]&amp;quot;, mis lubab sul lisada emaili aadress, siis kui on toimumas midagi, siis saadetakse email siht aadressile. Järgmised käsud on vabalt valitavad: &lt;br /&gt;
&lt;br /&gt;
    &#039;&#039;-program&#039;&#039;: Lubab lisada programm ja mida jooksutatakse, millal iganes on intsident leitud. &lt;br /&gt;
    &lt;br /&gt;
    &#039;&#039;-syslog&#039;&#039;: See käsk lubab raporteerida kõik süsteemis olevad vead syslogi.&lt;br /&gt;
&lt;br /&gt;
Lisaks võib informatsiooni saada faili väljundist /proc/mdstat&lt;br /&gt;
&lt;br /&gt;
Liigume käsuga &#039;&#039;&amp;quot;cat&amp;quot;&#039;&#039; faili väljundisse /proc/mdstat. &amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid12.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/2/ /proc/mdstat väljund]&lt;br /&gt;
&lt;br /&gt;
Väljund näitab aktiivseid seadmeid. &#039;&#039;RAID 1&#039;&#039; ütleb, milline seade on primaarne seade. Vaadata tuleb kõige &#039;&#039;madalamat&#039;&#039; numbrit, mis on antud massiivi seadmetes antud.&amp;lt;br /&amp;gt; Antud olukorras on sdb1 sellepärast, et ta on märgistatud &amp;quot;[0]&amp;quot;. Järgmine rida allpool sisaldab numbri blokke, mis näitab iga seadme staatust.&amp;lt;br /&amp;gt; Antud olukorras on andmete sektsioon näidatud &amp;quot;[UU]&amp;quot;. Esimene &amp;quot;U&amp;quot; vasakul annab teada esimesest seadmest(sdc1) ja teine &amp;quot;U&amp;quot; parempool on seade (/dev/sdb1). &amp;lt;br /&amp;gt;&amp;quot;U&amp;quot; tähendab, et seade on üleval ja töötab.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vaadates /proc/mdstat, siis võib otsekohe öelda, kas seade on kukkunud, siis peaks kasutaja nägema sellist märki &amp;quot;_&amp;quot;, &amp;quot;U&amp;quot; asemel.&lt;br /&gt;
&lt;br /&gt;
=Raudvara RAID=&lt;br /&gt;
&lt;br /&gt;
Raudvara baasil ehitatud süsteemid mangeerivad RAID-i alamsüsteeme iseseisvalt ilma hostita ja esitab hostile ainult üksikut ketast RAID massiivile.&lt;br /&gt;
&lt;br /&gt;
Raudvara RAID seade on selline seade, mis ühendatakse SCSI kontrollerile ja esitatakse RAID massiive üksiku SCSI kettale. &lt;br /&gt;
Väline RAID süsteem liigutab kõiki RAID tarkust töödeldes kontrollerisse, mis asub väljaspool ketta alamsüsteemi. Terve alamsüsteem on ühendatud hostile ja läbi normaalse SCSI kontrolleri ja esineb hostile üksiku kettana.&lt;br /&gt;
&lt;br /&gt;
RAID-i kontrollerid toodetakse tüüpilises kaardi formaadis nagu SCSI kontrollerid operatsiooni süsteemidele aga tegelikuses käsitlevad kõigi ketaste suhtlemist iseendaga. &amp;lt;br /&amp;gt;Sellistes olukordades tuleks paigaldada kettad RAID kontrolleritesse nagu paigaldaks SCSI kontrollerit aga, siis tuleks neid lisada RAID kontrolleri konfiguratsioonidesse ja operatsioonisüsteem ei teeks neile vahet.&lt;br /&gt;
&lt;br /&gt;
==Raudvara RAID tootjad==&lt;br /&gt;
&lt;br /&gt;
Mõned Raudvara RAID-i tootjad:&lt;br /&gt;
&lt;br /&gt;
[http://www.3ware.com/3ware_home.htm 3ware]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.hds.com/ Hitachi Data Systems]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.synetic.net/ Synetic Inc]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Eestist saadavad RAID tehnoloogiad:&lt;br /&gt;
&lt;br /&gt;
[http://www.asbis.ee/ Asbis]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.tigma.ee/ Tigma]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Terve hulk erinevaid tootjaid leiad sellelt lehelt [http://www.dmoz.org/Computers/Hardware/Storage/Subsystems/RAID/ RAID Stuff]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Kasulikud lingid=&lt;br /&gt;
&lt;br /&gt;
[http://wiki.archlinux.org/index.php/Installing_with_Software_RAID_or_LVM Installing with Software RAID or LVM]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/s1-raid-approaches.html RAID Approaches]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linux-mag.com/id/7475/2/ Linux Software RAID - A Belt and a Pair of Suspenders]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linuxhomenetworking.com/wiki/index.php/Quick_HOWTO_:_Ch26_:_Linux_Software_RAID Quick HOWTO : Linux Software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.cyberciti.biz/tips/raid-hardware-vs-raid-software.html Software RAID vs Hardware RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://blog.taragana.com/index.php/archive/which-one-is-better-software-raid-or-hardware-raid/ Which one is better Hardware RAID or Software RAID?]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linux.com/news/hardware/servers/8222-benchmarking-hardware-raid-vs-linux-kernel-software-raid Benchmarking Hardware RAID vs Linux Kernel software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://en.gentoo-wiki.com/wiki/RAID/Software Software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.howtoforge.com/replacing_hard_disks_in_a_raid1_array Replacing A Failed Hard Drive In A Software RAID1 Array]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://linux.yyz.us/why-software-raid.html Linux: Why software RAID?]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://linas.org/linux/raid.html RAID and Data Storage Protection Solutions for Linux]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://slacksite.com/slackware/raid.html Building a Software RAID System in Slackware]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Tarkvaraline_RAID_Ubuntus&amp;diff=9015</id>
		<title>Tarkvaraline RAID Ubuntus</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Tarkvaraline_RAID_Ubuntus&amp;diff=9015"/>
		<updated>2010-05-07T07:46:45Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Tarkvara RAIDI installeerimine kasutades kernelit ja mdadm */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
On olemas kaks võimalust, kuidas läheneda &#039;&#039;RAID-le&#039;&#039;: Raudvara &#039;&#039;RAID&#039;&#039; ja Tarkvara &#039;&#039;RAID&#039;&#039;.&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; on sisse ehitatud Linuxi kernelisse ja seega võib kasutaja mõelda kui kasulik võib olla osta harjumuspäraseid kontrollereid, mis omavad sisse ehitatud &#039;&#039;RAID&#039;&#039; võimalusi.&lt;br /&gt;
Teised kasutajad leiavad, et mõtekam on osta harjumusest &#039;&#039;RAID&#039;&#039; süsteeme, mis on eelnevalt konfigureeritud. Võimalus kasutada tarkvara(kerneli-baasil) või raudvara(kontrolleri-baasil) &#039;&#039;RAID&#039;&#039; lahendusi, mis võivad osutuda keerulisteks. &lt;br /&gt;
&lt;br /&gt;
==Autor== &lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=Tarkvara RAID=&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; tähendab, et üks massiiv on manageeritud kerneli poolt kui spetsiaalse raudvara &#039;&#039;RAID-ga&#039;&#039;. Kernel organiseerib kõik andmed paljudel ketastel samal ajal jookseb ainult üks virtuaalne seade rakendustel. Tarkvara RAID implementeerib erinevaid &#039;&#039;RAID&#039;&#039; tasemeid kerneli ketta (blokk seadme) koodil. Tarkvara &#039;&#039;RAID&#039;&#039; töötab odavamate IDE ketastel samamoodi nagu &#039;&#039;SCSI&#039;&#039; ketaste peal. Tänapäeva kiired protsessorid lubavad oma jõudlusel ületada Raudvara &#039;&#039;RAIDI&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;MD&#039;&#039; draiver Linuxi Kernelis on näide ühest &#039;&#039;RAID&#039;&#039; lahendusest, mis ei sõltu raudvarast. Tarkvara baasil massiivi jõudlus sõltub serveri protsessori jõudlusest ja laadimisest. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Eeldused, mida annab tarkvara &#039;&#039;RAID&#039;&#039;:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
1. Threadi taasehitatav protsessi&amp;lt;br /&amp;gt;&lt;br /&gt;
2. Massiivide teiseldavus Linuxi masinate vahel ilma rekonstrueerimiseta&amp;lt;br /&amp;gt;&lt;br /&gt;
3. Tagaplaani massiivi rekonstruktsioon kasutades süsteemi ressursse&amp;lt;br /&amp;gt;&lt;br /&gt;
4. &#039;&#039;Hot swapping&#039;&#039; ketta toetus&amp;lt;br /&amp;gt;&lt;br /&gt;
5. Automaatne &#039;&#039;CPU&#039;&#039; avastamine, et oleks eelistus teatud protsessori optimeerimisest&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tarkvara RAIDI installeerimine kasutades GUI==&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; võibolla konfigureeritud Red Hat Linuxi installeerimise ajal. Selles peatükis räägime, kuidas konfigureerida tarkvara &#039;&#039;RAIDI&#039;&#039; installeerimise ajal kasutades &#039;&#039;Disk Druid&#039;&#039; kasutajaliidest. &amp;lt;br /&amp;gt;&lt;br /&gt;
Kasutades versiooni: &amp;lt;b&amp;gt;Red Hat Linx 9&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Enne &#039;&#039;RAID&#039;&#039; kettaseadme loomist peab ennem looma &#039;&#039;RAID&#039;&#039; partitsioonid, kasutades järgmist samm-haaval juhendit:&amp;lt;br /&amp;gt;&lt;br /&gt;
1.Ketta partitsioneerimise häälestuse juures tuleb valida:&amp;lt;b&amp;gt;Manually partition with Disk Druid.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.&amp;lt;b&amp;gt;&#039;&#039;Disk Druid&#039;&#039;&amp;lt;/b&amp;gt; ekraanil tuleks valida: New to create a new partition.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.Edasi ei ole enam võimalik anda monteerimise punkti(Seda on võimalik teha siis, kui on loodud &#039;&#039;RAID&#039;&#039; seade). &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4.Järgmisena tuleks valida &#039;&#039;software RAID&#039;&#039; failisüsteemi tüübiks&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid-edit.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit: [http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-edit.png RAID partitsioon]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5.&amp;lt;b&amp;gt;&#039;&#039;Allowable Drives&#039;&#039;&amp;lt;/b&amp;gt; alt tuleks valida kettad mille peale luuakse &#039;&#039;RAID&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui arvuti või kettaseadme administraatoril on mitu ketast, siis kõik olemas olevad kettad võetakse arvesse süsteemi poolt ja need märgistatakse linnukesega ära.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tuleks ära võtta linnukesed nendelt ketastelt, kus ei looda &#039;&#039;RAID&#039;&#039; massiivi.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
6.Järgmisena tuleks sisestada ketta partitsioooni sobiv suurus.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
7.Valige &amp;lt;b&amp;gt;&#039;&#039;Fixed size&#039;&#039;&amp;lt;/b&amp;gt;, et luua kindla suurusega ketta partitsioon, siis valige &#039;&#039;Fill all space up to (MB)&#039;&#039; ja sisestage suurus &#039;&#039;MB-s&#039;&#039;, et anda partitsiooni suurus või&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;&#039;&#039;Fill to maximum allowable size&#039;&#039;&amp;lt;/b&amp;gt;, et kõik vabad olevad partitsiooni suurused täidetakse kõvakettal.&amp;lt;br /&amp;gt; &lt;br /&gt;
Kui administraator või kasutaja teevad rohkem kui ühe partitsiooni, siis jagatakse vaba ruum ketta peal.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
8.Valige &amp;lt;b&amp;gt;&#039;&#039;Force to be a primary partition&#039;&#039;&amp;lt;/b&amp;gt;, et partitsioon peaks olema &#039;&#039;primary partition&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
9.Valige &amp;lt;b&amp;gt;&#039;&#039;Check for bad blocks&#039;&#039;&amp;lt;/b&amp;gt; kui kasutaja soovib, et installeerimise käigus kontrollitakse vigaseid blokke kõvakettal enne formateerimist.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
10.Vajutage &amp;lt;b&amp;gt;&#039;&#039;OK&#039;&#039;&amp;lt;/b&amp;gt;, et naaseda peamenüüsse.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Korrake need sammud kõik uuesti läbi, et luua nii palju partitsioone kui vajalik.&amp;lt;br /&amp;gt;&lt;br /&gt;
Ketaste partitsioneerimisel on võimalus luua teisi ketta tüüpe peale &#039;&#039;RAIDI&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
1.Valige &#039;&#039;RAID&#039;&#039; nupp &amp;lt;b&amp;gt;&#039;&#039;Disk Druidi&#039;&#039;&amp;lt;/b&amp;gt; häälestus paneelil.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.Järgmisena ilmub pilt, kus kasutaja loob omale &#039;&#039;RAID&#039;&#039; seadme.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid-config.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-config.png RAID seadmed]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.Sisestage installeerimise koht.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4.Valige failisüsteemi tüüp partitsiooni jaoks.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5.Valige seadme nimi nagu näiteks md0 &#039;&#039;RAID&#039;&#039; seadmele.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
6.Valige oma &#039;&#039;RAID&#039;&#039; tase. Valida võib &#039;&#039;RAID 0&#039;&#039;, &#039;&#039;RAID 1&#039;&#039; ja &#039;&#039;RAID 5&#039;&#039; hulgas.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
NB!&lt;br /&gt;
&#039;&#039;RAID&#039;&#039; partitsiooni loomisel tuleks tähelepanna &amp;quot;/boot&amp;quot; partitsioon. Selle partitsooni puhul on vaja valida &#039;&#039;RAID&#039;&#039; tase 1, &lt;br /&gt;
ja see peab kasutama ühte kahest kettaseadmest(&#039;&#039;IDE&#039;&#039; esimeseks, &#039;&#039;SCSI&#039;&#039; teiseks). &lt;br /&gt;
Kui kasutaja ei loo &#039;&#039;RAID&#039;&#039; partitsiooni &amp;quot;/boot&amp;quot; tüüpi, siis kasutaja loob &amp;quot;/&amp;quot; partitsiooni tüüpi. See on &#039;&#039;RAID&#039;&#039; tase 1 &lt;br /&gt;
ja kasutusel peab olema järgmised kaks esimest ketast(&#039;&#039;IDE&#039;&#039; esimene, &#039;&#039;SCSI&#039;&#039; teiseks)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
7.Järgmised &#039;&#039;RAID&#039;&#039; partitsioonid, mida kasutaja lõi, ilmnevad &#039;&#039;RAID&#039;&#039; kasutajate loetelus. Valige milline partitsioon nendest&amp;lt;br /&amp;gt;&lt;br /&gt;
partitsioonidest peab olema kasutatud, et luua &#039;&#039;RAID&#039;&#039; seade.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
8.Kui konfigureerida &#039;&#039;RAID 1&#039;&#039; või &#039;&#039;RAID 5&#039;&#039;, siis tuleks täpsustada vabade partitsioonide arvu. Kui tarkvara &#039;&#039;RAIDI&#039;&#039; partitsioon peaks&lt;br /&gt;
kukkuma, siis vaba partitsioonid võetakse automaatselt kasutusele asendus ketastena. Igale vabale partitsioonile tuleks luua lisa&lt;br /&gt;
tarkvara &#039;&#039;RAID&#039;&#039; partitsioon. Eelmisel sammul, valige partitsioonid &#039;&#039;RAID&#039;&#039; seadmetele ja vabadele partitsioonidele. &lt;br /&gt;
&lt;br /&gt;
9.Peale vajutades OK, &#039;&#039;RAID&#039;&#039; tase ilmub &amp;lt;b&amp;gt;Drive Summary&amp;lt;/b&amp;gt; loetellu. Peale seda võib jätkata installeerimiseprotsessiga.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Lisa küsimuste tekkimiseks tuleks vaadata &#039;&#039;Red Hat Linux instructions Guid&#039;&#039;.&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid-dd.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-dd.png RAID on loodud]&lt;br /&gt;
&lt;br /&gt;
10.&#039;&#039;RAIDI&#039;&#039; massiiv on loodud.&lt;br /&gt;
&lt;br /&gt;
==Tarkvara RAIDI installeerimine kasutades kernelit ja mdadm==&lt;br /&gt;
&lt;br /&gt;
Hallates &#039;&#039;md&#039;&#039; gruppe võib olla väga keeruline ja raske. See nõuab failide redigeerimist, kus igasugune vea tegemine võib tekitada &#039;&#039;RAID&#039;&#039; gruppide kadumist. &amp;lt;br /&amp;gt;Kasutaja peab olema selle juures ettevaatlik.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Mdadm&#039;&#039; tööriist on suur ja omab erinevaid funktsioone: &lt;br /&gt;
&lt;br /&gt;
    1.&amp;lt;b&amp;gt;&#039;&#039;Assemble&#039;&#039;&amp;lt;/b&amp;gt;(Koostama): Koostab eelnevatelt loodud massiivi komponentidelt, aktiivsesse massiivi. &lt;br /&gt;
    2.&amp;lt;b&amp;gt;&#039;&#039;Build&#039;&#039;&amp;lt;/b&amp;gt;(Ehitama): Ehitada massiiv, mis igal seadmel teeb superbloki. &lt;br /&gt;
    3.&amp;lt;b&amp;gt;&#039;&#039;Create&#039;&#039;&amp;lt;/b&amp;gt;(Looma): Luua uus &#039;&#039;RAID&#039;&#039; massiiv koos superblokiga igale seadmele.&lt;br /&gt;
    4.&amp;lt;b&amp;gt;&#039;&#039;Monitor&#039;&#039;&amp;lt;/b&amp;gt;(Monitoorimine): On võimalus monitoorida ühte või mitut md seadet, mis toimib erinevatel seadmetel.&lt;br /&gt;
    5.&amp;lt;b&amp;gt;&#039;&#039;Grow&#039;&#039;&amp;lt;/b&amp;gt;(Kasvatama): Muudab suurust (kasvamise või kahanemise) või ümberkujundada md seadme. &lt;br /&gt;
    See lubab lisada  seadmeid, nii nagu vaja läheb. &lt;br /&gt;
    6.&amp;lt;b&amp;gt;&#039;&#039;Incremental Assembly&#039;&#039;&amp;lt;/b&amp;gt;(Suurendamise blokk): Lisage üksik seade massiivile.&lt;br /&gt;
    7.&amp;lt;b&amp;gt;&#039;&#039;Manage&#039;&#039;&amp;lt;/b&amp;gt;(Manageerimine): See funktsioon lubab manageerida spetsiifilisi &#039;&#039;RAID&#039;&#039; massiivi komponente&lt;br /&gt;
    nagu lisades uusi vabu seadmeid või eemaldades vigaseid seadmeid.  &lt;br /&gt;
    8.&amp;lt;b&amp;gt;&#039;&#039;Misc&#039;&#039;&amp;lt;/b&amp;gt;(Mitmesugusus): See on funktsioon, mis sisaldab kõiki teisi funktsioone, mida läheb vaja. &lt;br /&gt;
    9.&amp;lt;b&amp;gt;&#039;&#039;Auto-detect&#039;&#039;&amp;lt;/b&amp;gt;(Automaatne leiduvus): Sellel funktsioonil on võimalus leida aktiivseid kerneleid.&lt;br /&gt;
&lt;br /&gt;
Operatsioonisüsteem &#039;&#039;CentOS 5.3&#039;&#039; kasutati järgmisel süsteemil: &lt;br /&gt;
&lt;br /&gt;
     1.Emaplaat: GigaByte MAA78GM-US2H &lt;br /&gt;
     2.Protsessor: AMD Phenom II X4 920 &lt;br /&gt;
     3.Mälu: 8GB &lt;br /&gt;
     4.Kernel: Linux 2.6.30 &lt;br /&gt;
     5.Opsüsteem ja üles laadimise ketas on IBM DTLA-307020 (20GB ketas on Ulta ATA/100 peal)&lt;br /&gt;
     6./home on  Seagate ST1360827AS&lt;br /&gt;
     7.Testimiseks on kasutusel kaks ketast: Seagate ST3500641AS-RK koos 16 MB cachega. Seal on /dev/sdb ja /dev/sdb. &amp;lt;br /&amp;gt;&lt;br /&gt;
     &amp;lt;b&amp;gt;&#039;&#039;RAID 1&#039;&#039; on loodud /dev/sdb ja /dev/sdc ketaste vahel!&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==ID ketaste paigaldamine==&lt;br /&gt;
Et luua &#039;&#039;RAID 1&#039;&#039; grupp on vaja alguses määrata ketaste &#039;&#039;ID&#039;&#039;, mis on üks &#039;&#039;RAID&#039;&#039; gruppide osa. Selle tüübi nimetus on &#039;&#039;&amp;quot;fd&amp;quot;&#039;&#039; (Linuxi automaatne tuvastamine) ja seda on vaja paigutada kõikidele partitsioonidele ja/või ketastele, mis kasutavad &#039;&#039;RAID&#039;&#039; gruppe. &lt;br /&gt;
Kasutajal on võimalus kergelt kontrollida partitsiooni tüüpe: &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Näide &#039;&#039;fd&#039;&#039; kohta:&amp;lt;br /&amp;gt;&lt;br /&gt;
Iga partitsiooneerimise juures peaks esimese ketta partitsiooni tüübi muutma &#039;&#039;Linux RAID autodetect&#039;&#039;, mis on &#039;&#039;fd&#039;&#039; tüüpi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Järgmisena näeme, milline on &#039;&#039;fd&#039;&#039; tüüpi partitsiooni ketas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Device Boot    Start       End    Blocks   Id  System&lt;br /&gt;
/dev/hda1   *         1       262   2104483+  fd  Linux raid autodetect&lt;br /&gt;
/dev/hda2           263       524   2104515   82  Linux swap&lt;br /&gt;
/dev/hda3           525      1314   6345675   fd  Linux raid autodetect&lt;br /&gt;
/dev/hda4          1315      2434   8996400    5  Extended&lt;br /&gt;
/dev/hda5          1315      1837   4200966   fd  Linux raid autodetect&lt;br /&gt;
/dev/hda6          1838      2434   4795371   fd  Linux raid autodetect&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid1.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ Partitsiooni tüübid]&lt;br /&gt;
&lt;br /&gt;
==Loome RAID, mis kasutab mdadm==&lt;br /&gt;
Tööriist &#039;&#039;mdadm&#039;&#039; lubab kergelt luua &#039;&#039;RAID&#039;&#039; grupi. Selles näiteks luuakse kahe kettaga &#039;&#039;RAID-1&#039;&#039; grupp.&lt;br /&gt;
[[Image:Raid2.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ mdadm tööriist]&lt;br /&gt;
&lt;br /&gt;
Valikud mida kuvatakse ekraanile on kergelt arusaadavad. Esimene valik on &amp;quot;-create&amp;quot; sellega saab luua &#039;&#039;RAID&#039;&#039; grupp. &lt;br /&gt;
Peale &amp;quot;-verbose&amp;quot; valikut on &#039;&#039;md&#039;&#039; seade ja selle all mõeldakse /dev/md0. Peale seda on &#039;&#039;RAID&#039;&#039; tase (&amp;quot;-level&amp;quot;) - selle all mõeldakse &#039;&#039;RAID 1&#039;&#039;. Lõpuks on &#039;&#039;RAID&#039;&#039; seadmed spetsifitseeritud kasutades &amp;quot;-raid-devices&amp;quot; valikut. &amp;lt;br /&amp;gt;Ekraani peal on näha, kas kasutajal on failisüsteem ketta partitsiooni peal. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;RAID&#039;&#039; töötab blokk tasemel. Seega on see &#039;&#039;RAID&#039;&#039; kontroller. Olgu see tarkvara &#039;&#039;RAID&#039;&#039; või Raudvara &#039;&#039;RAID&#039;&#039;, see töötab &#039;&#039;RAID&#039;&#039; grupi seadmete blokkidel. &amp;lt;br /&amp;gt;See tähendab, et ta on failisüsteemist eraldatud. Järelikult kohe kui &#039;&#039;RAID 1&#039;&#039; grupp on loodud, siis on kettad sünkroniseeritud. &amp;lt;br /&amp;gt;Esimese partitsiooni blokid on kopeeritud teise partitsiooni kettale.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid3.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ Aktiivsed RAID1]&lt;br /&gt;
&lt;br /&gt;
Pange tähele, et sünkroniseerimise protsess leiab aset &amp;quot;cat-misel&amp;quot; faili sisu on /proc/mdstat.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid4.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid5.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid6.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pildid on pärit:[http://www.linux-mag.com/id/7475/1/ Sünkroniseerimise protsess]&lt;br /&gt;
&lt;br /&gt;
Peale sünkroniseerimise lõpetamist, peaks pilt järgnevalt välja nägema:&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid7.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pildid on pärit:[http://www.linux-mag.com/id/7475/1/ &#039;&#039;RAID&#039;&#039; sünkroniseerimise protsessi lõpp]&lt;br /&gt;
&lt;br /&gt;
Nii kaugele jõudes saab failisüsteem luua md seadmele &lt;br /&gt;
&lt;br /&gt;
[[Image:Raid8.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ failisüsteemi output]&lt;br /&gt;
&lt;br /&gt;
Järgmisena võib hakata paigaldama failisüsteem. Näiteks: Järgnev rida oli lisatud /etc/fstab:&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid9.jpg]]&lt;br /&gt;
&lt;br /&gt;
Süsteem on paigaldatud kasutades &amp;quot;mount -a&amp;quot; (Eeldades, et paigaldatud asukoht eksisteerib).&lt;br /&gt;
&lt;br /&gt;
Et olla kindel, et failisüsteem on paigaldatud, tuleks kontrollida failisüsteem üle:&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid10.jpg]]&lt;br /&gt;
&lt;br /&gt;
==RAID grupi monitoorimine==&lt;br /&gt;
Siis kui &#039;&#039;RAID&#039;&#039; grupp on püsti ja failisüsteem on loodud, järgmine samm oleks monitoorida massiiv. &amp;lt;br /&amp;gt;Seal on mõningaid juppe, mida saab monitoorida massiivis. Lisaks tuleks arusaada massiivi detailidest.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid11.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/2/ loodud failisüsteem]&lt;br /&gt;
&lt;br /&gt;
Väljundis on näha kui palju seadmeid on &#039;&#039;RAID&#039;&#039; massiivis kui paljud seadmed on kukkunud ja kui paljudel seadmetel on märgistatud lisa ruumi.&lt;br /&gt;
&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Raid Level&#039;&#039;&amp;lt;/b&amp;gt;(RAID tase) - Meie olukorras on &amp;quot;raid1&amp;quot;In this case it is “raid1″&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Array Size&#039;&#039;&amp;lt;/b&amp;gt;(Massiivi suurus) - RAID massiivi suurus, mis antud olukorras on 465.76GiB.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Raid Devices&#039;&#039;&amp;lt;/b&amp;gt;(RAID seadmed) - Antud seadmete arv RAID grupi ja pildi peal on see 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Total Devices&#039;&#039;&amp;lt;/b&amp;gt;(Kokku seadmeid) - Kokku arv seadmeid RAID massiivis, mis on antud olukorras 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Active Devices&#039;&#039;&amp;lt;/b&amp;gt;(Aktiivsed seadmed) - Arv aktiivseid seadmeid, mis on pildi peal näha 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Working Devices&#039;&#039;&amp;lt;/b&amp;gt;(Töötavad seadmed) - Arv töötavaid seadmeid massiivis, mida on 2. &lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Failed Devices&#039;&#039;&amp;lt;/b&amp;gt;(Kukkunud seadmeid) - Arv kukkunud seadmeid, mis on meie puhul 0.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Spare Devices&#039;&#039;&amp;lt;/b&amp;gt;(Vabu seadmeid) - Arv vabu seadmeid, mida kasutab massiiv, mis on antud hetkel 0.&lt;br /&gt;
&lt;br /&gt;
Käsule &#039;&#039;mdadm&#039;&#039; on olemas valik &amp;quot;-mail [address]&amp;quot;, mis lubab sul lisada emaili aadress, siis kui on toimumas midagi, siis saadetakse email siht aadressile. Järgmised käsud on vabalt valitavad: &lt;br /&gt;
&lt;br /&gt;
    &#039;&#039;-program&#039;&#039;: Lubab lisada programm ja mida jooksutatakse, millal iganes on intsident leitud. &lt;br /&gt;
    &lt;br /&gt;
    &#039;&#039;-syslog&#039;&#039;: See käsk lubab raporteerida kõik süsteemis olevad vead syslogi.&lt;br /&gt;
&lt;br /&gt;
Lisaks võib informatsiooni saada faili väljundist /proc/mdstat&lt;br /&gt;
&lt;br /&gt;
Liigume käsuga &#039;&#039;&amp;quot;cat&amp;quot;&#039;&#039; faili väljundisse /proc/mdstat. &amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid12.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/2/ /proc/mdstat väljund]&lt;br /&gt;
&lt;br /&gt;
Väljund näitab aktiivseid seadmeid. &#039;&#039;RAID 1&#039;&#039; ütleb, milline seade on primaarne seade. Vaadata tuleb kõige &#039;&#039;madalamat&#039;&#039; numbrit, mis on antud massiivi seadmetes antud.&amp;lt;br /&amp;gt; Antud olukorras on sdb1 sellepärast, et ta on märgistatud &amp;quot;[0]&amp;quot;. Järgmine rida allpool sisaldab numbri blokke, mis näitab iga seadme staatust.&amp;lt;br /&amp;gt; Antud olukorras on andmete sektsioon näidatud &amp;quot;[UU]&amp;quot;. Esimene &amp;quot;U&amp;quot; vasakul annab teada esimesest seadmest(sdc1) ja teine &amp;quot;U&amp;quot; parempool on seade (/dev/sdb1). &amp;lt;br /&amp;gt;&amp;quot;U&amp;quot; tähendab, et seade on üleval ja töötab.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vaadates /proc/mdstat, siis võib otsekohe öelda, kas seade on kukkunud, siis peaks kasutaja nägema sellist märki &amp;quot;_&amp;quot;, &amp;quot;U&amp;quot; asemel.&lt;br /&gt;
&lt;br /&gt;
=Raudvara RAID=&lt;br /&gt;
&lt;br /&gt;
Raudvara baasil ehitatud süsteemid mangeerivad RAID-i alamsüsteeme iseseisvalt ilma hostita ja esitab hostile ainult üksikut ketast RAID massiivile.&lt;br /&gt;
&lt;br /&gt;
Raudvara RAID seade on selline seade, mis ühendatakse SCSI kontrollerile ja esitatakse RAID massiive üksiku SCSI kettale. &lt;br /&gt;
Väline RAID süsteem liigutab kõiki RAID tarkust töödeldes kontrollerisse, mis asub väljaspool ketta alamsüsteemi. Terve alamsüsteem on ühendatud hostile ja läbi normaalse SCSI kontrolleri ja esineb hostile üksiku kettana.&lt;br /&gt;
&lt;br /&gt;
RAID-i kontrollerid toodetakse tüüpilises kaardi formaadis nagu SCSI kontrollerid operatsiooni süsteemidele aga tegelikuses käsitlevad kõigi ketaste suhtlemist iseendaga. &amp;lt;br /&amp;gt;Sellistes olukordades tuleks paigaldada kettad RAID kontrolleritesse nagu paigaldaks SCSI kontrollerit aga, siis tuleks neid lisada RAID kontrolleri konfiguratsioonidesse ja operatsioonisüsteem ei teeks neile vahet.&lt;br /&gt;
&lt;br /&gt;
==Raudvara RAID tootjad==&lt;br /&gt;
&lt;br /&gt;
Mõned Raudvara RAID-i tootjad:&lt;br /&gt;
&lt;br /&gt;
[http://www.3ware.com/3ware_home.htm 3ware]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.hds.com/ Hitachi Data Systems]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.synetic.net/ Synetic Inc]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Eestist saadavad RAID tehnoloogiad:&lt;br /&gt;
&lt;br /&gt;
[http://www.asbis.ee/ Asbis]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.tigma.ee/ Tigma]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Terve hulk erinevaid tootjaid leiad sellelt lehelt [http://www.dmoz.org/Computers/Hardware/Storage/Subsystems/RAID/ RAID Stuff]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Kasulikud lingid=&lt;br /&gt;
&lt;br /&gt;
[http://wiki.archlinux.org/index.php/Installing_with_Software_RAID_or_LVM Installing with Software RAID or LVM]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/s1-raid-approaches.html RAID Approaches]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linux-mag.com/id/7475/2/ Linux Software RAID - A Belt and a Pair of Suspenders]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linuxhomenetworking.com/wiki/index.php/Quick_HOWTO_:_Ch26_:_Linux_Software_RAID Quick HOWTO : Linux Software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.cyberciti.biz/tips/raid-hardware-vs-raid-software.html Software RAID vs Hardware RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://blog.taragana.com/index.php/archive/which-one-is-better-software-raid-or-hardware-raid/ Which one is better Hardware RAID or Software RAID?]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linux.com/news/hardware/servers/8222-benchmarking-hardware-raid-vs-linux-kernel-software-raid Benchmarking Hardware RAID vs Linux Kernel software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://en.gentoo-wiki.com/wiki/RAID/Software Software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.howtoforge.com/replacing_hard_disks_in_a_raid1_array Replacing A Failed Hard Drive In A Software RAID1 Array]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://linux.yyz.us/why-software-raid.html Linux: Why software RAID?]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://linas.org/linux/raid.html RAID and Data Storage Protection Solutions for Linux]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://slacksite.com/slackware/raid.html Building a Software RAID System in Slackware]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Tarkvaraline_RAID_Ubuntus&amp;diff=9013</id>
		<title>Tarkvaraline RAID Ubuntus</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Tarkvaraline_RAID_Ubuntus&amp;diff=9013"/>
		<updated>2010-05-07T07:45:32Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* ID ketaste paigaldamine */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
On olemas kaks võimalust, kuidas läheneda &#039;&#039;RAID-le&#039;&#039;: Raudvara &#039;&#039;RAID&#039;&#039; ja Tarkvara &#039;&#039;RAID&#039;&#039;.&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; on sisse ehitatud Linuxi kernelisse ja seega võib kasutaja mõelda kui kasulik võib olla osta harjumuspäraseid kontrollereid, mis omavad sisse ehitatud &#039;&#039;RAID&#039;&#039; võimalusi.&lt;br /&gt;
Teised kasutajad leiavad, et mõtekam on osta harjumusest &#039;&#039;RAID&#039;&#039; süsteeme, mis on eelnevalt konfigureeritud. Võimalus kasutada tarkvara(kerneli-baasil) või raudvara(kontrolleri-baasil) &#039;&#039;RAID&#039;&#039; lahendusi, mis võivad osutuda keerulisteks. &lt;br /&gt;
&lt;br /&gt;
==Autor== &lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=Tarkvara RAID=&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; tähendab, et üks massiiv on manageeritud kerneli poolt kui spetsiaalse raudvara &#039;&#039;RAID-ga&#039;&#039;. Kernel organiseerib kõik andmed paljudel ketastel samal ajal jookseb ainult üks virtuaalne seade rakendustel. Tarkvara RAID implementeerib erinevaid &#039;&#039;RAID&#039;&#039; tasemeid kerneli ketta (blokk seadme) koodil. Tarkvara &#039;&#039;RAID&#039;&#039; töötab odavamate IDE ketastel samamoodi nagu &#039;&#039;SCSI&#039;&#039; ketaste peal. Tänapäeva kiired protsessorid lubavad oma jõudlusel ületada Raudvara &#039;&#039;RAIDI&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;MD&#039;&#039; draiver Linuxi Kernelis on näide ühest &#039;&#039;RAID&#039;&#039; lahendusest, mis ei sõltu raudvarast. Tarkvara baasil massiivi jõudlus sõltub serveri protsessori jõudlusest ja laadimisest. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Eeldused, mida annab tarkvara &#039;&#039;RAID&#039;&#039;:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
1. Threadi taasehitatav protsessi&amp;lt;br /&amp;gt;&lt;br /&gt;
2. Massiivide teiseldavus Linuxi masinate vahel ilma rekonstrueerimiseta&amp;lt;br /&amp;gt;&lt;br /&gt;
3. Tagaplaani massiivi rekonstruktsioon kasutades süsteemi ressursse&amp;lt;br /&amp;gt;&lt;br /&gt;
4. &#039;&#039;Hot swapping&#039;&#039; ketta toetus&amp;lt;br /&amp;gt;&lt;br /&gt;
5. Automaatne &#039;&#039;CPU&#039;&#039; avastamine, et oleks eelistus teatud protsessori optimeerimisest&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tarkvara RAIDI installeerimine kasutades GUI==&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; võibolla konfigureeritud Red Hat Linuxi installeerimise ajal. Selles peatükis räägime, kuidas konfigureerida tarkvara &#039;&#039;RAIDI&#039;&#039; installeerimise ajal kasutades &#039;&#039;Disk Druid&#039;&#039; kasutajaliidest. &amp;lt;br /&amp;gt;&lt;br /&gt;
Kasutades versiooni: &amp;lt;b&amp;gt;Red Hat Linx 9&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Enne &#039;&#039;RAID&#039;&#039; kettaseadme loomist peab ennem looma &#039;&#039;RAID&#039;&#039; partitsioonid, kasutades järgmist samm-haaval juhendit:&amp;lt;br /&amp;gt;&lt;br /&gt;
1.Ketta partitsioneerimise häälestuse juures tuleb valida:&amp;lt;b&amp;gt;Manually partition with Disk Druid.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.&amp;lt;b&amp;gt;&#039;&#039;Disk Druid&#039;&#039;&amp;lt;/b&amp;gt; ekraanil tuleks valida: New to create a new partition.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.Edasi ei ole enam võimalik anda monteerimise punkti(Seda on võimalik teha siis, kui on loodud &#039;&#039;RAID&#039;&#039; seade). &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4.Järgmisena tuleks valida &#039;&#039;software RAID&#039;&#039; failisüsteemi tüübiks&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid-edit.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit: [http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-edit.png RAID partitsioon]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5.&amp;lt;b&amp;gt;&#039;&#039;Allowable Drives&#039;&#039;&amp;lt;/b&amp;gt; alt tuleks valida kettad mille peale luuakse &#039;&#039;RAID&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui arvuti või kettaseadme administraatoril on mitu ketast, siis kõik olemas olevad kettad võetakse arvesse süsteemi poolt ja need märgistatakse linnukesega ära.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tuleks ära võtta linnukesed nendelt ketastelt, kus ei looda &#039;&#039;RAID&#039;&#039; massiivi.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
6.Järgmisena tuleks sisestada ketta partitsioooni sobiv suurus.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
7.Valige &amp;lt;b&amp;gt;&#039;&#039;Fixed size&#039;&#039;&amp;lt;/b&amp;gt;, et luua kindla suurusega ketta partitsioon, siis valige &#039;&#039;Fill all space up to (MB)&#039;&#039; ja sisestage suurus &#039;&#039;MB-s&#039;&#039;, et anda partitsiooni suurus või&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;&#039;&#039;Fill to maximum allowable size&#039;&#039;&amp;lt;/b&amp;gt;, et kõik vabad olevad partitsiooni suurused täidetakse kõvakettal.&amp;lt;br /&amp;gt; &lt;br /&gt;
Kui administraator või kasutaja teevad rohkem kui ühe partitsiooni, siis jagatakse vaba ruum ketta peal.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
8.Valige &amp;lt;b&amp;gt;&#039;&#039;Force to be a primary partition&#039;&#039;&amp;lt;/b&amp;gt;, et partitsioon peaks olema &#039;&#039;primary partition&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
9.Valige &amp;lt;b&amp;gt;&#039;&#039;Check for bad blocks&#039;&#039;&amp;lt;/b&amp;gt; kui kasutaja soovib, et installeerimise käigus kontrollitakse vigaseid blokke kõvakettal enne formateerimist.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
10.Vajutage &amp;lt;b&amp;gt;&#039;&#039;OK&#039;&#039;&amp;lt;/b&amp;gt;, et naaseda peamenüüsse.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Korrake need sammud kõik uuesti läbi, et luua nii palju partitsioone kui vajalik.&amp;lt;br /&amp;gt;&lt;br /&gt;
Ketaste partitsioneerimisel on võimalus luua teisi ketta tüüpe peale &#039;&#039;RAIDI&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
1.Valige &#039;&#039;RAID&#039;&#039; nupp &amp;lt;b&amp;gt;&#039;&#039;Disk Druidi&#039;&#039;&amp;lt;/b&amp;gt; häälestus paneelil.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.Järgmisena ilmub pilt, kus kasutaja loob omale &#039;&#039;RAID&#039;&#039; seadme.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid-config.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-config.png RAID seadmed]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.Sisestage installeerimise koht.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4.Valige failisüsteemi tüüp partitsiooni jaoks.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5.Valige seadme nimi nagu näiteks md0 &#039;&#039;RAID&#039;&#039; seadmele.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
6.Valige oma &#039;&#039;RAID&#039;&#039; tase. Valida võib &#039;&#039;RAID 0&#039;&#039;, &#039;&#039;RAID 1&#039;&#039; ja &#039;&#039;RAID 5&#039;&#039; hulgas.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
NB!&lt;br /&gt;
&#039;&#039;RAID&#039;&#039; partitsiooni loomisel tuleks tähelepanna &amp;quot;/boot&amp;quot; partitsioon. Selle partitsooni puhul on vaja valida &#039;&#039;RAID&#039;&#039; tase 1, &lt;br /&gt;
ja see peab kasutama ühte kahest kettaseadmest(&#039;&#039;IDE&#039;&#039; esimeseks, &#039;&#039;SCSI&#039;&#039; teiseks). &lt;br /&gt;
Kui kasutaja ei loo &#039;&#039;RAID&#039;&#039; partitsiooni &amp;quot;/boot&amp;quot; tüüpi, siis kasutaja loob &amp;quot;/&amp;quot; partitsiooni tüüpi. See on &#039;&#039;RAID&#039;&#039; tase 1 &lt;br /&gt;
ja kasutusel peab olema järgmised kaks esimest ketast(&#039;&#039;IDE&#039;&#039; esimene, &#039;&#039;SCSI&#039;&#039; teiseks)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
7.Järgmised &#039;&#039;RAID&#039;&#039; partitsioonid, mida kasutaja lõi, ilmnevad &#039;&#039;RAID&#039;&#039; kasutajate loetelus. Valige milline partitsioon nendest&amp;lt;br /&amp;gt;&lt;br /&gt;
partitsioonidest peab olema kasutatud, et luua &#039;&#039;RAID&#039;&#039; seade.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
8.Kui konfigureerida &#039;&#039;RAID 1&#039;&#039; või &#039;&#039;RAID 5&#039;&#039;, siis tuleks täpsustada vabade partitsioonide arvu. Kui tarkvara &#039;&#039;RAIDI&#039;&#039; partitsioon peaks&lt;br /&gt;
kukkuma, siis vaba partitsioonid võetakse automaatselt kasutusele asendus ketastena. Igale vabale partitsioonile tuleks luua lisa&lt;br /&gt;
tarkvara &#039;&#039;RAID&#039;&#039; partitsioon. Eelmisel sammul, valige partitsioonid &#039;&#039;RAID&#039;&#039; seadmetele ja vabadele partitsioonidele. &lt;br /&gt;
&lt;br /&gt;
9.Peale vajutades OK, &#039;&#039;RAID&#039;&#039; tase ilmub &amp;lt;b&amp;gt;Drive Summary&amp;lt;/b&amp;gt; loetellu. Peale seda võib jätkata installeerimiseprotsessiga.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Lisa küsimuste tekkimiseks tuleks vaadata &#039;&#039;Red Hat Linux instructions Guid&#039;&#039;.&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid-dd.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-dd.png RAID on loodud]&lt;br /&gt;
&lt;br /&gt;
10.&#039;&#039;RAIDI&#039;&#039; massiiv on loodud.&lt;br /&gt;
&lt;br /&gt;
==Tarkvara RAIDI installeerimine kasutades kernelit ja mdadm==&lt;br /&gt;
&lt;br /&gt;
Haldades &#039;&#039;md&#039;&#039; gruppe võib olla väga keeruline ja raske. See nõuab failide redigeerimist, kus igasugune vea tegemine võib tekitada &#039;&#039;RAID&#039;&#039; gruppide kadumist. &amp;lt;br /&amp;gt;Kasutaja peab olema selle juures ettevaatlik.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Mdadm&#039;&#039; tööriist on suur ja omab erinevaid funktsioone: &lt;br /&gt;
&lt;br /&gt;
    1.&amp;lt;b&amp;gt;&#039;&#039;Assemble&#039;&#039;&amp;lt;/b&amp;gt;(Koostama): Koostab eelnevatelt loodud massiivi komponentidelt, aktiivsesse massiivi. &lt;br /&gt;
    2.&amp;lt;b&amp;gt;&#039;&#039;Build&#039;&#039;&amp;lt;/b&amp;gt;(Ehitama): Ehitada massiiv, mis igal seadmel teeb superbloki. &lt;br /&gt;
    3.&amp;lt;b&amp;gt;&#039;&#039;Create&#039;&#039;&amp;lt;/b&amp;gt;(Looma): Luua uus &#039;&#039;RAID&#039;&#039; massiiv koos superblokiga igale seadmele.&lt;br /&gt;
    4.&amp;lt;b&amp;gt;&#039;&#039;Monitor&#039;&#039;&amp;lt;/b&amp;gt;(Monitoorimine): On võimalus monitoorida ühte või mitut md seadet, mis toimib erinevatel seadmetel.&lt;br /&gt;
    5.&amp;lt;b&amp;gt;&#039;&#039;Grow&#039;&#039;&amp;lt;/b&amp;gt;(Kasvatama): Muudab suurust (kasvamise või kahanemise) või ümberkujundada md seadme. &lt;br /&gt;
    See lubab lisada  seadmeid, nii nagu vaja läheb. &lt;br /&gt;
    6.&amp;lt;b&amp;gt;&#039;&#039;Incremental Assembly&#039;&#039;&amp;lt;/b&amp;gt;(Suurendamise blokk): Lisage üksik seade massiivile.&lt;br /&gt;
    7.&amp;lt;b&amp;gt;&#039;&#039;Manage&#039;&#039;&amp;lt;/b&amp;gt;(Manageerimine): See funktsioon lubab manageerida spetsiifilisi &#039;&#039;RAID&#039;&#039; massiivi komponente&lt;br /&gt;
    nagu lisades uusi vabu seadmeid või eemaldades vigaseid seadmeid.  &lt;br /&gt;
    8.&amp;lt;b&amp;gt;&#039;&#039;Misc&#039;&#039;&amp;lt;/b&amp;gt;(Mitmesugusus): See on funktsioon, mis sisaldab kõiki teisi funktsioone, mida läheb vaja. &lt;br /&gt;
    9.&amp;lt;b&amp;gt;&#039;&#039;Auto-detect&#039;&#039;&amp;lt;/b&amp;gt;(Automaatne leiduvus): Sellel funktsioonil on võimalus leida aktiivseid kerneleid.&lt;br /&gt;
&lt;br /&gt;
Operatsioonisüsteem &#039;&#039;CentOS 5.3&#039;&#039; kasutati järgmisel süsteemil: &lt;br /&gt;
&lt;br /&gt;
     1.Emaplaat: GigaByte MAA78GM-US2H &lt;br /&gt;
     2.Protsessor: AMD Phenom II X4 920 &lt;br /&gt;
     3.Mälu: 8GB &lt;br /&gt;
     4.Kernel: Linux 2.6.30 &lt;br /&gt;
     5.Opsüsteem ja üles laadimise ketas on IBM DTLA-307020 (20GB ketas on Ulta ATA/100 peal)&lt;br /&gt;
     6./home on  Seagate ST1360827AS&lt;br /&gt;
     7.Testimiseks on kasutusel kaks ketast: Seagate ST3500641AS-RK koos 16 MB cachega. Seal on /dev/sdb ja /dev/sdb. &amp;lt;br /&amp;gt;&lt;br /&gt;
     &amp;lt;b&amp;gt;&#039;&#039;RAID 1&#039;&#039; on loodud /dev/sdb ja /dev/sdc ketaste vahel!&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==ID ketaste paigaldamine==&lt;br /&gt;
Et luua &#039;&#039;RAID 1&#039;&#039; grupp on vaja alguses määrata ketaste &#039;&#039;ID&#039;&#039;, mis on üks &#039;&#039;RAID&#039;&#039; gruppide osa. Selle tüübi nimetus on &#039;&#039;&amp;quot;fd&amp;quot;&#039;&#039; (Linuxi automaatne tuvastamine) ja seda on vaja paigutada kõikidele partitsioonidele ja/või ketastele, mis kasutavad &#039;&#039;RAID&#039;&#039; gruppe. &lt;br /&gt;
Kasutajal on võimalus kergelt kontrollida partitsiooni tüüpe: &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Näide &#039;&#039;fd&#039;&#039; kohta:&amp;lt;br /&amp;gt;&lt;br /&gt;
Iga partitsiooneerimise juures peaks esimese ketta partitsiooni tüübi muutma &#039;&#039;Linux RAID autodetect&#039;&#039;, mis on &#039;&#039;fd&#039;&#039; tüüpi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Järgmisena näeme, milline on &#039;&#039;fd&#039;&#039; tüüpi partitsiooni ketas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Device Boot    Start       End    Blocks   Id  System&lt;br /&gt;
/dev/hda1   *         1       262   2104483+  fd  Linux raid autodetect&lt;br /&gt;
/dev/hda2           263       524   2104515   82  Linux swap&lt;br /&gt;
/dev/hda3           525      1314   6345675   fd  Linux raid autodetect&lt;br /&gt;
/dev/hda4          1315      2434   8996400    5  Extended&lt;br /&gt;
/dev/hda5          1315      1837   4200966   fd  Linux raid autodetect&lt;br /&gt;
/dev/hda6          1838      2434   4795371   fd  Linux raid autodetect&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid1.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ Partitsiooni tüübid]&lt;br /&gt;
&lt;br /&gt;
==Loome RAID, mis kasutab mdadm==&lt;br /&gt;
Tööriist &#039;&#039;mdadm&#039;&#039; lubab kergelt luua &#039;&#039;RAID&#039;&#039; grupi. Selles näiteks luuakse kahe kettaga &#039;&#039;RAID-1&#039;&#039; grupp.&lt;br /&gt;
[[Image:Raid2.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ mdadm tööriist]&lt;br /&gt;
&lt;br /&gt;
Valikud mida kuvatakse ekraanile on kergelt arusaadavad. Esimene valik on &amp;quot;-create&amp;quot; sellega saab luua &#039;&#039;RAID&#039;&#039; grupp. &lt;br /&gt;
Peale &amp;quot;-verbose&amp;quot; valikut on &#039;&#039;md&#039;&#039; seade ja selle all mõeldakse /dev/md0. Peale seda on &#039;&#039;RAID&#039;&#039; tase (&amp;quot;-level&amp;quot;) - selle all mõeldakse &#039;&#039;RAID 1&#039;&#039;. Lõpuks on &#039;&#039;RAID&#039;&#039; seadmed spetsifitseeritud kasutades &amp;quot;-raid-devices&amp;quot; valikut. &amp;lt;br /&amp;gt;Ekraani peal on näha, kas kasutajal on failisüsteem ketta partitsiooni peal. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;RAID&#039;&#039; töötab blokk tasemel. Seega on see &#039;&#039;RAID&#039;&#039; kontroller. Olgu see tarkvara &#039;&#039;RAID&#039;&#039; või Raudvara &#039;&#039;RAID&#039;&#039;, see töötab &#039;&#039;RAID&#039;&#039; grupi seadmete blokkidel. &amp;lt;br /&amp;gt;See tähendab, et ta on failisüsteemist eraldatud. Järelikult kohe kui &#039;&#039;RAID 1&#039;&#039; grupp on loodud, siis on kettad sünkroniseeritud. &amp;lt;br /&amp;gt;Esimese partitsiooni blokid on kopeeritud teise partitsiooni kettale.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid3.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ Aktiivsed RAID1]&lt;br /&gt;
&lt;br /&gt;
Pange tähele, et sünkroniseerimise protsess leiab aset &amp;quot;cat-misel&amp;quot; faili sisu on /proc/mdstat.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid4.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid5.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid6.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pildid on pärit:[http://www.linux-mag.com/id/7475/1/ Sünkroniseerimise protsess]&lt;br /&gt;
&lt;br /&gt;
Peale sünkroniseerimise lõpetamist, peaks pilt järgnevalt välja nägema:&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid7.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pildid on pärit:[http://www.linux-mag.com/id/7475/1/ &#039;&#039;RAID&#039;&#039; sünkroniseerimise protsessi lõpp]&lt;br /&gt;
&lt;br /&gt;
Nii kaugele jõudes saab failisüsteem luua md seadmele &lt;br /&gt;
&lt;br /&gt;
[[Image:Raid8.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ failisüsteemi output]&lt;br /&gt;
&lt;br /&gt;
Järgmisena võib hakata paigaldama failisüsteem. Näiteks: Järgnev rida oli lisatud /etc/fstab:&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid9.jpg]]&lt;br /&gt;
&lt;br /&gt;
Süsteem on paigaldatud kasutades &amp;quot;mount -a&amp;quot; (Eeldades, et paigaldatud asukoht eksisteerib).&lt;br /&gt;
&lt;br /&gt;
Et olla kindel, et failisüsteem on paigaldatud, tuleks kontrollida failisüsteem üle:&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid10.jpg]]&lt;br /&gt;
&lt;br /&gt;
==RAID grupi monitoorimine==&lt;br /&gt;
Siis kui &#039;&#039;RAID&#039;&#039; grupp on püsti ja failisüsteem on loodud, järgmine samm oleks monitoorida massiiv. &amp;lt;br /&amp;gt;Seal on mõningaid juppe, mida saab monitoorida massiivis. Lisaks tuleks arusaada massiivi detailidest.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid11.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/2/ loodud failisüsteem]&lt;br /&gt;
&lt;br /&gt;
Väljundis on näha kui palju seadmeid on &#039;&#039;RAID&#039;&#039; massiivis kui paljud seadmed on kukkunud ja kui paljudel seadmetel on märgistatud lisa ruumi.&lt;br /&gt;
&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Raid Level&#039;&#039;&amp;lt;/b&amp;gt;(RAID tase) - Meie olukorras on &amp;quot;raid1&amp;quot;In this case it is “raid1″&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Array Size&#039;&#039;&amp;lt;/b&amp;gt;(Massiivi suurus) - RAID massiivi suurus, mis antud olukorras on 465.76GiB.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Raid Devices&#039;&#039;&amp;lt;/b&amp;gt;(RAID seadmed) - Antud seadmete arv RAID grupi ja pildi peal on see 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Total Devices&#039;&#039;&amp;lt;/b&amp;gt;(Kokku seadmeid) - Kokku arv seadmeid RAID massiivis, mis on antud olukorras 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Active Devices&#039;&#039;&amp;lt;/b&amp;gt;(Aktiivsed seadmed) - Arv aktiivseid seadmeid, mis on pildi peal näha 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Working Devices&#039;&#039;&amp;lt;/b&amp;gt;(Töötavad seadmed) - Arv töötavaid seadmeid massiivis, mida on 2. &lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Failed Devices&#039;&#039;&amp;lt;/b&amp;gt;(Kukkunud seadmeid) - Arv kukkunud seadmeid, mis on meie puhul 0.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Spare Devices&#039;&#039;&amp;lt;/b&amp;gt;(Vabu seadmeid) - Arv vabu seadmeid, mida kasutab massiiv, mis on antud hetkel 0.&lt;br /&gt;
&lt;br /&gt;
Käsule &#039;&#039;mdadm&#039;&#039; on olemas valik &amp;quot;-mail [address]&amp;quot;, mis lubab sul lisada emaili aadress, siis kui on toimumas midagi, siis saadetakse email siht aadressile. Järgmised käsud on vabalt valitavad: &lt;br /&gt;
&lt;br /&gt;
    &#039;&#039;-program&#039;&#039;: Lubab lisada programm ja mida jooksutatakse, millal iganes on intsident leitud. &lt;br /&gt;
    &lt;br /&gt;
    &#039;&#039;-syslog&#039;&#039;: See käsk lubab raporteerida kõik süsteemis olevad vead syslogi.&lt;br /&gt;
&lt;br /&gt;
Lisaks võib informatsiooni saada faili väljundist /proc/mdstat&lt;br /&gt;
&lt;br /&gt;
Liigume käsuga &#039;&#039;&amp;quot;cat&amp;quot;&#039;&#039; faili väljundisse /proc/mdstat. &amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid12.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/2/ /proc/mdstat väljund]&lt;br /&gt;
&lt;br /&gt;
Väljund näitab aktiivseid seadmeid. &#039;&#039;RAID 1&#039;&#039; ütleb, milline seade on primaarne seade. Vaadata tuleb kõige &#039;&#039;madalamat&#039;&#039; numbrit, mis on antud massiivi seadmetes antud.&amp;lt;br /&amp;gt; Antud olukorras on sdb1 sellepärast, et ta on märgistatud &amp;quot;[0]&amp;quot;. Järgmine rida allpool sisaldab numbri blokke, mis näitab iga seadme staatust.&amp;lt;br /&amp;gt; Antud olukorras on andmete sektsioon näidatud &amp;quot;[UU]&amp;quot;. Esimene &amp;quot;U&amp;quot; vasakul annab teada esimesest seadmest(sdc1) ja teine &amp;quot;U&amp;quot; parempool on seade (/dev/sdb1). &amp;lt;br /&amp;gt;&amp;quot;U&amp;quot; tähendab, et seade on üleval ja töötab.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vaadates /proc/mdstat, siis võib otsekohe öelda, kas seade on kukkunud, siis peaks kasutaja nägema sellist märki &amp;quot;_&amp;quot;, &amp;quot;U&amp;quot; asemel.&lt;br /&gt;
&lt;br /&gt;
=Raudvara RAID=&lt;br /&gt;
&lt;br /&gt;
Raudvara baasil ehitatud süsteemid mangeerivad RAID-i alamsüsteeme iseseisvalt ilma hostita ja esitab hostile ainult üksikut ketast RAID massiivile.&lt;br /&gt;
&lt;br /&gt;
Raudvara RAID seade on selline seade, mis ühendatakse SCSI kontrollerile ja esitatakse RAID massiive üksiku SCSI kettale. &lt;br /&gt;
Väline RAID süsteem liigutab kõiki RAID tarkust töödeldes kontrollerisse, mis asub väljaspool ketta alamsüsteemi. Terve alamsüsteem on ühendatud hostile ja läbi normaalse SCSI kontrolleri ja esineb hostile üksiku kettana.&lt;br /&gt;
&lt;br /&gt;
RAID-i kontrollerid toodetakse tüüpilises kaardi formaadis nagu SCSI kontrollerid operatsiooni süsteemidele aga tegelikuses käsitlevad kõigi ketaste suhtlemist iseendaga. &amp;lt;br /&amp;gt;Sellistes olukordades tuleks paigaldada kettad RAID kontrolleritesse nagu paigaldaks SCSI kontrollerit aga, siis tuleks neid lisada RAID kontrolleri konfiguratsioonidesse ja operatsioonisüsteem ei teeks neile vahet.&lt;br /&gt;
&lt;br /&gt;
==Raudvara RAID tootjad==&lt;br /&gt;
&lt;br /&gt;
Mõned Raudvara RAID-i tootjad:&lt;br /&gt;
&lt;br /&gt;
[http://www.3ware.com/3ware_home.htm 3ware]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.hds.com/ Hitachi Data Systems]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.synetic.net/ Synetic Inc]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Eestist saadavad RAID tehnoloogiad:&lt;br /&gt;
&lt;br /&gt;
[http://www.asbis.ee/ Asbis]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.tigma.ee/ Tigma]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Terve hulk erinevaid tootjaid leiad sellelt lehelt [http://www.dmoz.org/Computers/Hardware/Storage/Subsystems/RAID/ RAID Stuff]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Kasulikud lingid=&lt;br /&gt;
&lt;br /&gt;
[http://wiki.archlinux.org/index.php/Installing_with_Software_RAID_or_LVM Installing with Software RAID or LVM]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/s1-raid-approaches.html RAID Approaches]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linux-mag.com/id/7475/2/ Linux Software RAID - A Belt and a Pair of Suspenders]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linuxhomenetworking.com/wiki/index.php/Quick_HOWTO_:_Ch26_:_Linux_Software_RAID Quick HOWTO : Linux Software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.cyberciti.biz/tips/raid-hardware-vs-raid-software.html Software RAID vs Hardware RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://blog.taragana.com/index.php/archive/which-one-is-better-software-raid-or-hardware-raid/ Which one is better Hardware RAID or Software RAID?]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linux.com/news/hardware/servers/8222-benchmarking-hardware-raid-vs-linux-kernel-software-raid Benchmarking Hardware RAID vs Linux Kernel software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://en.gentoo-wiki.com/wiki/RAID/Software Software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.howtoforge.com/replacing_hard_disks_in_a_raid1_array Replacing A Failed Hard Drive In A Software RAID1 Array]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://linux.yyz.us/why-software-raid.html Linux: Why software RAID?]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://linas.org/linux/raid.html RAID and Data Storage Protection Solutions for Linux]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://slacksite.com/slackware/raid.html Building a Software RAID System in Slackware]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Tarkvaraline_RAID_Ubuntus&amp;diff=9008</id>
		<title>Tarkvaraline RAID Ubuntus</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Tarkvaraline_RAID_Ubuntus&amp;diff=9008"/>
		<updated>2010-05-07T07:33:25Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Tarkvara RAIDI installeerimine kasutades GUI */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
On olemas kaks võimalust, kuidas läheneda &#039;&#039;RAID-le&#039;&#039;: Raudvara &#039;&#039;RAID&#039;&#039; ja Tarkvara &#039;&#039;RAID&#039;&#039;.&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; on sisse ehitatud Linuxi kernelisse ja seega võib kasutaja mõelda kui kasulik võib olla osta harjumuspäraseid kontrollereid, mis omavad sisse ehitatud &#039;&#039;RAID&#039;&#039; võimalusi.&lt;br /&gt;
Teised kasutajad leiavad, et mõtekam on osta harjumusest &#039;&#039;RAID&#039;&#039; süsteeme, mis on eelnevalt konfigureeritud. Võimalus kasutada tarkvara(kerneli-baasil) või raudvara(kontrolleri-baasil) &#039;&#039;RAID&#039;&#039; lahendusi, mis võivad osutuda keerulisteks. &lt;br /&gt;
&lt;br /&gt;
==Autor== &lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=Tarkvara RAID=&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; tähendab, et üks massiiv on manageeritud kerneli poolt kui spetsiaalse raudvara &#039;&#039;RAID-ga&#039;&#039;. Kernel organiseerib kõik andmed paljudel ketastel samal ajal jookseb ainult üks virtuaalne seade rakendustel. Tarkvara RAID implementeerib erinevaid &#039;&#039;RAID&#039;&#039; tasemeid kerneli ketta (blokk seadme) koodil. Tarkvara &#039;&#039;RAID&#039;&#039; töötab odavamate IDE ketastel samamoodi nagu &#039;&#039;SCSI&#039;&#039; ketaste peal. Tänapäeva kiired protsessorid lubavad oma jõudlusel ületada Raudvara &#039;&#039;RAIDI&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;MD&#039;&#039; draiver Linuxi Kernelis on näide ühest &#039;&#039;RAID&#039;&#039; lahendusest, mis ei sõltu raudvarast. Tarkvara baasil massiivi jõudlus sõltub serveri protsessori jõudlusest ja laadimisest. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Eeldused, mida annab tarkvara &#039;&#039;RAID&#039;&#039;:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
1. Threadi taasehitatav protsessi&amp;lt;br /&amp;gt;&lt;br /&gt;
2. Massiivide teiseldavus Linuxi masinate vahel ilma rekonstrueerimiseta&amp;lt;br /&amp;gt;&lt;br /&gt;
3. Tagaplaani massiivi rekonstruktsioon kasutades süsteemi ressursse&amp;lt;br /&amp;gt;&lt;br /&gt;
4. &#039;&#039;Hot swapping&#039;&#039; ketta toetus&amp;lt;br /&amp;gt;&lt;br /&gt;
5. Automaatne &#039;&#039;CPU&#039;&#039; avastamine, et oleks eelistus teatud protsessori optimeerimisest&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tarkvara RAIDI installeerimine kasutades GUI==&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; võibolla konfigureeritud Red Hat Linuxi installeerimise ajal. Selles peatükis räägime, kuidas konfigureerida tarkvara &#039;&#039;RAIDI&#039;&#039; installeerimise ajal kasutades &#039;&#039;Disk Druid&#039;&#039; kasutajaliidest. &amp;lt;br /&amp;gt;&lt;br /&gt;
Kasutades versiooni: &amp;lt;b&amp;gt;Red Hat Linx 9&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Enne &#039;&#039;RAID&#039;&#039; kettaseadme loomist peab ennem looma &#039;&#039;RAID&#039;&#039; partitsioonid, kasutades järgmist samm-haaval juhendit:&amp;lt;br /&amp;gt;&lt;br /&gt;
1.Ketta partitsioneerimise häälestuse juures tuleb valida:&amp;lt;b&amp;gt;Manually partition with Disk Druid.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.&amp;lt;b&amp;gt;&#039;&#039;Disk Druid&#039;&#039;&amp;lt;/b&amp;gt; ekraanil tuleks valida: New to create a new partition.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.Edasi ei ole enam võimalik anda monteerimise punkti(Seda on võimalik teha siis, kui on loodud &#039;&#039;RAID&#039;&#039; seade). &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4.Järgmisena tuleks valida &#039;&#039;software RAID&#039;&#039; failisüsteemi tüübiks&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid-edit.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit: [http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-edit.png RAID partitsioon]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5.&amp;lt;b&amp;gt;&#039;&#039;Allowable Drives&#039;&#039;&amp;lt;/b&amp;gt; alt tuleks valida kettad mille peale luuakse &#039;&#039;RAID&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui arvuti või kettaseadme administraatoril on mitu ketast, siis kõik olemas olevad kettad võetakse arvesse süsteemi poolt ja need märgistatakse linnukesega ära.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tuleks ära võtta linnukesed nendelt ketastelt, kus ei looda &#039;&#039;RAID&#039;&#039; massiivi.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
6.Järgmisena tuleks sisestada ketta partitsioooni sobiv suurus.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
7.Valige &amp;lt;b&amp;gt;&#039;&#039;Fixed size&#039;&#039;&amp;lt;/b&amp;gt;, et luua kindla suurusega ketta partitsioon, siis valige &#039;&#039;Fill all space up to (MB)&#039;&#039; ja sisestage suurus &#039;&#039;MB-s&#039;&#039;, et anda partitsiooni suurus või&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;&#039;&#039;Fill to maximum allowable size&#039;&#039;&amp;lt;/b&amp;gt;, et kõik vabad olevad partitsiooni suurused täidetakse kõvakettal.&amp;lt;br /&amp;gt; &lt;br /&gt;
Kui administraator või kasutaja teevad rohkem kui ühe partitsiooni, siis jagatakse vaba ruum ketta peal.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
8.Valige &amp;lt;b&amp;gt;&#039;&#039;Force to be a primary partition&#039;&#039;&amp;lt;/b&amp;gt;, et partitsioon peaks olema &#039;&#039;primary partition&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
9.Valige &amp;lt;b&amp;gt;&#039;&#039;Check for bad blocks&#039;&#039;&amp;lt;/b&amp;gt; kui kasutaja soovib, et installeerimise käigus kontrollitakse vigaseid blokke kõvakettal enne formateerimist.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
10.Vajutage &amp;lt;b&amp;gt;&#039;&#039;OK&#039;&#039;&amp;lt;/b&amp;gt;, et naaseda peamenüüsse.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Korrake need sammud kõik uuesti läbi, et luua nii palju partitsioone kui vajalik.&amp;lt;br /&amp;gt;&lt;br /&gt;
Ketaste partitsioneerimisel on võimalus luua teisi ketta tüüpe peale &#039;&#039;RAIDI&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
1.Valige &#039;&#039;RAID&#039;&#039; nupp &amp;lt;b&amp;gt;&#039;&#039;Disk Druidi&#039;&#039;&amp;lt;/b&amp;gt; häälestus paneelil.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.Järgmisena ilmub pilt, kus kasutaja loob omale &#039;&#039;RAID&#039;&#039; seadme.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid-config.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-config.png RAID seadmed]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.Sisestage installeerimise koht.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4.Valige failisüsteemi tüüp partitsiooni jaoks.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5.Valige seadme nimi nagu näiteks md0 &#039;&#039;RAID&#039;&#039; seadmele.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
6.Valige oma &#039;&#039;RAID&#039;&#039; tase. Valida võib &#039;&#039;RAID 0&#039;&#039;, &#039;&#039;RAID 1&#039;&#039; ja &#039;&#039;RAID 5&#039;&#039; hulgas.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
NB!&lt;br /&gt;
&#039;&#039;RAID&#039;&#039; partitsiooni loomisel tuleks tähelepanna &amp;quot;/boot&amp;quot; partitsioon. Selle partitsooni puhul on vaja valida &#039;&#039;RAID&#039;&#039; tase 1, &lt;br /&gt;
ja see peab kasutama ühte kahest kettaseadmest(&#039;&#039;IDE&#039;&#039; esimeseks, &#039;&#039;SCSI&#039;&#039; teiseks). &lt;br /&gt;
Kui kasutaja ei loo &#039;&#039;RAID&#039;&#039; partitsiooni &amp;quot;/boot&amp;quot; tüüpi, siis kasutaja loob &amp;quot;/&amp;quot; partitsiooni tüüpi. See on &#039;&#039;RAID&#039;&#039; tase 1 &lt;br /&gt;
ja kasutusel peab olema järgmised kaks esimest ketast(&#039;&#039;IDE&#039;&#039; esimene, &#039;&#039;SCSI&#039;&#039; teiseks)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
7.Järgmised &#039;&#039;RAID&#039;&#039; partitsioonid, mida kasutaja lõi, ilmnevad &#039;&#039;RAID&#039;&#039; kasutajate loetelus. Valige milline partitsioon nendest&amp;lt;br /&amp;gt;&lt;br /&gt;
partitsioonidest peab olema kasutatud, et luua &#039;&#039;RAID&#039;&#039; seade.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
8.Kui konfigureerida &#039;&#039;RAID 1&#039;&#039; või &#039;&#039;RAID 5&#039;&#039;, siis tuleks täpsustada vabade partitsioonide arvu. Kui tarkvara &#039;&#039;RAIDI&#039;&#039; partitsioon peaks&lt;br /&gt;
kukkuma, siis vaba partitsioonid võetakse automaatselt kasutusele asendus ketastena. Igale vabale partitsioonile tuleks luua lisa&lt;br /&gt;
tarkvara &#039;&#039;RAID&#039;&#039; partitsioon. Eelmisel sammul, valige partitsioonid &#039;&#039;RAID&#039;&#039; seadmetele ja vabadele partitsioonidele. &lt;br /&gt;
&lt;br /&gt;
9.Peale vajutades OK, &#039;&#039;RAID&#039;&#039; tase ilmub &amp;lt;b&amp;gt;Drive Summary&amp;lt;/b&amp;gt; loetellu. Peale seda võib jätkata installeerimiseprotsessiga.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Lisa küsimuste tekkimiseks tuleks vaadata &#039;&#039;Red Hat Linux instructions Guid&#039;&#039;.&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid-dd.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-dd.png RAID on loodud]&lt;br /&gt;
&lt;br /&gt;
10.&#039;&#039;RAIDI&#039;&#039; massiiv on loodud.&lt;br /&gt;
&lt;br /&gt;
==Tarkvara RAIDI installeerimine kasutades kernelit ja mdadm==&lt;br /&gt;
&lt;br /&gt;
Haldades &#039;&#039;md&#039;&#039; gruppe võib olla väga keeruline ja raske. See nõuab failide redigeerimist, kus igasugune vea tegemine võib tekitada &#039;&#039;RAID&#039;&#039; gruppide kadumist. &amp;lt;br /&amp;gt;Kasutaja peab olema selle juures ettevaatlik.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Mdadm&#039;&#039; tööriist on suur ja omab erinevaid funktsioone: &lt;br /&gt;
&lt;br /&gt;
    1.&amp;lt;b&amp;gt;&#039;&#039;Assemble&#039;&#039;&amp;lt;/b&amp;gt;(Koostama): Koostab eelnevatelt loodud massiivi komponentidelt, aktiivsesse massiivi. &lt;br /&gt;
    2.&amp;lt;b&amp;gt;&#039;&#039;Build&#039;&#039;&amp;lt;/b&amp;gt;(Ehitama): Ehitada massiiv, mis igal seadmel teeb superbloki. &lt;br /&gt;
    3.&amp;lt;b&amp;gt;&#039;&#039;Create&#039;&#039;&amp;lt;/b&amp;gt;(Looma): Luua uus &#039;&#039;RAID&#039;&#039; massiiv koos superblokiga igale seadmele.&lt;br /&gt;
    4.&amp;lt;b&amp;gt;&#039;&#039;Monitor&#039;&#039;&amp;lt;/b&amp;gt;(Monitoorimine): On võimalus monitoorida ühte või mitut md seadet, mis toimib erinevatel seadmetel.&lt;br /&gt;
    5.&amp;lt;b&amp;gt;&#039;&#039;Grow&#039;&#039;&amp;lt;/b&amp;gt;(Kasvatama): Muudab suurust (kasvamise või kahanemise) või ümberkujundada md seadme. &lt;br /&gt;
    See lubab lisada  seadmeid, nii nagu vaja läheb. &lt;br /&gt;
    6.&amp;lt;b&amp;gt;&#039;&#039;Incremental Assembly&#039;&#039;&amp;lt;/b&amp;gt;(Suurendamise blokk): Lisage üksik seade massiivile.&lt;br /&gt;
    7.&amp;lt;b&amp;gt;&#039;&#039;Manage&#039;&#039;&amp;lt;/b&amp;gt;(Manageerimine): See funktsioon lubab manageerida spetsiifilisi &#039;&#039;RAID&#039;&#039; massiivi komponente&lt;br /&gt;
    nagu lisades uusi vabu seadmeid või eemaldades vigaseid seadmeid.  &lt;br /&gt;
    8.&amp;lt;b&amp;gt;&#039;&#039;Misc&#039;&#039;&amp;lt;/b&amp;gt;(Mitmesugusus): See on funktsioon, mis sisaldab kõiki teisi funktsioone, mida läheb vaja. &lt;br /&gt;
    9.&amp;lt;b&amp;gt;&#039;&#039;Auto-detect&#039;&#039;&amp;lt;/b&amp;gt;(Automaatne leiduvus): Sellel funktsioonil on võimalus leida aktiivseid kerneleid.&lt;br /&gt;
&lt;br /&gt;
Operatsioonisüsteem &#039;&#039;CentOS 5.3&#039;&#039; kasutati järgmisel süsteemil: &lt;br /&gt;
&lt;br /&gt;
     1.Emaplaat: GigaByte MAA78GM-US2H &lt;br /&gt;
     2.Protsessor: AMD Phenom II X4 920 &lt;br /&gt;
     3.Mälu: 8GB &lt;br /&gt;
     4.Kernel: Linux 2.6.30 &lt;br /&gt;
     5.Opsüsteem ja üles laadimise ketas on IBM DTLA-307020 (20GB ketas on Ulta ATA/100 peal)&lt;br /&gt;
     6./home on  Seagate ST1360827AS&lt;br /&gt;
     7.Testimiseks on kasutusel kaks ketast: Seagate ST3500641AS-RK koos 16 MB cachega. Seal on /dev/sdb ja /dev/sdb. &amp;lt;br /&amp;gt;&lt;br /&gt;
     &amp;lt;b&amp;gt;&#039;&#039;RAID 1&#039;&#039; on loodud /dev/sdb ja /dev/sdc ketaste vahel!&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==ID ketaste paigaldamine==&lt;br /&gt;
Et luua &#039;&#039;RAID 1&#039;&#039; grupp on vaja alguses määrata ketaste &#039;&#039;ID&#039;&#039;, mis on üks &#039;&#039;RAID&#039;&#039; gruppide osa. Selle tüübi nimetus on &#039;&#039;&amp;quot;fd&amp;quot;&#039;&#039; (Linuxi automaatne tuvastamine) ja seda on vaja paigutada kõikidele partitsioonidele ja/või ketastele, mis kasutavad &#039;&#039;RAID&#039;&#039; gruppe. &lt;br /&gt;
Kasutajal on võimalus kergelt kontrollida partitsiooni tüüpe: &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid1.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ Partitsiooni tüübid]&lt;br /&gt;
&lt;br /&gt;
==Loome RAID, mis kasutab mdadm==&lt;br /&gt;
Tööriist &#039;&#039;mdadm&#039;&#039; lubab kergelt luua &#039;&#039;RAID&#039;&#039; grupi. Selles näiteks luuakse kahe kettaga &#039;&#039;RAID-1&#039;&#039; grupp.&lt;br /&gt;
[[Image:Raid2.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ mdadm tööriist]&lt;br /&gt;
&lt;br /&gt;
Valikud mida kuvatakse ekraanile on kergelt arusaadavad. Esimene valik on &amp;quot;-create&amp;quot; sellega saab luua &#039;&#039;RAID&#039;&#039; grupp. &lt;br /&gt;
Peale &amp;quot;-verbose&amp;quot; valikut on &#039;&#039;md&#039;&#039; seade ja selle all mõeldakse /dev/md0. Peale seda on &#039;&#039;RAID&#039;&#039; tase (&amp;quot;-level&amp;quot;) - selle all mõeldakse &#039;&#039;RAID 1&#039;&#039;. Lõpuks on &#039;&#039;RAID&#039;&#039; seadmed spetsifitseeritud kasutades &amp;quot;-raid-devices&amp;quot; valikut. &amp;lt;br /&amp;gt;Ekraani peal on näha, kas kasutajal on failisüsteem ketta partitsiooni peal. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;RAID&#039;&#039; töötab blokk tasemel. Seega on see &#039;&#039;RAID&#039;&#039; kontroller. Olgu see tarkvara &#039;&#039;RAID&#039;&#039; või Raudvara &#039;&#039;RAID&#039;&#039;, see töötab &#039;&#039;RAID&#039;&#039; grupi seadmete blokkidel. &amp;lt;br /&amp;gt;See tähendab, et ta on failisüsteemist eraldatud. Järelikult kohe kui &#039;&#039;RAID 1&#039;&#039; grupp on loodud, siis on kettad sünkroniseeritud. &amp;lt;br /&amp;gt;Esimese partitsiooni blokid on kopeeritud teise partitsiooni kettale.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid3.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ Aktiivsed RAID1]&lt;br /&gt;
&lt;br /&gt;
Pange tähele, et sünkroniseerimise protsess leiab aset &amp;quot;cat-misel&amp;quot; faili sisu on /proc/mdstat.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid4.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid5.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid6.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pildid on pärit:[http://www.linux-mag.com/id/7475/1/ Sünkroniseerimise protsess]&lt;br /&gt;
&lt;br /&gt;
Peale sünkroniseerimise lõpetamist, peaks pilt järgnevalt välja nägema:&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid7.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pildid on pärit:[http://www.linux-mag.com/id/7475/1/ &#039;&#039;RAID&#039;&#039; sünkroniseerimise protsessi lõpp]&lt;br /&gt;
&lt;br /&gt;
Nii kaugele jõudes saab failisüsteem luua md seadmele &lt;br /&gt;
&lt;br /&gt;
[[Image:Raid8.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ failisüsteemi output]&lt;br /&gt;
&lt;br /&gt;
Järgmisena võib hakata paigaldama failisüsteem. Näiteks: Järgnev rida oli lisatud /etc/fstab:&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid9.jpg]]&lt;br /&gt;
&lt;br /&gt;
Süsteem on paigaldatud kasutades &amp;quot;mount -a&amp;quot; (Eeldades, et paigaldatud asukoht eksisteerib).&lt;br /&gt;
&lt;br /&gt;
Et olla kindel, et failisüsteem on paigaldatud, tuleks kontrollida failisüsteem üle:&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid10.jpg]]&lt;br /&gt;
&lt;br /&gt;
==RAID grupi monitoorimine==&lt;br /&gt;
Siis kui &#039;&#039;RAID&#039;&#039; grupp on püsti ja failisüsteem on loodud, järgmine samm oleks monitoorida massiiv. &amp;lt;br /&amp;gt;Seal on mõningaid juppe, mida saab monitoorida massiivis. Lisaks tuleks arusaada massiivi detailidest.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid11.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/2/ loodud failisüsteem]&lt;br /&gt;
&lt;br /&gt;
Väljundis on näha kui palju seadmeid on &#039;&#039;RAID&#039;&#039; massiivis kui paljud seadmed on kukkunud ja kui paljudel seadmetel on märgistatud lisa ruumi.&lt;br /&gt;
&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Raid Level&#039;&#039;&amp;lt;/b&amp;gt;(RAID tase) - Meie olukorras on &amp;quot;raid1&amp;quot;In this case it is “raid1″&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Array Size&#039;&#039;&amp;lt;/b&amp;gt;(Massiivi suurus) - RAID massiivi suurus, mis antud olukorras on 465.76GiB.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Raid Devices&#039;&#039;&amp;lt;/b&amp;gt;(RAID seadmed) - Antud seadmete arv RAID grupi ja pildi peal on see 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Total Devices&#039;&#039;&amp;lt;/b&amp;gt;(Kokku seadmeid) - Kokku arv seadmeid RAID massiivis, mis on antud olukorras 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Active Devices&#039;&#039;&amp;lt;/b&amp;gt;(Aktiivsed seadmed) - Arv aktiivseid seadmeid, mis on pildi peal näha 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Working Devices&#039;&#039;&amp;lt;/b&amp;gt;(Töötavad seadmed) - Arv töötavaid seadmeid massiivis, mida on 2. &lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Failed Devices&#039;&#039;&amp;lt;/b&amp;gt;(Kukkunud seadmeid) - Arv kukkunud seadmeid, mis on meie puhul 0.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Spare Devices&#039;&#039;&amp;lt;/b&amp;gt;(Vabu seadmeid) - Arv vabu seadmeid, mida kasutab massiiv, mis on antud hetkel 0.&lt;br /&gt;
&lt;br /&gt;
Käsule &#039;&#039;mdadm&#039;&#039; on olemas valik &amp;quot;-mail [address]&amp;quot;, mis lubab sul lisada emaili aadress, siis kui on toimumas midagi, siis saadetakse email siht aadressile. Järgmised käsud on vabalt valitavad: &lt;br /&gt;
&lt;br /&gt;
    &#039;&#039;-program&#039;&#039;: Lubab lisada programm ja mida jooksutatakse, millal iganes on intsident leitud. &lt;br /&gt;
    &lt;br /&gt;
    &#039;&#039;-syslog&#039;&#039;: See käsk lubab raporteerida kõik süsteemis olevad vead syslogi.&lt;br /&gt;
&lt;br /&gt;
Lisaks võib informatsiooni saada faili väljundist /proc/mdstat&lt;br /&gt;
&lt;br /&gt;
Liigume käsuga &#039;&#039;&amp;quot;cat&amp;quot;&#039;&#039; faili väljundisse /proc/mdstat. &amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid12.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/2/ /proc/mdstat väljund]&lt;br /&gt;
&lt;br /&gt;
Väljund näitab aktiivseid seadmeid. &#039;&#039;RAID 1&#039;&#039; ütleb, milline seade on primaarne seade. Vaadata tuleb kõige &#039;&#039;madalamat&#039;&#039; numbrit, mis on antud massiivi seadmetes antud.&amp;lt;br /&amp;gt; Antud olukorras on sdb1 sellepärast, et ta on märgistatud &amp;quot;[0]&amp;quot;. Järgmine rida allpool sisaldab numbri blokke, mis näitab iga seadme staatust.&amp;lt;br /&amp;gt; Antud olukorras on andmete sektsioon näidatud &amp;quot;[UU]&amp;quot;. Esimene &amp;quot;U&amp;quot; vasakul annab teada esimesest seadmest(sdc1) ja teine &amp;quot;U&amp;quot; parempool on seade (/dev/sdb1). &amp;lt;br /&amp;gt;&amp;quot;U&amp;quot; tähendab, et seade on üleval ja töötab.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vaadates /proc/mdstat, siis võib otsekohe öelda, kas seade on kukkunud, siis peaks kasutaja nägema sellist märki &amp;quot;_&amp;quot;, &amp;quot;U&amp;quot; asemel.&lt;br /&gt;
&lt;br /&gt;
=Raudvara RAID=&lt;br /&gt;
&lt;br /&gt;
Raudvara baasil ehitatud süsteemid mangeerivad RAID-i alamsüsteeme iseseisvalt ilma hostita ja esitab hostile ainult üksikut ketast RAID massiivile.&lt;br /&gt;
&lt;br /&gt;
Raudvara RAID seade on selline seade, mis ühendatakse SCSI kontrollerile ja esitatakse RAID massiive üksiku SCSI kettale. &lt;br /&gt;
Väline RAID süsteem liigutab kõiki RAID tarkust töödeldes kontrollerisse, mis asub väljaspool ketta alamsüsteemi. Terve alamsüsteem on ühendatud hostile ja läbi normaalse SCSI kontrolleri ja esineb hostile üksiku kettana.&lt;br /&gt;
&lt;br /&gt;
RAID-i kontrollerid toodetakse tüüpilises kaardi formaadis nagu SCSI kontrollerid operatsiooni süsteemidele aga tegelikuses käsitlevad kõigi ketaste suhtlemist iseendaga. &amp;lt;br /&amp;gt;Sellistes olukordades tuleks paigaldada kettad RAID kontrolleritesse nagu paigaldaks SCSI kontrollerit aga, siis tuleks neid lisada RAID kontrolleri konfiguratsioonidesse ja operatsioonisüsteem ei teeks neile vahet.&lt;br /&gt;
&lt;br /&gt;
==Raudvara RAID tootjad==&lt;br /&gt;
&lt;br /&gt;
Mõned Raudvara RAID-i tootjad:&lt;br /&gt;
&lt;br /&gt;
[http://www.3ware.com/3ware_home.htm 3ware]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.hds.com/ Hitachi Data Systems]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.synetic.net/ Synetic Inc]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Eestist saadavad RAID tehnoloogiad:&lt;br /&gt;
&lt;br /&gt;
[http://www.asbis.ee/ Asbis]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.tigma.ee/ Tigma]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Terve hulk erinevaid tootjaid leiad sellelt lehelt [http://www.dmoz.org/Computers/Hardware/Storage/Subsystems/RAID/ RAID Stuff]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Kasulikud lingid=&lt;br /&gt;
&lt;br /&gt;
[http://wiki.archlinux.org/index.php/Installing_with_Software_RAID_or_LVM Installing with Software RAID or LVM]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/s1-raid-approaches.html RAID Approaches]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linux-mag.com/id/7475/2/ Linux Software RAID - A Belt and a Pair of Suspenders]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linuxhomenetworking.com/wiki/index.php/Quick_HOWTO_:_Ch26_:_Linux_Software_RAID Quick HOWTO : Linux Software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.cyberciti.biz/tips/raid-hardware-vs-raid-software.html Software RAID vs Hardware RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://blog.taragana.com/index.php/archive/which-one-is-better-software-raid-or-hardware-raid/ Which one is better Hardware RAID or Software RAID?]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linux.com/news/hardware/servers/8222-benchmarking-hardware-raid-vs-linux-kernel-software-raid Benchmarking Hardware RAID vs Linux Kernel software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://en.gentoo-wiki.com/wiki/RAID/Software Software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.howtoforge.com/replacing_hard_disks_in_a_raid1_array Replacing A Failed Hard Drive In A Software RAID1 Array]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://linux.yyz.us/why-software-raid.html Linux: Why software RAID?]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://linas.org/linux/raid.html RAID and Data Storage Protection Solutions for Linux]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://slacksite.com/slackware/raid.html Building a Software RAID System in Slackware]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Tarkvaraline_RAID_Ubuntus&amp;diff=9007</id>
		<title>Tarkvaraline RAID Ubuntus</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Tarkvaraline_RAID_Ubuntus&amp;diff=9007"/>
		<updated>2010-05-07T07:32:02Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Tarkvara RAID */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
On olemas kaks võimalust, kuidas läheneda &#039;&#039;RAID-le&#039;&#039;: Raudvara &#039;&#039;RAID&#039;&#039; ja Tarkvara &#039;&#039;RAID&#039;&#039;.&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; on sisse ehitatud Linuxi kernelisse ja seega võib kasutaja mõelda kui kasulik võib olla osta harjumuspäraseid kontrollereid, mis omavad sisse ehitatud &#039;&#039;RAID&#039;&#039; võimalusi.&lt;br /&gt;
Teised kasutajad leiavad, et mõtekam on osta harjumusest &#039;&#039;RAID&#039;&#039; süsteeme, mis on eelnevalt konfigureeritud. Võimalus kasutada tarkvara(kerneli-baasil) või raudvara(kontrolleri-baasil) &#039;&#039;RAID&#039;&#039; lahendusi, mis võivad osutuda keerulisteks. &lt;br /&gt;
&lt;br /&gt;
==Autor== &lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=Tarkvara RAID=&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; tähendab, et üks massiiv on manageeritud kerneli poolt kui spetsiaalse raudvara &#039;&#039;RAID-ga&#039;&#039;. Kernel organiseerib kõik andmed paljudel ketastel samal ajal jookseb ainult üks virtuaalne seade rakendustel. Tarkvara RAID implementeerib erinevaid &#039;&#039;RAID&#039;&#039; tasemeid kerneli ketta (blokk seadme) koodil. Tarkvara &#039;&#039;RAID&#039;&#039; töötab odavamate IDE ketastel samamoodi nagu &#039;&#039;SCSI&#039;&#039; ketaste peal. Tänapäeva kiired protsessorid lubavad oma jõudlusel ületada Raudvara &#039;&#039;RAIDI&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;MD&#039;&#039; draiver Linuxi Kernelis on näide ühest &#039;&#039;RAID&#039;&#039; lahendusest, mis ei sõltu raudvarast. Tarkvara baasil massiivi jõudlus sõltub serveri protsessori jõudlusest ja laadimisest. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Eeldused, mida annab tarkvara &#039;&#039;RAID&#039;&#039;:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
1. Threadi taasehitatav protsessi&amp;lt;br /&amp;gt;&lt;br /&gt;
2. Massiivide teiseldavus Linuxi masinate vahel ilma rekonstrueerimiseta&amp;lt;br /&amp;gt;&lt;br /&gt;
3. Tagaplaani massiivi rekonstruktsioon kasutades süsteemi ressursse&amp;lt;br /&amp;gt;&lt;br /&gt;
4. &#039;&#039;Hot swapping&#039;&#039; ketta toetus&amp;lt;br /&amp;gt;&lt;br /&gt;
5. Automaatne &#039;&#039;CPU&#039;&#039; avastamine, et oleks eelistus teatud protsessori optimeerimisest&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tarkvara RAIDI installeerimine kasutades GUI==&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; võibolla konfigureeritud Red Hat Linuxi installeerimise ajal. Selles peatükis räägime, kuidas konfigureerida tarkvara &#039;&#039;RAIDI&#039;&#039; installeerimise ajal kasutades &#039;&#039;Disk Druid&#039;&#039; kasutajaliidest. &amp;lt;br /&amp;gt;&lt;br /&gt;
Kasutades versiooni: &amp;lt;b&amp;gt;Red Hat Linx 9&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Enne &#039;&#039;RAID&#039;&#039; kettaseadme loomist peab ennem looma &#039;&#039;RAID&#039;&#039; partitsioonid, kasutades järgmist samm-haaval juhendit:&amp;lt;br /&amp;gt;&lt;br /&gt;
1.Ketta partitsioneerimise häälestuse juures tuleb valida:&amp;lt;b&amp;gt;Manually partition with Disk Druid.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.&amp;lt;b&amp;gt;&#039;&#039;Disk Druid&#039;&#039;&amp;lt;/b&amp;gt; ekraanil tuleks valida: New to create a new partition.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.Edasi ei ole enam võimalik anda monteerimise punkti(Seda on võimalik teha siis, kui on loodud &#039;&#039;RAID&#039;&#039; seade). &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4.Järgmisena tuleks valida &#039;&#039;software RAID&#039;&#039; failisüsteemi tüübiks&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid-edit.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit: [http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-edit.png RAID partitsioon]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5.&amp;lt;b&amp;gt;&#039;&#039;Allowable Drives&#039;&#039;&amp;lt;/b&amp;gt; alt tuleks valida kettad mille peale luuakse &#039;&#039;RAID&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui arvuti või kettaseadme administraatoril on mitu ketast, siis kõik olemas olevad kettad võetakse arvesse süsteemi poolt ja need märgistatakse linnukesega ära.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tuleks ära võtta linnukesed nendelt ketastelt, kus ei looda &#039;&#039;RAID&#039;&#039; massiivi.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
6.Järgmisena tuleks sisestada ketta partitsioooni sobiv suurus.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
7.Valige &amp;lt;b&amp;gt;&#039;&#039;Fixed size&#039;&#039;&amp;lt;/b&amp;gt;, et luua spetsiifilse suurusega ketta partitsioon,valige &#039;&#039;Fill all space up to (MB)&#039;&#039; ja sisestage suurus &#039;&#039;MB-s&#039;&#039;, et anda partitsiooni suurus või&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;F&#039;&#039;ill to maximum allowable size&#039;&#039;&amp;lt;/b&amp;gt;, et kõik vabad olevad partitsiooni suurused täidetakse kõvakettal.&amp;lt;br /&amp;gt; &lt;br /&gt;
Kui administraator või kasutaja teevad rohkem kui ühe partitsiooni, siis jagatakse vaba ruum ketta peal.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
8.Valige &amp;lt;b&amp;gt;&#039;&#039;Force to be a primary partition&#039;&#039;&amp;lt;/b&amp;gt;, et partitsioon peaks olema &#039;&#039;primary partition&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
9.Valige &amp;lt;b&amp;gt;&#039;&#039;Check for bad blocks&#039;&#039;&amp;lt;/b&amp;gt; kui kasutaja soovib, et installeerimise käigus kontrollitakse vigaseid blokke kõvakettal enne formateerimist.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
10.Vajutage &amp;lt;b&amp;gt;&#039;&#039;OK&#039;&#039;&amp;lt;/b&amp;gt;, et naaseda peamenüüsse.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Korrake need sammud kõik uuesti läbi, et luua nii palju partitsioone kui vajalik.&amp;lt;br /&amp;gt;&lt;br /&gt;
Ketaste partitsioneerimisel on võimalus luua teisi ketta tüüpe peale &#039;&#039;RAIDI&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
1.Valige &#039;&#039;RAID&#039;&#039; nupp &amp;lt;b&amp;gt;&#039;&#039;Disk Druidi&#039;&#039;&amp;lt;/b&amp;gt; häälestus paneelil.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.Järgmisena ilmub pilt, kus kasutaja loob omale &#039;&#039;RAID&#039;&#039; seadme.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid-config.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-config.png RAID seadmed]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.Sisestage installeerimise koht.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4.Valige failisüsteemi tüüp partitsiooni jaoks.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5.Valige seadme nimi nagu näiteks md0 &#039;&#039;RAID&#039;&#039; seadmele.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
6.Valige oma &#039;&#039;RAID&#039;&#039; tase. Valida võib &#039;&#039;RAID 0&#039;&#039;, &#039;&#039;RAID 1&#039;&#039; ja &#039;&#039;RAID 5&#039;&#039; hulgas.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
NB!&lt;br /&gt;
&#039;&#039;RAID&#039;&#039; partitsiooni loomisel tuleks tähelepanna &amp;quot;/boot&amp;quot; partitsioon. Selle partitsooni puhul on vaja valida &#039;&#039;RAID&#039;&#039; tase 1, &lt;br /&gt;
ja see peab kasutama ühte kahest kettaseadmest(&#039;&#039;IDE&#039;&#039; esimeseks, &#039;&#039;SCSI&#039;&#039; teiseks). &lt;br /&gt;
Kui kasutaja ei loo &#039;&#039;RAID&#039;&#039; partitsiooni &amp;quot;/boot&amp;quot; tüüpi, siis kasutaja loob &amp;quot;/&amp;quot; partitsiooni tüüpi. See on &#039;&#039;RAID&#039;&#039; tase 1 &lt;br /&gt;
ja kasutusel peab olema järgmised kaks esimest ketast(&#039;&#039;IDE&#039;&#039; esimene, &#039;&#039;SCSI&#039;&#039; teiseks)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
7.Järgmised &#039;&#039;RAID&#039;&#039; partitsioonid, mida kasutaja lõi, ilmnevad &#039;&#039;RAID&#039;&#039; kasutajate loetelus. Valige milline partitsioon nendest&amp;lt;br /&amp;gt;&lt;br /&gt;
partitsioonidest peab olema kasutatud, et luua &#039;&#039;RAID&#039;&#039; seade.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
8.Kui konfigureerida &#039;&#039;RAID 1&#039;&#039; või &#039;&#039;RAID 5&#039;&#039;, siis tuleks täpsustada vabade partitsioonide arvu. Kui tarkvara &#039;&#039;RAIDI&#039;&#039; partitsioon peaks&lt;br /&gt;
kukkuma, siis vaba partitsioonid võetakse automaatselt kasutusele asendus ketastena. Igale vabale partitsioonile tuleks luua lisa&lt;br /&gt;
tarkvara &#039;&#039;RAID&#039;&#039; partitsioon. Eelmisel sammul, valige partitsioonid &#039;&#039;RAID&#039;&#039; seadmetele ja vabadele partitsioonidele. &lt;br /&gt;
&lt;br /&gt;
9.Peale vajutades OK, &#039;&#039;RAID&#039;&#039; tase ilmub &amp;lt;b&amp;gt;Drive Summary&amp;lt;/b&amp;gt; loetellu. Peale seda võib jätkata installeerimiseprotsessiga.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Lisa küsimuste tekkimiseks tuleks vaadata &#039;&#039;Red Hat Linux instructions Guid&#039;&#039;.&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid-dd.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-dd.png RAID on loodud]&lt;br /&gt;
&lt;br /&gt;
10.&#039;&#039;RAIDI&#039;&#039; massiiv on loodud.&lt;br /&gt;
&lt;br /&gt;
==Tarkvara RAIDI installeerimine kasutades kernelit ja mdadm==&lt;br /&gt;
&lt;br /&gt;
Haldades &#039;&#039;md&#039;&#039; gruppe võib olla väga keeruline ja raske. See nõuab failide redigeerimist, kus igasugune vea tegemine võib tekitada &#039;&#039;RAID&#039;&#039; gruppide kadumist. &amp;lt;br /&amp;gt;Kasutaja peab olema selle juures ettevaatlik.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Mdadm&#039;&#039; tööriist on suur ja omab erinevaid funktsioone: &lt;br /&gt;
&lt;br /&gt;
    1.&amp;lt;b&amp;gt;&#039;&#039;Assemble&#039;&#039;&amp;lt;/b&amp;gt;(Koostama): Koostab eelnevatelt loodud massiivi komponentidelt, aktiivsesse massiivi. &lt;br /&gt;
    2.&amp;lt;b&amp;gt;&#039;&#039;Build&#039;&#039;&amp;lt;/b&amp;gt;(Ehitama): Ehitada massiiv, mis igal seadmel teeb superbloki. &lt;br /&gt;
    3.&amp;lt;b&amp;gt;&#039;&#039;Create&#039;&#039;&amp;lt;/b&amp;gt;(Looma): Luua uus &#039;&#039;RAID&#039;&#039; massiiv koos superblokiga igale seadmele.&lt;br /&gt;
    4.&amp;lt;b&amp;gt;&#039;&#039;Monitor&#039;&#039;&amp;lt;/b&amp;gt;(Monitoorimine): On võimalus monitoorida ühte või mitut md seadet, mis toimib erinevatel seadmetel.&lt;br /&gt;
    5.&amp;lt;b&amp;gt;&#039;&#039;Grow&#039;&#039;&amp;lt;/b&amp;gt;(Kasvatama): Muudab suurust (kasvamise või kahanemise) või ümberkujundada md seadme. &lt;br /&gt;
    See lubab lisada  seadmeid, nii nagu vaja läheb. &lt;br /&gt;
    6.&amp;lt;b&amp;gt;&#039;&#039;Incremental Assembly&#039;&#039;&amp;lt;/b&amp;gt;(Suurendamise blokk): Lisage üksik seade massiivile.&lt;br /&gt;
    7.&amp;lt;b&amp;gt;&#039;&#039;Manage&#039;&#039;&amp;lt;/b&amp;gt;(Manageerimine): See funktsioon lubab manageerida spetsiifilisi &#039;&#039;RAID&#039;&#039; massiivi komponente&lt;br /&gt;
    nagu lisades uusi vabu seadmeid või eemaldades vigaseid seadmeid.  &lt;br /&gt;
    8.&amp;lt;b&amp;gt;&#039;&#039;Misc&#039;&#039;&amp;lt;/b&amp;gt;(Mitmesugusus): See on funktsioon, mis sisaldab kõiki teisi funktsioone, mida läheb vaja. &lt;br /&gt;
    9.&amp;lt;b&amp;gt;&#039;&#039;Auto-detect&#039;&#039;&amp;lt;/b&amp;gt;(Automaatne leiduvus): Sellel funktsioonil on võimalus leida aktiivseid kerneleid.&lt;br /&gt;
&lt;br /&gt;
Operatsioonisüsteem &#039;&#039;CentOS 5.3&#039;&#039; kasutati järgmisel süsteemil: &lt;br /&gt;
&lt;br /&gt;
     1.Emaplaat: GigaByte MAA78GM-US2H &lt;br /&gt;
     2.Protsessor: AMD Phenom II X4 920 &lt;br /&gt;
     3.Mälu: 8GB &lt;br /&gt;
     4.Kernel: Linux 2.6.30 &lt;br /&gt;
     5.Opsüsteem ja üles laadimise ketas on IBM DTLA-307020 (20GB ketas on Ulta ATA/100 peal)&lt;br /&gt;
     6./home on  Seagate ST1360827AS&lt;br /&gt;
     7.Testimiseks on kasutusel kaks ketast: Seagate ST3500641AS-RK koos 16 MB cachega. Seal on /dev/sdb ja /dev/sdb. &amp;lt;br /&amp;gt;&lt;br /&gt;
     &amp;lt;b&amp;gt;&#039;&#039;RAID 1&#039;&#039; on loodud /dev/sdb ja /dev/sdc ketaste vahel!&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==ID ketaste paigaldamine==&lt;br /&gt;
Et luua &#039;&#039;RAID 1&#039;&#039; grupp on vaja alguses määrata ketaste &#039;&#039;ID&#039;&#039;, mis on üks &#039;&#039;RAID&#039;&#039; gruppide osa. Selle tüübi nimetus on &#039;&#039;&amp;quot;fd&amp;quot;&#039;&#039; (Linuxi automaatne tuvastamine) ja seda on vaja paigutada kõikidele partitsioonidele ja/või ketastele, mis kasutavad &#039;&#039;RAID&#039;&#039; gruppe. &lt;br /&gt;
Kasutajal on võimalus kergelt kontrollida partitsiooni tüüpe: &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid1.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ Partitsiooni tüübid]&lt;br /&gt;
&lt;br /&gt;
==Loome RAID, mis kasutab mdadm==&lt;br /&gt;
Tööriist &#039;&#039;mdadm&#039;&#039; lubab kergelt luua &#039;&#039;RAID&#039;&#039; grupi. Selles näiteks luuakse kahe kettaga &#039;&#039;RAID-1&#039;&#039; grupp.&lt;br /&gt;
[[Image:Raid2.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ mdadm tööriist]&lt;br /&gt;
&lt;br /&gt;
Valikud mida kuvatakse ekraanile on kergelt arusaadavad. Esimene valik on &amp;quot;-create&amp;quot; sellega saab luua &#039;&#039;RAID&#039;&#039; grupp. &lt;br /&gt;
Peale &amp;quot;-verbose&amp;quot; valikut on &#039;&#039;md&#039;&#039; seade ja selle all mõeldakse /dev/md0. Peale seda on &#039;&#039;RAID&#039;&#039; tase (&amp;quot;-level&amp;quot;) - selle all mõeldakse &#039;&#039;RAID 1&#039;&#039;. Lõpuks on &#039;&#039;RAID&#039;&#039; seadmed spetsifitseeritud kasutades &amp;quot;-raid-devices&amp;quot; valikut. &amp;lt;br /&amp;gt;Ekraani peal on näha, kas kasutajal on failisüsteem ketta partitsiooni peal. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;RAID&#039;&#039; töötab blokk tasemel. Seega on see &#039;&#039;RAID&#039;&#039; kontroller. Olgu see tarkvara &#039;&#039;RAID&#039;&#039; või Raudvara &#039;&#039;RAID&#039;&#039;, see töötab &#039;&#039;RAID&#039;&#039; grupi seadmete blokkidel. &amp;lt;br /&amp;gt;See tähendab, et ta on failisüsteemist eraldatud. Järelikult kohe kui &#039;&#039;RAID 1&#039;&#039; grupp on loodud, siis on kettad sünkroniseeritud. &amp;lt;br /&amp;gt;Esimese partitsiooni blokid on kopeeritud teise partitsiooni kettale.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid3.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ Aktiivsed RAID1]&lt;br /&gt;
&lt;br /&gt;
Pange tähele, et sünkroniseerimise protsess leiab aset &amp;quot;cat-misel&amp;quot; faili sisu on /proc/mdstat.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid4.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid5.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid6.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pildid on pärit:[http://www.linux-mag.com/id/7475/1/ Sünkroniseerimise protsess]&lt;br /&gt;
&lt;br /&gt;
Peale sünkroniseerimise lõpetamist, peaks pilt järgnevalt välja nägema:&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid7.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pildid on pärit:[http://www.linux-mag.com/id/7475/1/ &#039;&#039;RAID&#039;&#039; sünkroniseerimise protsessi lõpp]&lt;br /&gt;
&lt;br /&gt;
Nii kaugele jõudes saab failisüsteem luua md seadmele &lt;br /&gt;
&lt;br /&gt;
[[Image:Raid8.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ failisüsteemi output]&lt;br /&gt;
&lt;br /&gt;
Järgmisena võib hakata paigaldama failisüsteem. Näiteks: Järgnev rida oli lisatud /etc/fstab:&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid9.jpg]]&lt;br /&gt;
&lt;br /&gt;
Süsteem on paigaldatud kasutades &amp;quot;mount -a&amp;quot; (Eeldades, et paigaldatud asukoht eksisteerib).&lt;br /&gt;
&lt;br /&gt;
Et olla kindel, et failisüsteem on paigaldatud, tuleks kontrollida failisüsteem üle:&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid10.jpg]]&lt;br /&gt;
&lt;br /&gt;
==RAID grupi monitoorimine==&lt;br /&gt;
Siis kui &#039;&#039;RAID&#039;&#039; grupp on püsti ja failisüsteem on loodud, järgmine samm oleks monitoorida massiiv. &amp;lt;br /&amp;gt;Seal on mõningaid juppe, mida saab monitoorida massiivis. Lisaks tuleks arusaada massiivi detailidest.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid11.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/2/ loodud failisüsteem]&lt;br /&gt;
&lt;br /&gt;
Väljundis on näha kui palju seadmeid on &#039;&#039;RAID&#039;&#039; massiivis kui paljud seadmed on kukkunud ja kui paljudel seadmetel on märgistatud lisa ruumi.&lt;br /&gt;
&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Raid Level&#039;&#039;&amp;lt;/b&amp;gt;(RAID tase) - Meie olukorras on &amp;quot;raid1&amp;quot;In this case it is “raid1″&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Array Size&#039;&#039;&amp;lt;/b&amp;gt;(Massiivi suurus) - RAID massiivi suurus, mis antud olukorras on 465.76GiB.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Raid Devices&#039;&#039;&amp;lt;/b&amp;gt;(RAID seadmed) - Antud seadmete arv RAID grupi ja pildi peal on see 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Total Devices&#039;&#039;&amp;lt;/b&amp;gt;(Kokku seadmeid) - Kokku arv seadmeid RAID massiivis, mis on antud olukorras 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Active Devices&#039;&#039;&amp;lt;/b&amp;gt;(Aktiivsed seadmed) - Arv aktiivseid seadmeid, mis on pildi peal näha 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Working Devices&#039;&#039;&amp;lt;/b&amp;gt;(Töötavad seadmed) - Arv töötavaid seadmeid massiivis, mida on 2. &lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Failed Devices&#039;&#039;&amp;lt;/b&amp;gt;(Kukkunud seadmeid) - Arv kukkunud seadmeid, mis on meie puhul 0.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Spare Devices&#039;&#039;&amp;lt;/b&amp;gt;(Vabu seadmeid) - Arv vabu seadmeid, mida kasutab massiiv, mis on antud hetkel 0.&lt;br /&gt;
&lt;br /&gt;
Käsule &#039;&#039;mdadm&#039;&#039; on olemas valik &amp;quot;-mail [address]&amp;quot;, mis lubab sul lisada emaili aadress, siis kui on toimumas midagi, siis saadetakse email siht aadressile. Järgmised käsud on vabalt valitavad: &lt;br /&gt;
&lt;br /&gt;
    &#039;&#039;-program&#039;&#039;: Lubab lisada programm ja mida jooksutatakse, millal iganes on intsident leitud. &lt;br /&gt;
    &lt;br /&gt;
    &#039;&#039;-syslog&#039;&#039;: See käsk lubab raporteerida kõik süsteemis olevad vead syslogi.&lt;br /&gt;
&lt;br /&gt;
Lisaks võib informatsiooni saada faili väljundist /proc/mdstat&lt;br /&gt;
&lt;br /&gt;
Liigume käsuga &#039;&#039;&amp;quot;cat&amp;quot;&#039;&#039; faili väljundisse /proc/mdstat. &amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid12.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/2/ /proc/mdstat väljund]&lt;br /&gt;
&lt;br /&gt;
Väljund näitab aktiivseid seadmeid. &#039;&#039;RAID 1&#039;&#039; ütleb, milline seade on primaarne seade. Vaadata tuleb kõige &#039;&#039;madalamat&#039;&#039; numbrit, mis on antud massiivi seadmetes antud.&amp;lt;br /&amp;gt; Antud olukorras on sdb1 sellepärast, et ta on märgistatud &amp;quot;[0]&amp;quot;. Järgmine rida allpool sisaldab numbri blokke, mis näitab iga seadme staatust.&amp;lt;br /&amp;gt; Antud olukorras on andmete sektsioon näidatud &amp;quot;[UU]&amp;quot;. Esimene &amp;quot;U&amp;quot; vasakul annab teada esimesest seadmest(sdc1) ja teine &amp;quot;U&amp;quot; parempool on seade (/dev/sdb1). &amp;lt;br /&amp;gt;&amp;quot;U&amp;quot; tähendab, et seade on üleval ja töötab.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vaadates /proc/mdstat, siis võib otsekohe öelda, kas seade on kukkunud, siis peaks kasutaja nägema sellist märki &amp;quot;_&amp;quot;, &amp;quot;U&amp;quot; asemel.&lt;br /&gt;
&lt;br /&gt;
=Raudvara RAID=&lt;br /&gt;
&lt;br /&gt;
Raudvara baasil ehitatud süsteemid mangeerivad RAID-i alamsüsteeme iseseisvalt ilma hostita ja esitab hostile ainult üksikut ketast RAID massiivile.&lt;br /&gt;
&lt;br /&gt;
Raudvara RAID seade on selline seade, mis ühendatakse SCSI kontrollerile ja esitatakse RAID massiive üksiku SCSI kettale. &lt;br /&gt;
Väline RAID süsteem liigutab kõiki RAID tarkust töödeldes kontrollerisse, mis asub väljaspool ketta alamsüsteemi. Terve alamsüsteem on ühendatud hostile ja läbi normaalse SCSI kontrolleri ja esineb hostile üksiku kettana.&lt;br /&gt;
&lt;br /&gt;
RAID-i kontrollerid toodetakse tüüpilises kaardi formaadis nagu SCSI kontrollerid operatsiooni süsteemidele aga tegelikuses käsitlevad kõigi ketaste suhtlemist iseendaga. &amp;lt;br /&amp;gt;Sellistes olukordades tuleks paigaldada kettad RAID kontrolleritesse nagu paigaldaks SCSI kontrollerit aga, siis tuleks neid lisada RAID kontrolleri konfiguratsioonidesse ja operatsioonisüsteem ei teeks neile vahet.&lt;br /&gt;
&lt;br /&gt;
==Raudvara RAID tootjad==&lt;br /&gt;
&lt;br /&gt;
Mõned Raudvara RAID-i tootjad:&lt;br /&gt;
&lt;br /&gt;
[http://www.3ware.com/3ware_home.htm 3ware]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.hds.com/ Hitachi Data Systems]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.synetic.net/ Synetic Inc]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Eestist saadavad RAID tehnoloogiad:&lt;br /&gt;
&lt;br /&gt;
[http://www.asbis.ee/ Asbis]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.tigma.ee/ Tigma]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Terve hulk erinevaid tootjaid leiad sellelt lehelt [http://www.dmoz.org/Computers/Hardware/Storage/Subsystems/RAID/ RAID Stuff]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Kasulikud lingid=&lt;br /&gt;
&lt;br /&gt;
[http://wiki.archlinux.org/index.php/Installing_with_Software_RAID_or_LVM Installing with Software RAID or LVM]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/s1-raid-approaches.html RAID Approaches]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linux-mag.com/id/7475/2/ Linux Software RAID - A Belt and a Pair of Suspenders]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linuxhomenetworking.com/wiki/index.php/Quick_HOWTO_:_Ch26_:_Linux_Software_RAID Quick HOWTO : Linux Software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.cyberciti.biz/tips/raid-hardware-vs-raid-software.html Software RAID vs Hardware RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://blog.taragana.com/index.php/archive/which-one-is-better-software-raid-or-hardware-raid/ Which one is better Hardware RAID or Software RAID?]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linux.com/news/hardware/servers/8222-benchmarking-hardware-raid-vs-linux-kernel-software-raid Benchmarking Hardware RAID vs Linux Kernel software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://en.gentoo-wiki.com/wiki/RAID/Software Software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.howtoforge.com/replacing_hard_disks_in_a_raid1_array Replacing A Failed Hard Drive In A Software RAID1 Array]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://linux.yyz.us/why-software-raid.html Linux: Why software RAID?]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://linas.org/linux/raid.html RAID and Data Storage Protection Solutions for Linux]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://slacksite.com/slackware/raid.html Building a Software RAID System in Slackware]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Tarkvaraline_RAID_Ubuntus&amp;diff=9004</id>
		<title>Tarkvaraline RAID Ubuntus</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Tarkvaraline_RAID_Ubuntus&amp;diff=9004"/>
		<updated>2010-05-07T07:29:17Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Tarkvara RAIDI installeerimine kasutades GUI */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
On olemas kaks võimalust, kuidas läheneda &#039;&#039;RAID-le&#039;&#039;: Raudvara &#039;&#039;RAID&#039;&#039; ja Tarkvara &#039;&#039;RAID&#039;&#039;.&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; on sisse ehitatud Linuxi kernelisse ja seega võib kasutaja mõelda kui kasulik võib olla osta harjumuspäraseid kontrollereid, mis omavad sisse ehitatud &#039;&#039;RAID&#039;&#039; võimalusi.&lt;br /&gt;
Teised kasutajad leiavad, et mõtekam on osta harjumusest &#039;&#039;RAID&#039;&#039; süsteeme, mis on eelnevalt konfigureeritud. Võimalus kasutada tarkvara(kerneli-baasil) või raudvara(kontrolleri-baasil) &#039;&#039;RAID&#039;&#039; lahendusi, mis võivad osutuda keerulisteks. &lt;br /&gt;
&lt;br /&gt;
==Autor== &lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=Tarkvara RAID=&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; tähendab, et üks massiiv on manageeritud kerneli poolt kui spetsiaalse raudvara &#039;&#039;RAID-ga&#039;&#039;. Kernel organiseerib kõik andmed paljudel ketastel samal ajal jookseb ainult üks virtuaalne seade rakendustel. Tarkvara RAID implementeerib erinevaid &#039;&#039;RAID&#039;&#039; tasemeid kerneli ketta (blokk seadme) koodil. Tarkvara &#039;&#039;RAID&#039;&#039; töötab odavamate IDE ketastel samamoodi nagu &#039;&#039;SCSI&#039;&#039; ketaste peal. Tänapäeva kiired protsessorid lubavad oma jõudlusel ületada Raudvara &#039;&#039;RAIDI&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;MD&#039;&#039; draiver Linuxi Kernelis on näide ühest &#039;&#039;RAID&#039;&#039; lahendusest, mis ei sõltu raudvarast. Tarkvara baasil massiivi jõudlus sõltub serveri protsessori jõudlusest ja laadimisest. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Peamised punktid, mida pakub tarkvara &#039;&#039;RAID&#039;&#039;:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
1. Threadi taasehitatav protsessi&amp;lt;br /&amp;gt;&lt;br /&gt;
2. Massiivide teiseldavus Linuxi masinate vahel ilma rekonstrueerimiseta&amp;lt;br /&amp;gt;&lt;br /&gt;
3. Tagaplaani massiivi rekonstruktsioon kasutades süsteemi ressursse&amp;lt;br /&amp;gt;&lt;br /&gt;
4. &#039;&#039;Hot swapping&#039;&#039; ketta toetus&amp;lt;br /&amp;gt;&lt;br /&gt;
5. Automaatne &#039;&#039;CPU&#039;&#039; avastamine, et oleks eelistus teatud protsessori optimeerimisest&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tarkvara RAIDI installeerimine kasutades GUI==&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; võibolla konfigureeritud Red Hat Linuxi installeerimise ajal. Selles peatükis räägime, kuidas konfigureerida tarkvara &#039;&#039;RAIDI&#039;&#039; installeerimise ajal kasutades &#039;&#039;Disk Druid&#039;&#039; kasutajaliidest. &amp;lt;br /&amp;gt;&lt;br /&gt;
Kasutades versiooni: &amp;lt;b&amp;gt;Red Hat Linx 9&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Enne &#039;&#039;RAID&#039;&#039; kettaseadme loomist peab ennem looma &#039;&#039;RAID&#039;&#039; partitsioonid, kasutades järgmist samm-haaval juhendit:&amp;lt;br /&amp;gt;&lt;br /&gt;
1.Ketta partitsioneerimise häälestuse juures tuleb valida:&amp;lt;b&amp;gt;Manually partition with Disk Druid.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.&amp;lt;b&amp;gt;&#039;&#039;Disk Druid&#039;&#039;&amp;lt;/b&amp;gt; ekraanil tuleks valida: New to create a new partition.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.Edasi ei ole enam võimalik anda monteerimise punkti(Seda on võimalik teha siis, kui on loodud &#039;&#039;RAID&#039;&#039; seade). &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4.Järgmisena tuleks valida &#039;&#039;software RAID&#039;&#039; failisüsteemi tüübiks&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid-edit.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit: [http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-edit.png RAID partitsioon]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5.&amp;lt;b&amp;gt;&#039;&#039;Allowable Drives&#039;&#039;&amp;lt;/b&amp;gt; alt tuleks valida kettad mille peale luuakse &#039;&#039;RAID&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui arvuti või kettaseadme administraatoril on mitu ketast, siis kõik olemas olevad kettad võetakse arvesse süsteemi poolt ja need märgistatakse linnukesega ära.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tuleks ära võtta linnukesed nendelt ketastelt, kus ei looda &#039;&#039;RAID&#039;&#039; massiivi.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
6.Järgmisena tuleks sisestada ketta partitsioooni sobiv suurus.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
7.Valige &amp;lt;b&amp;gt;&#039;&#039;Fixed size&#039;&#039;&amp;lt;/b&amp;gt;, et luua spetsiifilse suurusega ketta partitsioon,valige &#039;&#039;Fill all space up to (MB)&#039;&#039; ja sisestage suurus &#039;&#039;MB-s&#039;&#039;, et anda partitsiooni suurus või&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;F&#039;&#039;ill to maximum allowable size&#039;&#039;&amp;lt;/b&amp;gt;, et kõik vabad olevad partitsiooni suurused täidetakse kõvakettal.&amp;lt;br /&amp;gt; &lt;br /&gt;
Kui administraator või kasutaja teevad rohkem kui ühe partitsiooni, siis jagatakse vaba ruum ketta peal.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
8.Valige &amp;lt;b&amp;gt;&#039;&#039;Force to be a primary partition&#039;&#039;&amp;lt;/b&amp;gt;, et partitsioon peaks olema &#039;&#039;primary partition&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
9.Valige &amp;lt;b&amp;gt;&#039;&#039;Check for bad blocks&#039;&#039;&amp;lt;/b&amp;gt; kui kasutaja soovib, et installeerimise käigus kontrollitakse vigaseid blokke kõvakettal enne formateerimist.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
10.Vajutage &amp;lt;b&amp;gt;&#039;&#039;OK&#039;&#039;&amp;lt;/b&amp;gt;, et naaseda peamenüüsse.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Korrake need sammud kõik uuesti läbi, et luua nii palju partitsioone kui vajalik.&amp;lt;br /&amp;gt;&lt;br /&gt;
Ketaste partitsioneerimisel on võimalus luua teisi ketta tüüpe peale &#039;&#039;RAIDI&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
1.Valige &#039;&#039;RAID&#039;&#039; nupp &amp;lt;b&amp;gt;&#039;&#039;Disk Druidi&#039;&#039;&amp;lt;/b&amp;gt; häälestus paneelil.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.Järgmisena ilmub pilt, kus kasutaja loob omale &#039;&#039;RAID&#039;&#039; seadme.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid-config.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-config.png RAID seadmed]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.Sisestage installeerimise koht.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4.Valige failisüsteemi tüüp partitsiooni jaoks.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5.Valige seadme nimi nagu näiteks md0 &#039;&#039;RAID&#039;&#039; seadmele.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
6.Valige oma &#039;&#039;RAID&#039;&#039; tase. Valida võib &#039;&#039;RAID 0&#039;&#039;, &#039;&#039;RAID 1&#039;&#039; ja &#039;&#039;RAID 5&#039;&#039; hulgas.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
NB!&lt;br /&gt;
&#039;&#039;RAID&#039;&#039; partitsiooni loomisel tuleks tähelepanna &amp;quot;/boot&amp;quot; partitsioon. Selle partitsooni puhul on vaja valida &#039;&#039;RAID&#039;&#039; tase 1, &lt;br /&gt;
ja see peab kasutama ühte kahest kettaseadmest(&#039;&#039;IDE&#039;&#039; esimeseks, &#039;&#039;SCSI&#039;&#039; teiseks). &lt;br /&gt;
Kui kasutaja ei loo &#039;&#039;RAID&#039;&#039; partitsiooni &amp;quot;/boot&amp;quot; tüüpi, siis kasutaja loob &amp;quot;/&amp;quot; partitsiooni tüüpi. See on &#039;&#039;RAID&#039;&#039; tase 1 &lt;br /&gt;
ja kasutusel peab olema järgmised kaks esimest ketast(&#039;&#039;IDE&#039;&#039; esimene, &#039;&#039;SCSI&#039;&#039; teiseks)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
7.Järgmised &#039;&#039;RAID&#039;&#039; partitsioonid, mida kasutaja lõi, ilmnevad &#039;&#039;RAID&#039;&#039; kasutajate loetelus. Valige milline partitsioon nendest&amp;lt;br /&amp;gt;&lt;br /&gt;
partitsioonidest peab olema kasutatud, et luua &#039;&#039;RAID&#039;&#039; seade.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
8.Kui konfigureerida &#039;&#039;RAID 1&#039;&#039; või &#039;&#039;RAID 5&#039;&#039;, siis tuleks täpsustada vabade partitsioonide arvu. Kui tarkvara &#039;&#039;RAIDI&#039;&#039; partitsioon peaks&lt;br /&gt;
kukkuma, siis vaba partitsioonid võetakse automaatselt kasutusele asendus ketastena. Igale vabale partitsioonile tuleks luua lisa&lt;br /&gt;
tarkvara &#039;&#039;RAID&#039;&#039; partitsioon. Eelmisel sammul, valige partitsioonid &#039;&#039;RAID&#039;&#039; seadmetele ja vabadele partitsioonidele. &lt;br /&gt;
&lt;br /&gt;
9.Peale vajutades OK, &#039;&#039;RAID&#039;&#039; tase ilmub &amp;lt;b&amp;gt;Drive Summary&amp;lt;/b&amp;gt; loetellu. Peale seda võib jätkata installeerimiseprotsessiga.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Lisa küsimuste tekkimiseks tuleks vaadata &#039;&#039;Red Hat Linux instructions Guid&#039;&#039;.&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid-dd.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-dd.png RAID on loodud]&lt;br /&gt;
&lt;br /&gt;
10.&#039;&#039;RAIDI&#039;&#039; massiiv on loodud.&lt;br /&gt;
&lt;br /&gt;
==Tarkvara RAIDI installeerimine kasutades kernelit ja mdadm==&lt;br /&gt;
&lt;br /&gt;
Haldades &#039;&#039;md&#039;&#039; gruppe võib olla väga keeruline ja raske. See nõuab failide redigeerimist, kus igasugune vea tegemine võib tekitada &#039;&#039;RAID&#039;&#039; gruppide kadumist. &amp;lt;br /&amp;gt;Kasutaja peab olema selle juures ettevaatlik.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Mdadm&#039;&#039; tööriist on suur ja omab erinevaid funktsioone: &lt;br /&gt;
&lt;br /&gt;
    1.&amp;lt;b&amp;gt;&#039;&#039;Assemble&#039;&#039;&amp;lt;/b&amp;gt;(Koostama): Koostab eelnevatelt loodud massiivi komponentidelt, aktiivsesse massiivi. &lt;br /&gt;
    2.&amp;lt;b&amp;gt;&#039;&#039;Build&#039;&#039;&amp;lt;/b&amp;gt;(Ehitama): Ehitada massiiv, mis igal seadmel teeb superbloki. &lt;br /&gt;
    3.&amp;lt;b&amp;gt;&#039;&#039;Create&#039;&#039;&amp;lt;/b&amp;gt;(Looma): Luua uus &#039;&#039;RAID&#039;&#039; massiiv koos superblokiga igale seadmele.&lt;br /&gt;
    4.&amp;lt;b&amp;gt;&#039;&#039;Monitor&#039;&#039;&amp;lt;/b&amp;gt;(Monitoorimine): On võimalus monitoorida ühte või mitut md seadet, mis toimib erinevatel seadmetel.&lt;br /&gt;
    5.&amp;lt;b&amp;gt;&#039;&#039;Grow&#039;&#039;&amp;lt;/b&amp;gt;(Kasvatama): Muudab suurust (kasvamise või kahanemise) või ümberkujundada md seadme. &lt;br /&gt;
    See lubab lisada  seadmeid, nii nagu vaja läheb. &lt;br /&gt;
    6.&amp;lt;b&amp;gt;&#039;&#039;Incremental Assembly&#039;&#039;&amp;lt;/b&amp;gt;(Suurendamise blokk): Lisage üksik seade massiivile.&lt;br /&gt;
    7.&amp;lt;b&amp;gt;&#039;&#039;Manage&#039;&#039;&amp;lt;/b&amp;gt;(Manageerimine): See funktsioon lubab manageerida spetsiifilisi &#039;&#039;RAID&#039;&#039; massiivi komponente&lt;br /&gt;
    nagu lisades uusi vabu seadmeid või eemaldades vigaseid seadmeid.  &lt;br /&gt;
    8.&amp;lt;b&amp;gt;&#039;&#039;Misc&#039;&#039;&amp;lt;/b&amp;gt;(Mitmesugusus): See on funktsioon, mis sisaldab kõiki teisi funktsioone, mida läheb vaja. &lt;br /&gt;
    9.&amp;lt;b&amp;gt;&#039;&#039;Auto-detect&#039;&#039;&amp;lt;/b&amp;gt;(Automaatne leiduvus): Sellel funktsioonil on võimalus leida aktiivseid kerneleid.&lt;br /&gt;
&lt;br /&gt;
Operatsioonisüsteem &#039;&#039;CentOS 5.3&#039;&#039; kasutati järgmisel süsteemil: &lt;br /&gt;
&lt;br /&gt;
     1.Emaplaat: GigaByte MAA78GM-US2H &lt;br /&gt;
     2.Protsessor: AMD Phenom II X4 920 &lt;br /&gt;
     3.Mälu: 8GB &lt;br /&gt;
     4.Kernel: Linux 2.6.30 &lt;br /&gt;
     5.Opsüsteem ja üles laadimise ketas on IBM DTLA-307020 (20GB ketas on Ulta ATA/100 peal)&lt;br /&gt;
     6./home on  Seagate ST1360827AS&lt;br /&gt;
     7.Testimiseks on kasutusel kaks ketast: Seagate ST3500641AS-RK koos 16 MB cachega. Seal on /dev/sdb ja /dev/sdb. &amp;lt;br /&amp;gt;&lt;br /&gt;
     &amp;lt;b&amp;gt;&#039;&#039;RAID 1&#039;&#039; on loodud /dev/sdb ja /dev/sdc ketaste vahel!&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==ID ketaste paigaldamine==&lt;br /&gt;
Et luua &#039;&#039;RAID 1&#039;&#039; grupp on vaja alguses määrata ketaste &#039;&#039;ID&#039;&#039;, mis on üks &#039;&#039;RAID&#039;&#039; gruppide osa. Selle tüübi nimetus on &#039;&#039;&amp;quot;fd&amp;quot;&#039;&#039; (Linuxi automaatne tuvastamine) ja seda on vaja paigutada kõikidele partitsioonidele ja/või ketastele, mis kasutavad &#039;&#039;RAID&#039;&#039; gruppe. &lt;br /&gt;
Kasutajal on võimalus kergelt kontrollida partitsiooni tüüpe: &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid1.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ Partitsiooni tüübid]&lt;br /&gt;
&lt;br /&gt;
==Loome RAID, mis kasutab mdadm==&lt;br /&gt;
Tööriist &#039;&#039;mdadm&#039;&#039; lubab kergelt luua &#039;&#039;RAID&#039;&#039; grupi. Selles näiteks luuakse kahe kettaga &#039;&#039;RAID-1&#039;&#039; grupp.&lt;br /&gt;
[[Image:Raid2.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ mdadm tööriist]&lt;br /&gt;
&lt;br /&gt;
Valikud mida kuvatakse ekraanile on kergelt arusaadavad. Esimene valik on &amp;quot;-create&amp;quot; sellega saab luua &#039;&#039;RAID&#039;&#039; grupp. &lt;br /&gt;
Peale &amp;quot;-verbose&amp;quot; valikut on &#039;&#039;md&#039;&#039; seade ja selle all mõeldakse /dev/md0. Peale seda on &#039;&#039;RAID&#039;&#039; tase (&amp;quot;-level&amp;quot;) - selle all mõeldakse &#039;&#039;RAID 1&#039;&#039;. Lõpuks on &#039;&#039;RAID&#039;&#039; seadmed spetsifitseeritud kasutades &amp;quot;-raid-devices&amp;quot; valikut. &amp;lt;br /&amp;gt;Ekraani peal on näha, kas kasutajal on failisüsteem ketta partitsiooni peal. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;RAID&#039;&#039; töötab blokk tasemel. Seega on see &#039;&#039;RAID&#039;&#039; kontroller. Olgu see tarkvara &#039;&#039;RAID&#039;&#039; või Raudvara &#039;&#039;RAID&#039;&#039;, see töötab &#039;&#039;RAID&#039;&#039; grupi seadmete blokkidel. &amp;lt;br /&amp;gt;See tähendab, et ta on failisüsteemist eraldatud. Järelikult kohe kui &#039;&#039;RAID 1&#039;&#039; grupp on loodud, siis on kettad sünkroniseeritud. &amp;lt;br /&amp;gt;Esimese partitsiooni blokid on kopeeritud teise partitsiooni kettale.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid3.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ Aktiivsed RAID1]&lt;br /&gt;
&lt;br /&gt;
Pange tähele, et sünkroniseerimise protsess leiab aset &amp;quot;cat-misel&amp;quot; faili sisu on /proc/mdstat.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid4.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid5.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid6.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pildid on pärit:[http://www.linux-mag.com/id/7475/1/ Sünkroniseerimise protsess]&lt;br /&gt;
&lt;br /&gt;
Peale sünkroniseerimise lõpetamist, peaks pilt järgnevalt välja nägema:&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid7.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pildid on pärit:[http://www.linux-mag.com/id/7475/1/ &#039;&#039;RAID&#039;&#039; sünkroniseerimise protsessi lõpp]&lt;br /&gt;
&lt;br /&gt;
Nii kaugele jõudes saab failisüsteem luua md seadmele &lt;br /&gt;
&lt;br /&gt;
[[Image:Raid8.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ failisüsteemi output]&lt;br /&gt;
&lt;br /&gt;
Järgmisena võib hakata paigaldama failisüsteem. Näiteks: Järgnev rida oli lisatud /etc/fstab:&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid9.jpg]]&lt;br /&gt;
&lt;br /&gt;
Süsteem on paigaldatud kasutades &amp;quot;mount -a&amp;quot; (Eeldades, et paigaldatud asukoht eksisteerib).&lt;br /&gt;
&lt;br /&gt;
Et olla kindel, et failisüsteem on paigaldatud, tuleks kontrollida failisüsteem üle:&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid10.jpg]]&lt;br /&gt;
&lt;br /&gt;
==RAID grupi monitoorimine==&lt;br /&gt;
Siis kui &#039;&#039;RAID&#039;&#039; grupp on püsti ja failisüsteem on loodud, järgmine samm oleks monitoorida massiiv. &amp;lt;br /&amp;gt;Seal on mõningaid juppe, mida saab monitoorida massiivis. Lisaks tuleks arusaada massiivi detailidest.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid11.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/2/ loodud failisüsteem]&lt;br /&gt;
&lt;br /&gt;
Väljundis on näha kui palju seadmeid on &#039;&#039;RAID&#039;&#039; massiivis kui paljud seadmed on kukkunud ja kui paljudel seadmetel on märgistatud lisa ruumi.&lt;br /&gt;
&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Raid Level&#039;&#039;&amp;lt;/b&amp;gt;(RAID tase) - Meie olukorras on &amp;quot;raid1&amp;quot;In this case it is “raid1″&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Array Size&#039;&#039;&amp;lt;/b&amp;gt;(Massiivi suurus) - RAID massiivi suurus, mis antud olukorras on 465.76GiB.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Raid Devices&#039;&#039;&amp;lt;/b&amp;gt;(RAID seadmed) - Antud seadmete arv RAID grupi ja pildi peal on see 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Total Devices&#039;&#039;&amp;lt;/b&amp;gt;(Kokku seadmeid) - Kokku arv seadmeid RAID massiivis, mis on antud olukorras 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Active Devices&#039;&#039;&amp;lt;/b&amp;gt;(Aktiivsed seadmed) - Arv aktiivseid seadmeid, mis on pildi peal näha 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Working Devices&#039;&#039;&amp;lt;/b&amp;gt;(Töötavad seadmed) - Arv töötavaid seadmeid massiivis, mida on 2. &lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Failed Devices&#039;&#039;&amp;lt;/b&amp;gt;(Kukkunud seadmeid) - Arv kukkunud seadmeid, mis on meie puhul 0.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Spare Devices&#039;&#039;&amp;lt;/b&amp;gt;(Vabu seadmeid) - Arv vabu seadmeid, mida kasutab massiiv, mis on antud hetkel 0.&lt;br /&gt;
&lt;br /&gt;
Käsule &#039;&#039;mdadm&#039;&#039; on olemas valik &amp;quot;-mail [address]&amp;quot;, mis lubab sul lisada emaili aadress, siis kui on toimumas midagi, siis saadetakse email siht aadressile. Järgmised käsud on vabalt valitavad: &lt;br /&gt;
&lt;br /&gt;
    &#039;&#039;-program&#039;&#039;: Lubab lisada programm ja mida jooksutatakse, millal iganes on intsident leitud. &lt;br /&gt;
    &lt;br /&gt;
    &#039;&#039;-syslog&#039;&#039;: See käsk lubab raporteerida kõik süsteemis olevad vead syslogi.&lt;br /&gt;
&lt;br /&gt;
Lisaks võib informatsiooni saada faili väljundist /proc/mdstat&lt;br /&gt;
&lt;br /&gt;
Liigume käsuga &#039;&#039;&amp;quot;cat&amp;quot;&#039;&#039; faili väljundisse /proc/mdstat. &amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid12.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/2/ /proc/mdstat väljund]&lt;br /&gt;
&lt;br /&gt;
Väljund näitab aktiivseid seadmeid. &#039;&#039;RAID 1&#039;&#039; ütleb, milline seade on primaarne seade. Vaadata tuleb kõige &#039;&#039;madalamat&#039;&#039; numbrit, mis on antud massiivi seadmetes antud.&amp;lt;br /&amp;gt; Antud olukorras on sdb1 sellepärast, et ta on märgistatud &amp;quot;[0]&amp;quot;. Järgmine rida allpool sisaldab numbri blokke, mis näitab iga seadme staatust.&amp;lt;br /&amp;gt; Antud olukorras on andmete sektsioon näidatud &amp;quot;[UU]&amp;quot;. Esimene &amp;quot;U&amp;quot; vasakul annab teada esimesest seadmest(sdc1) ja teine &amp;quot;U&amp;quot; parempool on seade (/dev/sdb1). &amp;lt;br /&amp;gt;&amp;quot;U&amp;quot; tähendab, et seade on üleval ja töötab.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vaadates /proc/mdstat, siis võib otsekohe öelda, kas seade on kukkunud, siis peaks kasutaja nägema sellist märki &amp;quot;_&amp;quot;, &amp;quot;U&amp;quot; asemel.&lt;br /&gt;
&lt;br /&gt;
=Raudvara RAID=&lt;br /&gt;
&lt;br /&gt;
Raudvara baasil ehitatud süsteemid mangeerivad RAID-i alamsüsteeme iseseisvalt ilma hostita ja esitab hostile ainult üksikut ketast RAID massiivile.&lt;br /&gt;
&lt;br /&gt;
Raudvara RAID seade on selline seade, mis ühendatakse SCSI kontrollerile ja esitatakse RAID massiive üksiku SCSI kettale. &lt;br /&gt;
Väline RAID süsteem liigutab kõiki RAID tarkust töödeldes kontrollerisse, mis asub väljaspool ketta alamsüsteemi. Terve alamsüsteem on ühendatud hostile ja läbi normaalse SCSI kontrolleri ja esineb hostile üksiku kettana.&lt;br /&gt;
&lt;br /&gt;
RAID-i kontrollerid toodetakse tüüpilises kaardi formaadis nagu SCSI kontrollerid operatsiooni süsteemidele aga tegelikuses käsitlevad kõigi ketaste suhtlemist iseendaga. &amp;lt;br /&amp;gt;Sellistes olukordades tuleks paigaldada kettad RAID kontrolleritesse nagu paigaldaks SCSI kontrollerit aga, siis tuleks neid lisada RAID kontrolleri konfiguratsioonidesse ja operatsioonisüsteem ei teeks neile vahet.&lt;br /&gt;
&lt;br /&gt;
==Raudvara RAID tootjad==&lt;br /&gt;
&lt;br /&gt;
Mõned Raudvara RAID-i tootjad:&lt;br /&gt;
&lt;br /&gt;
[http://www.3ware.com/3ware_home.htm 3ware]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.hds.com/ Hitachi Data Systems]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.synetic.net/ Synetic Inc]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Eestist saadavad RAID tehnoloogiad:&lt;br /&gt;
&lt;br /&gt;
[http://www.asbis.ee/ Asbis]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.tigma.ee/ Tigma]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Terve hulk erinevaid tootjaid leiad sellelt lehelt [http://www.dmoz.org/Computers/Hardware/Storage/Subsystems/RAID/ RAID Stuff]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Kasulikud lingid=&lt;br /&gt;
&lt;br /&gt;
[http://wiki.archlinux.org/index.php/Installing_with_Software_RAID_or_LVM Installing with Software RAID or LVM]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/s1-raid-approaches.html RAID Approaches]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linux-mag.com/id/7475/2/ Linux Software RAID - A Belt and a Pair of Suspenders]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linuxhomenetworking.com/wiki/index.php/Quick_HOWTO_:_Ch26_:_Linux_Software_RAID Quick HOWTO : Linux Software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.cyberciti.biz/tips/raid-hardware-vs-raid-software.html Software RAID vs Hardware RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://blog.taragana.com/index.php/archive/which-one-is-better-software-raid-or-hardware-raid/ Which one is better Hardware RAID or Software RAID?]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linux.com/news/hardware/servers/8222-benchmarking-hardware-raid-vs-linux-kernel-software-raid Benchmarking Hardware RAID vs Linux Kernel software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://en.gentoo-wiki.com/wiki/RAID/Software Software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.howtoforge.com/replacing_hard_disks_in_a_raid1_array Replacing A Failed Hard Drive In A Software RAID1 Array]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://linux.yyz.us/why-software-raid.html Linux: Why software RAID?]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://linas.org/linux/raid.html RAID and Data Storage Protection Solutions for Linux]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://slacksite.com/slackware/raid.html Building a Software RAID System in Slackware]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Tarkvaraline_RAID_Ubuntus&amp;diff=9003</id>
		<title>Tarkvaraline RAID Ubuntus</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Tarkvaraline_RAID_Ubuntus&amp;diff=9003"/>
		<updated>2010-05-07T07:27:17Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Sissejuhatus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
On olemas kaks võimalust, kuidas läheneda &#039;&#039;RAID-le&#039;&#039;: Raudvara &#039;&#039;RAID&#039;&#039; ja Tarkvara &#039;&#039;RAID&#039;&#039;.&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; on sisse ehitatud Linuxi kernelisse ja seega võib kasutaja mõelda kui kasulik võib olla osta harjumuspäraseid kontrollereid, mis omavad sisse ehitatud &#039;&#039;RAID&#039;&#039; võimalusi.&lt;br /&gt;
Teised kasutajad leiavad, et mõtekam on osta harjumusest &#039;&#039;RAID&#039;&#039; süsteeme, mis on eelnevalt konfigureeritud. Võimalus kasutada tarkvara(kerneli-baasil) või raudvara(kontrolleri-baasil) &#039;&#039;RAID&#039;&#039; lahendusi, mis võivad osutuda keerulisteks. &lt;br /&gt;
&lt;br /&gt;
==Autor== &lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=Tarkvara RAID=&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; tähendab, et üks massiiv on manageeritud kerneli poolt kui spetsiaalse raudvara &#039;&#039;RAID-ga&#039;&#039;. Kernel organiseerib kõik andmed paljudel ketastel samal ajal jookseb ainult üks virtuaalne seade rakendustel. Tarkvara RAID implementeerib erinevaid &#039;&#039;RAID&#039;&#039; tasemeid kerneli ketta (blokk seadme) koodil. Tarkvara &#039;&#039;RAID&#039;&#039; töötab odavamate IDE ketastel samamoodi nagu &#039;&#039;SCSI&#039;&#039; ketaste peal. Tänapäeva kiired protsessorid lubavad oma jõudlusel ületada Raudvara &#039;&#039;RAIDI&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;MD&#039;&#039; draiver Linuxi Kernelis on näide ühest &#039;&#039;RAID&#039;&#039; lahendusest, mis ei sõltu raudvarast. Tarkvara baasil massiivi jõudlus sõltub serveri protsessori jõudlusest ja laadimisest. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Peamised punktid, mida pakub tarkvara &#039;&#039;RAID&#039;&#039;:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
1. Threadi taasehitatav protsessi&amp;lt;br /&amp;gt;&lt;br /&gt;
2. Massiivide teiseldavus Linuxi masinate vahel ilma rekonstrueerimiseta&amp;lt;br /&amp;gt;&lt;br /&gt;
3. Tagaplaani massiivi rekonstruktsioon kasutades süsteemi ressursse&amp;lt;br /&amp;gt;&lt;br /&gt;
4. &#039;&#039;Hot swapping&#039;&#039; ketta toetus&amp;lt;br /&amp;gt;&lt;br /&gt;
5. Automaatne &#039;&#039;CPU&#039;&#039; avastamine, et oleks eelistus teatud protsessori optimeerimisest&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tarkvara RAIDI installeerimine kasutades GUI==&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; võibolla konfigureeritud Red Hat Linuxi installeerimise ajal. Selles peatükis räägime, kuidas konfigureerida tarkvara &#039;&#039;RAIDI&#039;&#039; installeerimise ajal kasutades &#039;&#039;Disk Druid&#039;&#039; kasutajaliidest. &amp;lt;br /&amp;gt;&lt;br /&gt;
Kasutades versiooni: &amp;lt;b&amp;gt;Red Hat Linx 9&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Enne &#039;&#039;RAID&#039;&#039; kettaseadme loomist peab ennem looma &#039;&#039;RAID&#039;&#039; partitsioonid, kasutades järgmist samm-haaval juhendit:&amp;lt;br /&amp;gt;&lt;br /&gt;
1.Ketta partitsioneerimise häälestuse juures tuleb valida:&amp;lt;b&amp;gt;Manually partition with Disk Druid.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.&amp;lt;b&amp;gt;&#039;&#039;Disk Druid&#039;&#039;&amp;lt;/b&amp;gt; ekraanil tuleks valida: New to create a new partition.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.Edasi ei ole enam võimalik anda monteerimise punkti(Seda on võimalik teha siis, kui on loodud &#039;&#039;RAID&#039;&#039; seade). &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4.Järgmisena tuleks valida &#039;&#039;software RAID&#039;&#039; failisüsteemi tüübiks&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid-edit.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit: [http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-edit.png RAID partitsioon]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5.&amp;lt;b&amp;gt;&#039;&#039;Allowable Drives&#039;&#039;&amp;lt;/b&amp;gt; alt tuleks valida kettad mille peale luuakse &#039;&#039;RAID&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui arvuti või kettaseadme administraatoril on mitu ketast, siis kõik olemas olevad kettad võetakse arvesse süsteemi poolt ja need märgistatakse linnukesega ära.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tuleks ära võtta linnukesed nendelt ketastelt, kus ei looda &#039;&#039;RAID&#039;&#039; massiivi.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
6.Järgmisena tuleks sisestada ketta partitsioooni sobiv suurus.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
7.Valige &amp;lt;b&amp;gt;&#039;&#039;Fixed size&#039;&#039;&amp;lt;/b&amp;gt;, et luua spetsiifilse suurusega ketta partitsioon,valige &#039;&#039;Fill all space up to (MB)&#039;&#039; ja sisestage suurus &#039;&#039;MB-s&#039;&#039;, et anda partitsiooni suurus või&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;F&#039;&#039;ill to maximum allowable size&#039;&#039;&amp;lt;/b&amp;gt;, et kõik vabad olevad partitsiooni suurused täidetakse kõvakettal.&amp;lt;br /&amp;gt; &lt;br /&gt;
Kui administraator või kasutaja teevad rohkem kui ühe partitsiooni, siis jagatakse vaba ruum ketta peal.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
8.Valige &amp;lt;b&amp;gt;&#039;&#039;Force to be a primary partition&#039;&#039;&amp;lt;/b&amp;gt;, et partitsioon peaks olema &#039;&#039;primary partition&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
9.Valige &amp;lt;b&amp;gt;&#039;&#039;Check for bad blocks&#039;&#039;&amp;lt;/b&amp;gt; kui kasutaja soovib, et installeerimise käigus kontrollitakse vigaseid blokke kõvakettal enne formateerimist.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
10.Vajutage &amp;lt;b&amp;gt;&#039;&#039;OK&#039;&#039;&amp;lt;/b&amp;gt;, et naaseda peamenüüsse.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Korrake need sammud kõik uuesti läbi, et luua nii palju partitsioone kui vajalik.&amp;lt;br /&amp;gt;&lt;br /&gt;
Ketaste partitsioneerimisel on võimalus luua teisi ketta tüüpe peale &#039;&#039;RAIDI&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
1.Valige &#039;&#039;RAID&#039;&#039; nupp &amp;lt;b&amp;gt;&#039;&#039;Disk Druidi&#039;&#039;&amp;lt;/b&amp;gt; häälestus paneelil.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.Järgmisena ilmub pilt, kus kasutaja loob omale &#039;&#039;RAID&#039;&#039; seadme.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid-config.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-config.png RAID seadmed]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.Sisestage installeerimise koht.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4.Valige failisüsteemi tüüp partitsiooni jaoks.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5.Valige seadme nimi nagu näiteks md0 &#039;&#039;RAID&#039;&#039; seadmele.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
6.Valige oma &#039;&#039;RAID&#039;&#039; tase. Valida võib &#039;&#039;RAID 0&#039;&#039;, &#039;&#039;RAID 1&#039;&#039; ja &#039;&#039;RAID 5&#039;&#039; hulgas.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
NB!&lt;br /&gt;
&#039;&#039;RAID&#039;&#039; partitsiooni loomisel tuleks tähelepanna &amp;quot;/boot&amp;quot; partitsioon. Selle partitsooni puhul on vaja valida &#039;&#039;RAID&#039;&#039; tase 1, &lt;br /&gt;
ja see peab kasutama ühte kahest kettaseadmest(&#039;&#039;IDE&#039;&#039; esimeseks, &#039;&#039;SCSI&#039;&#039; teiseks). &lt;br /&gt;
Kui kasutaja ei loo &#039;&#039;RAID&#039;&#039; partitsiooni &amp;quot;/boot&amp;quot; tüüpi, siis kasutaja loob &amp;quot;/&amp;quot; partitsiooni tüüpi. See on &#039;&#039;RAID&#039;&#039; tase 1 &lt;br /&gt;
ja kasutusel peab olema järgmised kaks esimest ketast(&#039;&#039;IDE&#039;&#039; esimene, &#039;&#039;SCSI&#039;&#039; teiseks)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
7.Järgmised &#039;&#039;RAID&#039;&#039; partitsioonid, mida kasutaja lõi, ilmnevad &#039;&#039;RAID&#039;&#039; kasutajate loetelus. Valige milline partitsioon nendest&amp;lt;br /&amp;gt;&lt;br /&gt;
partitsioonidest peab olema kasutatud, et luua &#039;&#039;RAID&#039;&#039; seade.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
8.Kui konfigureerida &#039;&#039;RAID 1&#039;&#039; või &#039;&#039;RAID 5&#039;&#039;, siis tuleks täpsustada vabade partitsioonide arvu. Kui tarkvara &#039;&#039;RAIDI&#039;&#039; partitsioon peaks&lt;br /&gt;
kukkuma, siis vaba partitsioonid võetakse automaatselt kasutusele asendus ketastena. Igale vabale partitsioonile tuleks luua lisa&lt;br /&gt;
tarkvara &#039;&#039;RAID&#039;&#039; partitsioon. Eelmisel sammul, valige partitsioonid &#039;&#039;RAID&#039;&#039; seadmetele ja vabadele partitsioonidele. &lt;br /&gt;
&lt;br /&gt;
9.Peale vajutades OK, &#039;&#039;RAID&#039;&#039; tase ilmub &amp;lt;b&amp;gt;Drive Summary&amp;lt;/b&amp;gt; loetellu. Peale seda võib jätkata instaleerimis protsessiga.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Lisa küsimuste tekkimiseks tuleks vaadata &#039;&#039;Red Hat Linux instructions Guid&#039;&#039;.&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid-dd.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-dd.png RAID on loodud]&lt;br /&gt;
&lt;br /&gt;
10.&#039;&#039;RAIDI&#039;&#039; massiiv on loodud.&lt;br /&gt;
&lt;br /&gt;
==Tarkvara RAIDI installeerimine kasutades kernelit ja mdadm==&lt;br /&gt;
&lt;br /&gt;
Haldades &#039;&#039;md&#039;&#039; gruppe võib olla väga keeruline ja raske. See nõuab failide redigeerimist, kus igasugune vea tegemine võib tekitada &#039;&#039;RAID&#039;&#039; gruppide kadumist. &amp;lt;br /&amp;gt;Kasutaja peab olema selle juures ettevaatlik.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Mdadm&#039;&#039; tööriist on suur ja omab erinevaid funktsioone: &lt;br /&gt;
&lt;br /&gt;
    1.&amp;lt;b&amp;gt;&#039;&#039;Assemble&#039;&#039;&amp;lt;/b&amp;gt;(Koostama): Koostab eelnevatelt loodud massiivi komponentidelt, aktiivsesse massiivi. &lt;br /&gt;
    2.&amp;lt;b&amp;gt;&#039;&#039;Build&#039;&#039;&amp;lt;/b&amp;gt;(Ehitama): Ehitada massiiv, mis igal seadmel teeb superbloki. &lt;br /&gt;
    3.&amp;lt;b&amp;gt;&#039;&#039;Create&#039;&#039;&amp;lt;/b&amp;gt;(Looma): Luua uus &#039;&#039;RAID&#039;&#039; massiiv koos superblokiga igale seadmele.&lt;br /&gt;
    4.&amp;lt;b&amp;gt;&#039;&#039;Monitor&#039;&#039;&amp;lt;/b&amp;gt;(Monitoorimine): On võimalus monitoorida ühte või mitut md seadet, mis toimib erinevatel seadmetel.&lt;br /&gt;
    5.&amp;lt;b&amp;gt;&#039;&#039;Grow&#039;&#039;&amp;lt;/b&amp;gt;(Kasvatama): Muudab suurust (kasvamise või kahanemise) või ümberkujundada md seadme. &lt;br /&gt;
    See lubab lisada  seadmeid, nii nagu vaja läheb. &lt;br /&gt;
    6.&amp;lt;b&amp;gt;&#039;&#039;Incremental Assembly&#039;&#039;&amp;lt;/b&amp;gt;(Suurendamise blokk): Lisage üksik seade massiivile.&lt;br /&gt;
    7.&amp;lt;b&amp;gt;&#039;&#039;Manage&#039;&#039;&amp;lt;/b&amp;gt;(Manageerimine): See funktsioon lubab manageerida spetsiifilisi &#039;&#039;RAID&#039;&#039; massiivi komponente&lt;br /&gt;
    nagu lisades uusi vabu seadmeid või eemaldades vigaseid seadmeid.  &lt;br /&gt;
    8.&amp;lt;b&amp;gt;&#039;&#039;Misc&#039;&#039;&amp;lt;/b&amp;gt;(Mitmesugusus): See on funktsioon, mis sisaldab kõiki teisi funktsioone, mida läheb vaja. &lt;br /&gt;
    9.&amp;lt;b&amp;gt;&#039;&#039;Auto-detect&#039;&#039;&amp;lt;/b&amp;gt;(Automaatne leiduvus): Sellel funktsioonil on võimalus leida aktiivseid kerneleid.&lt;br /&gt;
&lt;br /&gt;
Operatsioonisüsteem &#039;&#039;CentOS 5.3&#039;&#039; kasutati järgmisel süsteemil: &lt;br /&gt;
&lt;br /&gt;
     1.Emaplaat: GigaByte MAA78GM-US2H &lt;br /&gt;
     2.Protsessor: AMD Phenom II X4 920 &lt;br /&gt;
     3.Mälu: 8GB &lt;br /&gt;
     4.Kernel: Linux 2.6.30 &lt;br /&gt;
     5.Opsüsteem ja üles laadimise ketas on IBM DTLA-307020 (20GB ketas on Ulta ATA/100 peal)&lt;br /&gt;
     6./home on  Seagate ST1360827AS&lt;br /&gt;
     7.Testimiseks on kasutusel kaks ketast: Seagate ST3500641AS-RK koos 16 MB cachega. Seal on /dev/sdb ja /dev/sdb. &amp;lt;br /&amp;gt;&lt;br /&gt;
     &amp;lt;b&amp;gt;&#039;&#039;RAID 1&#039;&#039; on loodud /dev/sdb ja /dev/sdc ketaste vahel!&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==ID ketaste paigaldamine==&lt;br /&gt;
Et luua &#039;&#039;RAID 1&#039;&#039; grupp on vaja alguses määrata ketaste &#039;&#039;ID&#039;&#039;, mis on üks &#039;&#039;RAID&#039;&#039; gruppide osa. Selle tüübi nimetus on &#039;&#039;&amp;quot;fd&amp;quot;&#039;&#039; (Linuxi automaatne tuvastamine) ja seda on vaja paigutada kõikidele partitsioonidele ja/või ketastele, mis kasutavad &#039;&#039;RAID&#039;&#039; gruppe. &lt;br /&gt;
Kasutajal on võimalus kergelt kontrollida partitsiooni tüüpe: &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid1.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ Partitsiooni tüübid]&lt;br /&gt;
&lt;br /&gt;
==Loome RAID, mis kasutab mdadm==&lt;br /&gt;
Tööriist &#039;&#039;mdadm&#039;&#039; lubab kergelt luua &#039;&#039;RAID&#039;&#039; grupi. Selles näiteks luuakse kahe kettaga &#039;&#039;RAID-1&#039;&#039; grupp.&lt;br /&gt;
[[Image:Raid2.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ mdadm tööriist]&lt;br /&gt;
&lt;br /&gt;
Valikud mida kuvatakse ekraanile on kergelt arusaadavad. Esimene valik on &amp;quot;-create&amp;quot; sellega saab luua &#039;&#039;RAID&#039;&#039; grupp. &lt;br /&gt;
Peale &amp;quot;-verbose&amp;quot; valikut on &#039;&#039;md&#039;&#039; seade ja selle all mõeldakse /dev/md0. Peale seda on &#039;&#039;RAID&#039;&#039; tase (&amp;quot;-level&amp;quot;) - selle all mõeldakse &#039;&#039;RAID 1&#039;&#039;. Lõpuks on &#039;&#039;RAID&#039;&#039; seadmed spetsifitseeritud kasutades &amp;quot;-raid-devices&amp;quot; valikut. &amp;lt;br /&amp;gt;Ekraani peal on näha, kas kasutajal on failisüsteem ketta partitsiooni peal. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;RAID&#039;&#039; töötab blokk tasemel. Seega on see &#039;&#039;RAID&#039;&#039; kontroller. Olgu see tarkvara &#039;&#039;RAID&#039;&#039; või Raudvara &#039;&#039;RAID&#039;&#039;, see töötab &#039;&#039;RAID&#039;&#039; grupi seadmete blokkidel. &amp;lt;br /&amp;gt;See tähendab, et ta on failisüsteemist eraldatud. Järelikult kohe kui &#039;&#039;RAID 1&#039;&#039; grupp on loodud, siis on kettad sünkroniseeritud. &amp;lt;br /&amp;gt;Esimese partitsiooni blokid on kopeeritud teise partitsiooni kettale.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid3.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ Aktiivsed RAID1]&lt;br /&gt;
&lt;br /&gt;
Pange tähele, et sünkroniseerimise protsess leiab aset &amp;quot;cat-misel&amp;quot; faili sisu on /proc/mdstat.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid4.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid5.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid6.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pildid on pärit:[http://www.linux-mag.com/id/7475/1/ Sünkroniseerimise protsess]&lt;br /&gt;
&lt;br /&gt;
Peale sünkroniseerimise lõpetamist, peaks pilt järgnevalt välja nägema:&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid7.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pildid on pärit:[http://www.linux-mag.com/id/7475/1/ &#039;&#039;RAID&#039;&#039; sünkroniseerimise protsessi lõpp]&lt;br /&gt;
&lt;br /&gt;
Nii kaugele jõudes saab failisüsteem luua md seadmele &lt;br /&gt;
&lt;br /&gt;
[[Image:Raid8.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ failisüsteemi output]&lt;br /&gt;
&lt;br /&gt;
Järgmisena võib hakata paigaldama failisüsteem. Näiteks: Järgnev rida oli lisatud /etc/fstab:&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid9.jpg]]&lt;br /&gt;
&lt;br /&gt;
Süsteem on paigaldatud kasutades &amp;quot;mount -a&amp;quot; (Eeldades, et paigaldatud asukoht eksisteerib).&lt;br /&gt;
&lt;br /&gt;
Et olla kindel, et failisüsteem on paigaldatud, tuleks kontrollida failisüsteem üle:&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid10.jpg]]&lt;br /&gt;
&lt;br /&gt;
==RAID grupi monitoorimine==&lt;br /&gt;
Siis kui &#039;&#039;RAID&#039;&#039; grupp on püsti ja failisüsteem on loodud, järgmine samm oleks monitoorida massiiv. &amp;lt;br /&amp;gt;Seal on mõningaid juppe, mida saab monitoorida massiivis. Lisaks tuleks arusaada massiivi detailidest.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid11.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/2/ loodud failisüsteem]&lt;br /&gt;
&lt;br /&gt;
Väljundis on näha kui palju seadmeid on &#039;&#039;RAID&#039;&#039; massiivis kui paljud seadmed on kukkunud ja kui paljudel seadmetel on märgistatud lisa ruumi.&lt;br /&gt;
&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Raid Level&#039;&#039;&amp;lt;/b&amp;gt;(RAID tase) - Meie olukorras on &amp;quot;raid1&amp;quot;In this case it is “raid1″&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Array Size&#039;&#039;&amp;lt;/b&amp;gt;(Massiivi suurus) - RAID massiivi suurus, mis antud olukorras on 465.76GiB.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Raid Devices&#039;&#039;&amp;lt;/b&amp;gt;(RAID seadmed) - Antud seadmete arv RAID grupi ja pildi peal on see 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Total Devices&#039;&#039;&amp;lt;/b&amp;gt;(Kokku seadmeid) - Kokku arv seadmeid RAID massiivis, mis on antud olukorras 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Active Devices&#039;&#039;&amp;lt;/b&amp;gt;(Aktiivsed seadmed) - Arv aktiivseid seadmeid, mis on pildi peal näha 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Working Devices&#039;&#039;&amp;lt;/b&amp;gt;(Töötavad seadmed) - Arv töötavaid seadmeid massiivis, mida on 2. &lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Failed Devices&#039;&#039;&amp;lt;/b&amp;gt;(Kukkunud seadmeid) - Arv kukkunud seadmeid, mis on meie puhul 0.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Spare Devices&#039;&#039;&amp;lt;/b&amp;gt;(Vabu seadmeid) - Arv vabu seadmeid, mida kasutab massiiv, mis on antud hetkel 0.&lt;br /&gt;
&lt;br /&gt;
Käsule &#039;&#039;mdadm&#039;&#039; on olemas valik &amp;quot;-mail [address]&amp;quot;, mis lubab sul lisada emaili aadress, siis kui on toimumas midagi, siis saadetakse email siht aadressile. Järgmised käsud on vabalt valitavad: &lt;br /&gt;
&lt;br /&gt;
    &#039;&#039;-program&#039;&#039;: Lubab lisada programm ja mida jooksutatakse, millal iganes on intsident leitud. &lt;br /&gt;
    &lt;br /&gt;
    &#039;&#039;-syslog&#039;&#039;: See käsk lubab raporteerida kõik süsteemis olevad vead syslogi.&lt;br /&gt;
&lt;br /&gt;
Lisaks võib informatsiooni saada faili väljundist /proc/mdstat&lt;br /&gt;
&lt;br /&gt;
Liigume käsuga &#039;&#039;&amp;quot;cat&amp;quot;&#039;&#039; faili väljundisse /proc/mdstat. &amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid12.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/2/ /proc/mdstat väljund]&lt;br /&gt;
&lt;br /&gt;
Väljund näitab aktiivseid seadmeid. &#039;&#039;RAID 1&#039;&#039; ütleb, milline seade on primaarne seade. Vaadata tuleb kõige &#039;&#039;madalamat&#039;&#039; numbrit, mis on antud massiivi seadmetes antud.&amp;lt;br /&amp;gt; Antud olukorras on sdb1 sellepärast, et ta on märgistatud &amp;quot;[0]&amp;quot;. Järgmine rida allpool sisaldab numbri blokke, mis näitab iga seadme staatust.&amp;lt;br /&amp;gt; Antud olukorras on andmete sektsioon näidatud &amp;quot;[UU]&amp;quot;. Esimene &amp;quot;U&amp;quot; vasakul annab teada esimesest seadmest(sdc1) ja teine &amp;quot;U&amp;quot; parempool on seade (/dev/sdb1). &amp;lt;br /&amp;gt;&amp;quot;U&amp;quot; tähendab, et seade on üleval ja töötab.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vaadates /proc/mdstat, siis võib otsekohe öelda, kas seade on kukkunud, siis peaks kasutaja nägema sellist märki &amp;quot;_&amp;quot;, &amp;quot;U&amp;quot; asemel.&lt;br /&gt;
&lt;br /&gt;
=Raudvara RAID=&lt;br /&gt;
&lt;br /&gt;
Raudvara baasil ehitatud süsteemid mangeerivad RAID-i alamsüsteeme iseseisvalt ilma hostita ja esitab hostile ainult üksikut ketast RAID massiivile.&lt;br /&gt;
&lt;br /&gt;
Raudvara RAID seade on selline seade, mis ühendatakse SCSI kontrollerile ja esitatakse RAID massiive üksiku SCSI kettale. &lt;br /&gt;
Väline RAID süsteem liigutab kõiki RAID tarkust töödeldes kontrollerisse, mis asub väljaspool ketta alamsüsteemi. Terve alamsüsteem on ühendatud hostile ja läbi normaalse SCSI kontrolleri ja esineb hostile üksiku kettana.&lt;br /&gt;
&lt;br /&gt;
RAID-i kontrollerid toodetakse tüüpilises kaardi formaadis nagu SCSI kontrollerid operatsiooni süsteemidele aga tegelikuses käsitlevad kõigi ketaste suhtlemist iseendaga. &amp;lt;br /&amp;gt;Sellistes olukordades tuleks paigaldada kettad RAID kontrolleritesse nagu paigaldaks SCSI kontrollerit aga, siis tuleks neid lisada RAID kontrolleri konfiguratsioonidesse ja operatsioonisüsteem ei teeks neile vahet.&lt;br /&gt;
&lt;br /&gt;
==Raudvara RAID tootjad==&lt;br /&gt;
&lt;br /&gt;
Mõned Raudvara RAID-i tootjad:&lt;br /&gt;
&lt;br /&gt;
[http://www.3ware.com/3ware_home.htm 3ware]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.hds.com/ Hitachi Data Systems]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.synetic.net/ Synetic Inc]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Eestist saadavad RAID tehnoloogiad:&lt;br /&gt;
&lt;br /&gt;
[http://www.asbis.ee/ Asbis]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.tigma.ee/ Tigma]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Terve hulk erinevaid tootjaid leiad sellelt lehelt [http://www.dmoz.org/Computers/Hardware/Storage/Subsystems/RAID/ RAID Stuff]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Kasulikud lingid=&lt;br /&gt;
&lt;br /&gt;
[http://wiki.archlinux.org/index.php/Installing_with_Software_RAID_or_LVM Installing with Software RAID or LVM]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/s1-raid-approaches.html RAID Approaches]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linux-mag.com/id/7475/2/ Linux Software RAID - A Belt and a Pair of Suspenders]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linuxhomenetworking.com/wiki/index.php/Quick_HOWTO_:_Ch26_:_Linux_Software_RAID Quick HOWTO : Linux Software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.cyberciti.biz/tips/raid-hardware-vs-raid-software.html Software RAID vs Hardware RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://blog.taragana.com/index.php/archive/which-one-is-better-software-raid-or-hardware-raid/ Which one is better Hardware RAID or Software RAID?]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linux.com/news/hardware/servers/8222-benchmarking-hardware-raid-vs-linux-kernel-software-raid Benchmarking Hardware RAID vs Linux Kernel software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://en.gentoo-wiki.com/wiki/RAID/Software Software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.howtoforge.com/replacing_hard_disks_in_a_raid1_array Replacing A Failed Hard Drive In A Software RAID1 Array]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://linux.yyz.us/why-software-raid.html Linux: Why software RAID?]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://linas.org/linux/raid.html RAID and Data Storage Protection Solutions for Linux]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://slacksite.com/slackware/raid.html Building a Software RAID System in Slackware]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Tarkvaraline_RAID_Ubuntus&amp;diff=9001</id>
		<title>Tarkvaraline RAID Ubuntus</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Tarkvaraline_RAID_Ubuntus&amp;diff=9001"/>
		<updated>2010-05-07T07:26:12Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Tarkvara RAID */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
On olemas kaks võimalust, kuidas läheneda RAID-le: Raudvara RAID ja Tarkvara RAID.&lt;br /&gt;
Tarkvara RAID on sisse ehitatud Linuxi kernelisse ja seega võib kasutaja mõelda kui kasulik võib olla osta harjumuspäraseid kontrollereid, mis omavad sisse ehitatud RAID võimalusi.&lt;br /&gt;
Teised kasutajad leiavad, et mõtekam on osta harjumusest RAID süsteeme, mis on eelnevalt konfigureeritud. Võimalus kasutada tarkvara(kerneli-baasil) või raudvara(kontrolleri-baasil) RAID lahendusi, mis võivad osutuda keerulisteks. &lt;br /&gt;
&lt;br /&gt;
==Autor== &lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=Tarkvara RAID=&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; tähendab, et üks massiiv on manageeritud kerneli poolt kui spetsiaalse raudvara &#039;&#039;RAID-ga&#039;&#039;. Kernel organiseerib kõik andmed paljudel ketastel samal ajal jookseb ainult üks virtuaalne seade rakendustel. Tarkvara RAID implementeerib erinevaid &#039;&#039;RAID&#039;&#039; tasemeid kerneli ketta (blokk seadme) koodil. Tarkvara &#039;&#039;RAID&#039;&#039; töötab odavamate IDE ketastel samamoodi nagu &#039;&#039;SCSI&#039;&#039; ketaste peal. Tänapäeva kiired protsessorid lubavad oma jõudlusel ületada Raudvara &#039;&#039;RAIDI&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;MD&#039;&#039; draiver Linuxi Kernelis on näide ühest &#039;&#039;RAID&#039;&#039; lahendusest, mis ei sõltu raudvarast. Tarkvara baasil massiivi jõudlus sõltub serveri protsessori jõudlusest ja laadimisest. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Peamised punktid, mida pakub tarkvara &#039;&#039;RAID&#039;&#039;:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
1. Threadi taasehitatav protsessi&amp;lt;br /&amp;gt;&lt;br /&gt;
2. Massiivide teiseldavus Linuxi masinate vahel ilma rekonstrueerimiseta&amp;lt;br /&amp;gt;&lt;br /&gt;
3. Tagaplaani massiivi rekonstruktsioon kasutades süsteemi ressursse&amp;lt;br /&amp;gt;&lt;br /&gt;
4. &#039;&#039;Hot swapping&#039;&#039; ketta toetus&amp;lt;br /&amp;gt;&lt;br /&gt;
5. Automaatne &#039;&#039;CPU&#039;&#039; avastamine, et oleks eelistus teatud protsessori optimeerimisest&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tarkvara RAIDI installeerimine kasutades GUI==&lt;br /&gt;
Tarkvara &#039;&#039;RAID&#039;&#039; võibolla konfigureeritud Red Hat Linuxi installeerimise ajal. Selles peatükis räägime, kuidas konfigureerida tarkvara &#039;&#039;RAIDI&#039;&#039; installeerimise ajal kasutades &#039;&#039;Disk Druid&#039;&#039; kasutajaliidest. &amp;lt;br /&amp;gt;&lt;br /&gt;
Kasutades versiooni: &amp;lt;b&amp;gt;Red Hat Linx 9&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Enne &#039;&#039;RAID&#039;&#039; kettaseadme loomist peab ennem looma &#039;&#039;RAID&#039;&#039; partitsioonid, kasutades järgmist samm-haaval juhendit:&amp;lt;br /&amp;gt;&lt;br /&gt;
1.Ketta partitsioneerimise häälestuse juures tuleb valida:&amp;lt;b&amp;gt;Manually partition with Disk Druid.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.&amp;lt;b&amp;gt;&#039;&#039;Disk Druid&#039;&#039;&amp;lt;/b&amp;gt; ekraanil tuleks valida: New to create a new partition.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.Edasi ei ole enam võimalik anda monteerimise punkti(Seda on võimalik teha siis, kui on loodud &#039;&#039;RAID&#039;&#039; seade). &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4.Järgmisena tuleks valida &#039;&#039;software RAID&#039;&#039; failisüsteemi tüübiks&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid-edit.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit: [http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-edit.png RAID partitsioon]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5.&amp;lt;b&amp;gt;&#039;&#039;Allowable Drives&#039;&#039;&amp;lt;/b&amp;gt; alt tuleks valida kettad mille peale luuakse &#039;&#039;RAID&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui arvuti või kettaseadme administraatoril on mitu ketast, siis kõik olemas olevad kettad võetakse arvesse süsteemi poolt ja need märgistatakse linnukesega ära.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tuleks ära võtta linnukesed nendelt ketastelt, kus ei looda &#039;&#039;RAID&#039;&#039; massiivi.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
6.Järgmisena tuleks sisestada ketta partitsioooni sobiv suurus.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
7.Valige &amp;lt;b&amp;gt;&#039;&#039;Fixed size&#039;&#039;&amp;lt;/b&amp;gt;, et luua spetsiifilse suurusega ketta partitsioon,valige &#039;&#039;Fill all space up to (MB)&#039;&#039; ja sisestage suurus &#039;&#039;MB-s&#039;&#039;, et anda partitsiooni suurus või&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;F&#039;&#039;ill to maximum allowable size&#039;&#039;&amp;lt;/b&amp;gt;, et kõik vabad olevad partitsiooni suurused täidetakse kõvakettal.&amp;lt;br /&amp;gt; &lt;br /&gt;
Kui administraator või kasutaja teevad rohkem kui ühe partitsiooni, siis jagatakse vaba ruum ketta peal.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
8.Valige &amp;lt;b&amp;gt;&#039;&#039;Force to be a primary partition&#039;&#039;&amp;lt;/b&amp;gt;, et partitsioon peaks olema &#039;&#039;primary partition&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
9.Valige &amp;lt;b&amp;gt;&#039;&#039;Check for bad blocks&#039;&#039;&amp;lt;/b&amp;gt; kui kasutaja soovib, et installeerimise käigus kontrollitakse vigaseid blokke kõvakettal enne formateerimist.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
10.Vajutage &amp;lt;b&amp;gt;&#039;&#039;OK&#039;&#039;&amp;lt;/b&amp;gt;, et naaseda peamenüüsse.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Korrake need sammud kõik uuesti läbi, et luua nii palju partitsioone kui vajalik.&amp;lt;br /&amp;gt;&lt;br /&gt;
Ketaste partitsioneerimisel on võimalus luua teisi ketta tüüpe peale &#039;&#039;RAIDI&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
1.Valige &#039;&#039;RAID&#039;&#039; nupp &amp;lt;b&amp;gt;&#039;&#039;Disk Druidi&#039;&#039;&amp;lt;/b&amp;gt; häälestus paneelil.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.Järgmisena ilmub pilt, kus kasutaja loob omale &#039;&#039;RAID&#039;&#039; seadme.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid-config.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-config.png RAID seadmed]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.Sisestage installeerimise koht.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4.Valige failisüsteemi tüüp partitsiooni jaoks.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5.Valige seadme nimi nagu näiteks md0 &#039;&#039;RAID&#039;&#039; seadmele.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
6.Valige oma &#039;&#039;RAID&#039;&#039; tase. Valida võib &#039;&#039;RAID 0&#039;&#039;, &#039;&#039;RAID 1&#039;&#039; ja &#039;&#039;RAID 5&#039;&#039; hulgas.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
NB!&lt;br /&gt;
&#039;&#039;RAID&#039;&#039; partitsiooni loomisel tuleks tähelepanna &amp;quot;/boot&amp;quot; partitsioon. Selle partitsooni puhul on vaja valida &#039;&#039;RAID&#039;&#039; tase 1, &lt;br /&gt;
ja see peab kasutama ühte kahest kettaseadmest(&#039;&#039;IDE&#039;&#039; esimeseks, &#039;&#039;SCSI&#039;&#039; teiseks). &lt;br /&gt;
Kui kasutaja ei loo &#039;&#039;RAID&#039;&#039; partitsiooni &amp;quot;/boot&amp;quot; tüüpi, siis kasutaja loob &amp;quot;/&amp;quot; partitsiooni tüüpi. See on &#039;&#039;RAID&#039;&#039; tase 1 &lt;br /&gt;
ja kasutusel peab olema järgmised kaks esimest ketast(&#039;&#039;IDE&#039;&#039; esimene, &#039;&#039;SCSI&#039;&#039; teiseks)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
7.Järgmised &#039;&#039;RAID&#039;&#039; partitsioonid, mida kasutaja lõi, ilmnevad &#039;&#039;RAID&#039;&#039; kasutajate loetelus. Valige milline partitsioon nendest&amp;lt;br /&amp;gt;&lt;br /&gt;
partitsioonidest peab olema kasutatud, et luua &#039;&#039;RAID&#039;&#039; seade.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
8.Kui konfigureerida &#039;&#039;RAID 1&#039;&#039; või &#039;&#039;RAID 5&#039;&#039;, siis tuleks täpsustada vabade partitsioonide arvu. Kui tarkvara &#039;&#039;RAIDI&#039;&#039; partitsioon peaks&lt;br /&gt;
kukkuma, siis vaba partitsioonid võetakse automaatselt kasutusele asendus ketastena. Igale vabale partitsioonile tuleks luua lisa&lt;br /&gt;
tarkvara &#039;&#039;RAID&#039;&#039; partitsioon. Eelmisel sammul, valige partitsioonid &#039;&#039;RAID&#039;&#039; seadmetele ja vabadele partitsioonidele. &lt;br /&gt;
&lt;br /&gt;
9.Peale vajutades OK, &#039;&#039;RAID&#039;&#039; tase ilmub &amp;lt;b&amp;gt;Drive Summary&amp;lt;/b&amp;gt; loetellu. Peale seda võib jätkata instaleerimis protsessiga.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Lisa küsimuste tekkimiseks tuleks vaadata &#039;&#039;Red Hat Linux instructions Guid&#039;&#039;.&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid-dd.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-dd.png RAID on loodud]&lt;br /&gt;
&lt;br /&gt;
10.&#039;&#039;RAIDI&#039;&#039; massiiv on loodud.&lt;br /&gt;
&lt;br /&gt;
==Tarkvara RAIDI installeerimine kasutades kernelit ja mdadm==&lt;br /&gt;
&lt;br /&gt;
Haldades &#039;&#039;md&#039;&#039; gruppe võib olla väga keeruline ja raske. See nõuab failide redigeerimist, kus igasugune vea tegemine võib tekitada &#039;&#039;RAID&#039;&#039; gruppide kadumist. &amp;lt;br /&amp;gt;Kasutaja peab olema selle juures ettevaatlik.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Mdadm&#039;&#039; tööriist on suur ja omab erinevaid funktsioone: &lt;br /&gt;
&lt;br /&gt;
    1.&amp;lt;b&amp;gt;&#039;&#039;Assemble&#039;&#039;&amp;lt;/b&amp;gt;(Koostama): Koostab eelnevatelt loodud massiivi komponentidelt, aktiivsesse massiivi. &lt;br /&gt;
    2.&amp;lt;b&amp;gt;&#039;&#039;Build&#039;&#039;&amp;lt;/b&amp;gt;(Ehitama): Ehitada massiiv, mis igal seadmel teeb superbloki. &lt;br /&gt;
    3.&amp;lt;b&amp;gt;&#039;&#039;Create&#039;&#039;&amp;lt;/b&amp;gt;(Looma): Luua uus &#039;&#039;RAID&#039;&#039; massiiv koos superblokiga igale seadmele.&lt;br /&gt;
    4.&amp;lt;b&amp;gt;&#039;&#039;Monitor&#039;&#039;&amp;lt;/b&amp;gt;(Monitoorimine): On võimalus monitoorida ühte või mitut md seadet, mis toimib erinevatel seadmetel.&lt;br /&gt;
    5.&amp;lt;b&amp;gt;&#039;&#039;Grow&#039;&#039;&amp;lt;/b&amp;gt;(Kasvatama): Muudab suurust (kasvamise või kahanemise) või ümberkujundada md seadme. &lt;br /&gt;
    See lubab lisada  seadmeid, nii nagu vaja läheb. &lt;br /&gt;
    6.&amp;lt;b&amp;gt;&#039;&#039;Incremental Assembly&#039;&#039;&amp;lt;/b&amp;gt;(Suurendamise blokk): Lisage üksik seade massiivile.&lt;br /&gt;
    7.&amp;lt;b&amp;gt;&#039;&#039;Manage&#039;&#039;&amp;lt;/b&amp;gt;(Manageerimine): See funktsioon lubab manageerida spetsiifilisi &#039;&#039;RAID&#039;&#039; massiivi komponente&lt;br /&gt;
    nagu lisades uusi vabu seadmeid või eemaldades vigaseid seadmeid.  &lt;br /&gt;
    8.&amp;lt;b&amp;gt;&#039;&#039;Misc&#039;&#039;&amp;lt;/b&amp;gt;(Mitmesugusus): See on funktsioon, mis sisaldab kõiki teisi funktsioone, mida läheb vaja. &lt;br /&gt;
    9.&amp;lt;b&amp;gt;&#039;&#039;Auto-detect&#039;&#039;&amp;lt;/b&amp;gt;(Automaatne leiduvus): Sellel funktsioonil on võimalus leida aktiivseid kerneleid.&lt;br /&gt;
&lt;br /&gt;
Operatsioonisüsteem &#039;&#039;CentOS 5.3&#039;&#039; kasutati järgmisel süsteemil: &lt;br /&gt;
&lt;br /&gt;
     1.Emaplaat: GigaByte MAA78GM-US2H &lt;br /&gt;
     2.Protsessor: AMD Phenom II X4 920 &lt;br /&gt;
     3.Mälu: 8GB &lt;br /&gt;
     4.Kernel: Linux 2.6.30 &lt;br /&gt;
     5.Opsüsteem ja üles laadimise ketas on IBM DTLA-307020 (20GB ketas on Ulta ATA/100 peal)&lt;br /&gt;
     6./home on  Seagate ST1360827AS&lt;br /&gt;
     7.Testimiseks on kasutusel kaks ketast: Seagate ST3500641AS-RK koos 16 MB cachega. Seal on /dev/sdb ja /dev/sdb. &amp;lt;br /&amp;gt;&lt;br /&gt;
     &amp;lt;b&amp;gt;&#039;&#039;RAID 1&#039;&#039; on loodud /dev/sdb ja /dev/sdc ketaste vahel!&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==ID ketaste paigaldamine==&lt;br /&gt;
Et luua &#039;&#039;RAID 1&#039;&#039; grupp on vaja alguses määrata ketaste &#039;&#039;ID&#039;&#039;, mis on üks &#039;&#039;RAID&#039;&#039; gruppide osa. Selle tüübi nimetus on &#039;&#039;&amp;quot;fd&amp;quot;&#039;&#039; (Linuxi automaatne tuvastamine) ja seda on vaja paigutada kõikidele partitsioonidele ja/või ketastele, mis kasutavad &#039;&#039;RAID&#039;&#039; gruppe. &lt;br /&gt;
Kasutajal on võimalus kergelt kontrollida partitsiooni tüüpe: &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid1.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ Partitsiooni tüübid]&lt;br /&gt;
&lt;br /&gt;
==Loome RAID, mis kasutab mdadm==&lt;br /&gt;
Tööriist &#039;&#039;mdadm&#039;&#039; lubab kergelt luua &#039;&#039;RAID&#039;&#039; grupi. Selles näiteks luuakse kahe kettaga &#039;&#039;RAID-1&#039;&#039; grupp.&lt;br /&gt;
[[Image:Raid2.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ mdadm tööriist]&lt;br /&gt;
&lt;br /&gt;
Valikud mida kuvatakse ekraanile on kergelt arusaadavad. Esimene valik on &amp;quot;-create&amp;quot; sellega saab luua &#039;&#039;RAID&#039;&#039; grupp. &lt;br /&gt;
Peale &amp;quot;-verbose&amp;quot; valikut on &#039;&#039;md&#039;&#039; seade ja selle all mõeldakse /dev/md0. Peale seda on &#039;&#039;RAID&#039;&#039; tase (&amp;quot;-level&amp;quot;) - selle all mõeldakse &#039;&#039;RAID 1&#039;&#039;. Lõpuks on &#039;&#039;RAID&#039;&#039; seadmed spetsifitseeritud kasutades &amp;quot;-raid-devices&amp;quot; valikut. &amp;lt;br /&amp;gt;Ekraani peal on näha, kas kasutajal on failisüsteem ketta partitsiooni peal. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;RAID&#039;&#039; töötab blokk tasemel. Seega on see &#039;&#039;RAID&#039;&#039; kontroller. Olgu see tarkvara &#039;&#039;RAID&#039;&#039; või Raudvara &#039;&#039;RAID&#039;&#039;, see töötab &#039;&#039;RAID&#039;&#039; grupi seadmete blokkidel. &amp;lt;br /&amp;gt;See tähendab, et ta on failisüsteemist eraldatud. Järelikult kohe kui &#039;&#039;RAID 1&#039;&#039; grupp on loodud, siis on kettad sünkroniseeritud. &amp;lt;br /&amp;gt;Esimese partitsiooni blokid on kopeeritud teise partitsiooni kettale.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid3.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ Aktiivsed RAID1]&lt;br /&gt;
&lt;br /&gt;
Pange tähele, et sünkroniseerimise protsess leiab aset &amp;quot;cat-misel&amp;quot; faili sisu on /proc/mdstat.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid4.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid5.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid6.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pildid on pärit:[http://www.linux-mag.com/id/7475/1/ Sünkroniseerimise protsess]&lt;br /&gt;
&lt;br /&gt;
Peale sünkroniseerimise lõpetamist, peaks pilt järgnevalt välja nägema:&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid7.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pildid on pärit:[http://www.linux-mag.com/id/7475/1/ &#039;&#039;RAID&#039;&#039; sünkroniseerimise protsessi lõpp]&lt;br /&gt;
&lt;br /&gt;
Nii kaugele jõudes saab failisüsteem luua md seadmele &lt;br /&gt;
&lt;br /&gt;
[[Image:Raid8.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ failisüsteemi output]&lt;br /&gt;
&lt;br /&gt;
Järgmisena võib hakata paigaldama failisüsteem. Näiteks: Järgnev rida oli lisatud /etc/fstab:&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid9.jpg]]&lt;br /&gt;
&lt;br /&gt;
Süsteem on paigaldatud kasutades &amp;quot;mount -a&amp;quot; (Eeldades, et paigaldatud asukoht eksisteerib).&lt;br /&gt;
&lt;br /&gt;
Et olla kindel, et failisüsteem on paigaldatud, tuleks kontrollida failisüsteem üle:&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid10.jpg]]&lt;br /&gt;
&lt;br /&gt;
==RAID grupi monitoorimine==&lt;br /&gt;
Siis kui &#039;&#039;RAID&#039;&#039; grupp on püsti ja failisüsteem on loodud, järgmine samm oleks monitoorida massiiv. &amp;lt;br /&amp;gt;Seal on mõningaid juppe, mida saab monitoorida massiivis. Lisaks tuleks arusaada massiivi detailidest.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid11.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/2/ loodud failisüsteem]&lt;br /&gt;
&lt;br /&gt;
Väljundis on näha kui palju seadmeid on &#039;&#039;RAID&#039;&#039; massiivis kui paljud seadmed on kukkunud ja kui paljudel seadmetel on märgistatud lisa ruumi.&lt;br /&gt;
&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Raid Level&#039;&#039;&amp;lt;/b&amp;gt;(RAID tase) - Meie olukorras on &amp;quot;raid1&amp;quot;In this case it is “raid1″&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Array Size&#039;&#039;&amp;lt;/b&amp;gt;(Massiivi suurus) - RAID massiivi suurus, mis antud olukorras on 465.76GiB.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Raid Devices&#039;&#039;&amp;lt;/b&amp;gt;(RAID seadmed) - Antud seadmete arv RAID grupi ja pildi peal on see 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Total Devices&#039;&#039;&amp;lt;/b&amp;gt;(Kokku seadmeid) - Kokku arv seadmeid RAID massiivis, mis on antud olukorras 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Active Devices&#039;&#039;&amp;lt;/b&amp;gt;(Aktiivsed seadmed) - Arv aktiivseid seadmeid, mis on pildi peal näha 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Working Devices&#039;&#039;&amp;lt;/b&amp;gt;(Töötavad seadmed) - Arv töötavaid seadmeid massiivis, mida on 2. &lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Failed Devices&#039;&#039;&amp;lt;/b&amp;gt;(Kukkunud seadmeid) - Arv kukkunud seadmeid, mis on meie puhul 0.&lt;br /&gt;
#&amp;lt;b&amp;gt;&#039;&#039;Spare Devices&#039;&#039;&amp;lt;/b&amp;gt;(Vabu seadmeid) - Arv vabu seadmeid, mida kasutab massiiv, mis on antud hetkel 0.&lt;br /&gt;
&lt;br /&gt;
Käsule &#039;&#039;mdadm&#039;&#039; on olemas valik &amp;quot;-mail [address]&amp;quot;, mis lubab sul lisada emaili aadress, siis kui on toimumas midagi, siis saadetakse email siht aadressile. Järgmised käsud on vabalt valitavad: &lt;br /&gt;
&lt;br /&gt;
    &#039;&#039;-program&#039;&#039;: Lubab lisada programm ja mida jooksutatakse, millal iganes on intsident leitud. &lt;br /&gt;
    &lt;br /&gt;
    &#039;&#039;-syslog&#039;&#039;: See käsk lubab raporteerida kõik süsteemis olevad vead syslogi.&lt;br /&gt;
&lt;br /&gt;
Lisaks võib informatsiooni saada faili väljundist /proc/mdstat&lt;br /&gt;
&lt;br /&gt;
Liigume käsuga &#039;&#039;&amp;quot;cat&amp;quot;&#039;&#039; faili väljundisse /proc/mdstat. &amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid12.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/2/ /proc/mdstat väljund]&lt;br /&gt;
&lt;br /&gt;
Väljund näitab aktiivseid seadmeid. &#039;&#039;RAID 1&#039;&#039; ütleb, milline seade on primaarne seade. Vaadata tuleb kõige &#039;&#039;madalamat&#039;&#039; numbrit, mis on antud massiivi seadmetes antud.&amp;lt;br /&amp;gt; Antud olukorras on sdb1 sellepärast, et ta on märgistatud &amp;quot;[0]&amp;quot;. Järgmine rida allpool sisaldab numbri blokke, mis näitab iga seadme staatust.&amp;lt;br /&amp;gt; Antud olukorras on andmete sektsioon näidatud &amp;quot;[UU]&amp;quot;. Esimene &amp;quot;U&amp;quot; vasakul annab teada esimesest seadmest(sdc1) ja teine &amp;quot;U&amp;quot; parempool on seade (/dev/sdb1). &amp;lt;br /&amp;gt;&amp;quot;U&amp;quot; tähendab, et seade on üleval ja töötab.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vaadates /proc/mdstat, siis võib otsekohe öelda, kas seade on kukkunud, siis peaks kasutaja nägema sellist märki &amp;quot;_&amp;quot;, &amp;quot;U&amp;quot; asemel.&lt;br /&gt;
&lt;br /&gt;
=Raudvara RAID=&lt;br /&gt;
&lt;br /&gt;
Raudvara baasil ehitatud süsteemid mangeerivad RAID-i alamsüsteeme iseseisvalt ilma hostita ja esitab hostile ainult üksikut ketast RAID massiivile.&lt;br /&gt;
&lt;br /&gt;
Raudvara RAID seade on selline seade, mis ühendatakse SCSI kontrollerile ja esitatakse RAID massiive üksiku SCSI kettale. &lt;br /&gt;
Väline RAID süsteem liigutab kõiki RAID tarkust töödeldes kontrollerisse, mis asub väljaspool ketta alamsüsteemi. Terve alamsüsteem on ühendatud hostile ja läbi normaalse SCSI kontrolleri ja esineb hostile üksiku kettana.&lt;br /&gt;
&lt;br /&gt;
RAID-i kontrollerid toodetakse tüüpilises kaardi formaadis nagu SCSI kontrollerid operatsiooni süsteemidele aga tegelikuses käsitlevad kõigi ketaste suhtlemist iseendaga. &amp;lt;br /&amp;gt;Sellistes olukordades tuleks paigaldada kettad RAID kontrolleritesse nagu paigaldaks SCSI kontrollerit aga, siis tuleks neid lisada RAID kontrolleri konfiguratsioonidesse ja operatsioonisüsteem ei teeks neile vahet.&lt;br /&gt;
&lt;br /&gt;
==Raudvara RAID tootjad==&lt;br /&gt;
&lt;br /&gt;
Mõned Raudvara RAID-i tootjad:&lt;br /&gt;
&lt;br /&gt;
[http://www.3ware.com/3ware_home.htm 3ware]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.hds.com/ Hitachi Data Systems]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.synetic.net/ Synetic Inc]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Eestist saadavad RAID tehnoloogiad:&lt;br /&gt;
&lt;br /&gt;
[http://www.asbis.ee/ Asbis]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.tigma.ee/ Tigma]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Terve hulk erinevaid tootjaid leiad sellelt lehelt [http://www.dmoz.org/Computers/Hardware/Storage/Subsystems/RAID/ RAID Stuff]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Kasulikud lingid=&lt;br /&gt;
&lt;br /&gt;
[http://wiki.archlinux.org/index.php/Installing_with_Software_RAID_or_LVM Installing with Software RAID or LVM]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/s1-raid-approaches.html RAID Approaches]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linux-mag.com/id/7475/2/ Linux Software RAID - A Belt and a Pair of Suspenders]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linuxhomenetworking.com/wiki/index.php/Quick_HOWTO_:_Ch26_:_Linux_Software_RAID Quick HOWTO : Linux Software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.cyberciti.biz/tips/raid-hardware-vs-raid-software.html Software RAID vs Hardware RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://blog.taragana.com/index.php/archive/which-one-is-better-software-raid-or-hardware-raid/ Which one is better Hardware RAID or Software RAID?]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linux.com/news/hardware/servers/8222-benchmarking-hardware-raid-vs-linux-kernel-software-raid Benchmarking Hardware RAID vs Linux Kernel software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://en.gentoo-wiki.com/wiki/RAID/Software Software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.howtoforge.com/replacing_hard_disks_in_a_raid1_array Replacing A Failed Hard Drive In A Software RAID1 Array]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://linux.yyz.us/why-software-raid.html Linux: Why software RAID?]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://linas.org/linux/raid.html RAID and Data Storage Protection Solutions for Linux]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://slacksite.com/slackware/raid.html Building a Software RAID System in Slackware]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Tarkvaraline_RAID_Ubuntus&amp;diff=8980</id>
		<title>Tarkvaraline RAID Ubuntus</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Tarkvaraline_RAID_Ubuntus&amp;diff=8980"/>
		<updated>2010-05-07T07:03:02Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Sissejuhatus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
On olemas kaks võimalust, kuidas läheneda RAID-le: Raudvara RAID ja Tarkvara RAID.&lt;br /&gt;
Tarkvara RAID on sisse ehitatud Linuxi kernelisse ja seega võib kasutaja mõelda kui kasulik võib olla osta harjumuspäraseid kontrollereid, mis omavad sisse ehitatud RAID võimalusi.&lt;br /&gt;
Teised kasutajad leiavad, et mõtekam on osta harjumusest RAID süsteeme, mis on eelnevalt konfigureeritud. Võimalus kasutada tarkvara(kerneli-baasil) või raudvara(kontrolleri-baasil) RAID lahendusi, mis võivad osutuda keerulisteks. &lt;br /&gt;
&lt;br /&gt;
==Autor== &lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=Tarkvara RAID=&lt;br /&gt;
Tarkvara RAID tähendab, et üks massiiv on manageeritud kerneli poolt kui spetsiaalse raudvara RAID-ga. Kernel organiseerib kõik andmed paljudel ketastel kui samal ajal jookseb ainult üks virtuaalne seade rakendustel. Tarkvara RAID implementeerib erinevaid RAID tasemeid kerneli ketta (blokk seadme) koodil. Tarkvara RAID töötab odavamate IDE ketastel samamoodi nagu SCSI ketaste peal. Tänapäeva kiired protsessorid lubavad oma jõudlusel ületada Raudvara RAID-i. &lt;br /&gt;
&lt;br /&gt;
MD draiver Linuxi Kernelis on näide ühest RAID lahendusest, mis ei sõltu raudvarast. Tarkvara baasil massiivi jõudlus sõltub serveri protsessori jõudlusest ja laadimisest. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Peamised punktid, mida pakub tarkvara RAID:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
1. Threadi taasehitatav protsess&amp;lt;br /&amp;gt;&lt;br /&gt;
2. Massiivide teiseldavus Linuxi masinate vahel ilma rekonstrueerimiseta&amp;lt;br /&amp;gt;&lt;br /&gt;
3. Tagaplaani massiivi rekonstruktsioon kasutades süsteemi ressursse&amp;lt;br /&amp;gt;&lt;br /&gt;
4. Hot swapping ketta toetus&amp;lt;br /&amp;gt;&lt;br /&gt;
5. Automaatne CPU avastamine, et oleks eelistus teatud protsessori optimeerimisest&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tarkvara RAIDI installeerimine kasutades GUI==&lt;br /&gt;
Tarkvara RAID võibolla konfigureeritud Red Hat Linuxi installeerimise ajal. Selles peatükis räägime, kuidas konfigureerida tarkvara RAID-i installeerimise ajal kasutades Disk Druid kasutajaliidest. &amp;lt;br /&amp;gt;&lt;br /&gt;
Kasutades versiooni: &amp;lt;b&amp;gt;Red Hat Linx 9&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Enne RAID kettaseadme loomist peab ennem looma RAID partitsioonid, kasutades järgmist samm-haaval juhendit:&amp;lt;br /&amp;gt;&lt;br /&gt;
1.Ketta partitsioneerimise häälestuse juures tuleb valida:&amp;lt;b&amp;gt;Manually partition with Disk Druid.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.&amp;lt;b&amp;gt;Disk Druid&amp;lt;/b&amp;gt; ekraanil tuleks valida: New to create a new partition.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.Edasi ei ole enam võimalik anda monteerimise punkti(Seda on võimalik teha siis, kui on loodud RAID seade). &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4.Järgmisena tuleks valida software RAID failisüsteemi tüübiks&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid-edit.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit: [http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-edit.png RAID partitsioon]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5.&amp;lt;b&amp;gt;Allowable Drives&amp;lt;/b&amp;gt; alt tuleks valida kettad mille peale luuakse RAID.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui arvuti või kettaseadme administraatoril on mitu ketast, siis kõik olemas olevad kettad võetakse arvesse süsteemi poolt ja need märgistatakse linnukesega ära.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tuleks ära võtta linnukesed nendelt ketastelt, kus ei looda RAID massiivi.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
6.Järgmisena tuleks sisestada ketta partitsioooni sobiv suurus.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
7.Valige &amp;lt;b&amp;gt;Fixed size&amp;lt;/b&amp;gt;, et luua spetsiifilse suurusega ketta partitsioon,valige Fill all space up to (MB) ja sisestage suurus MB-s, et anda partitsiooni suurus või&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Fill to maximum allowable size&amp;lt;/b&amp;gt;, et kõik vabad olevad partitsiooni suurused täidetakse kõvakettal.&amp;lt;br /&amp;gt; &lt;br /&gt;
Kui administraator või kasutaja teevad rohkem kui ühe partitsiooni, siis jagatakse vaba ruum ketta peal.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
8.Valige &amp;lt;b&amp;gt;Force to be a primary partition&amp;lt;/b&amp;gt;, et partitsioon peaks olema primary partition.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
9.Valige &amp;lt;b&amp;gt;Check for bad blocks&amp;lt;/b&amp;gt; kui kasutaja soovib, et installeerimise käigus kontrollitakse vigaseid blokke kõvakettal enne formateerimist.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
10.Vajutage &amp;lt;b&amp;gt;OK&amp;lt;/b&amp;gt;, et naaseda peamenüüsse.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Korrake need sammud kõik uuesti läbi, et luua nii palju partitsioone kui vajalik.&amp;lt;br /&amp;gt;&lt;br /&gt;
Ketaste partitsioneerimisel on võimalus luua teisi ketta tüüpe peale RAIDI.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
1.Valige RAID nupp &amp;lt;b&amp;gt;Disk Druidi&amp;lt;/b&amp;gt; häälestus paneelil.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.Järgmisena ilmub pilt, kus kasutaja loob omale RAID seadme.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid-config.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-config.png RAID seadmed]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.Sisestage installeerimise koht.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4.Valige failisüsteemi tüüp partitsiooni jaoks.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5.Valige seadme nimi nagu näiteks md0 RAID seadmele.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
6.Valige oma RAID tase. Valida võib RAID 0, RAID 1 ja RAID 5 hulgas.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
NB!&lt;br /&gt;
RAID partitsiooni loomisel tuleks tähelepanna &amp;quot;/boot&amp;quot; partitsioon. Selle partitsooni puhul on vaja valida RAID tase 1, &lt;br /&gt;
ja see peab kasutama ühte kahest kettaseadmest(IDE esimeseks, SCSI teiseks). &lt;br /&gt;
Kui kasutaja ei loo RAID partitsiooni &amp;quot;/boot&amp;quot; tüüpi, siis kasutaja loob &amp;quot;/&amp;quot; partitsiooni tüüpi. See on RAID tase 1 &lt;br /&gt;
ja kasutusel peab olema järgmised kaks esimest ketast(IDE esimene, SCSI teiseks)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
7.Järgmised RAID partitsioonid, mida kasutaja lõi, ilmnevad RAID kasutajate loetelus. Valige milline partitsioon nendest&amp;lt;br /&amp;gt;&lt;br /&gt;
partitsioonidest peab olema kasutatud, et luua RAID seade.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
8.Kui konfigureerida RAID 1 või RAID 5, siis tuleks täpsustada vabade partitsioonide arvu. Kui tarkvara RAIDI partitsioon peaks&lt;br /&gt;
kukkuma, siis vaba partitsioonid võetakse automaatselt kasutusele asendus ketastena. Igale vabale partitsioonile tuleks luua lisa&lt;br /&gt;
tarkvara RAID partitsioon. Eelmisel sammul, valige partitsioonid RAID seadmetele ja vabadele partitsioonidele. &lt;br /&gt;
&lt;br /&gt;
9.Peale vajutades OK, RAID tase ilmub &amp;lt;b&amp;gt;Drive Summary&amp;lt;/b&amp;gt; loetellu. Peale seda võib jätkata instaleerimis protsessiga.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Lisa küsimuste tekkimiseks tuleks vaadata Red Hat Linux instructions Guid.&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid-dd.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-dd.png RAID on loodud]&lt;br /&gt;
&lt;br /&gt;
10.RAIDI massiiv on loodud.&lt;br /&gt;
&lt;br /&gt;
==Tarkvara RAIDI installeerimine kasutades kernelit ja mdadm==&lt;br /&gt;
&lt;br /&gt;
Haldades md gruppe võib olla väga keeruline ja raske. See nõuab failide redigeerimist, kus igasugune vea tegemine võib tekitada RAID gruppide kadumist. &amp;lt;br /&amp;gt;Kasutaja peab olema selle juures ettevaatlik.&lt;br /&gt;
&lt;br /&gt;
Mdadm tööriist on suur ja omab erinevaid funktsioone: &lt;br /&gt;
&lt;br /&gt;
    1.&amp;lt;b&amp;gt;Assemble&amp;lt;/b&amp;gt;(Koostama): Koostab eelnevatelt loodud massiivi komponentidelt, aktiivsesse massiivi. &lt;br /&gt;
    2.&amp;lt;b&amp;gt;Build&amp;lt;/b&amp;gt;(Ehitama): Ehitada massiiv, mis igal seadmel teeb superbloki. &lt;br /&gt;
    3.&amp;lt;b&amp;gt;Create&amp;lt;/b&amp;gt;(Looma): Luua uus RAID massiiv koos superblokiga igale seadmele.&lt;br /&gt;
    4.&amp;lt;b&amp;gt;Monitor&amp;lt;/b&amp;gt;(Monitoorimine): On võimalus monitoorida ühte või mitut md seadet, mis toimib erinevatel seadmetel.&lt;br /&gt;
    5.&amp;lt;b&amp;gt;Grow&amp;lt;/b&amp;gt;(Kasvatama): Muudab suurust (kasvamise või kahanemise) või ümberkujundada md seadme. &lt;br /&gt;
    See lubab lisada  seadmeid, nii nagu vaja läheb. &lt;br /&gt;
    6.&amp;lt;b&amp;gt;Incremental Assembly&amp;lt;/b&amp;gt;(Suurendamise blokk): Lisage üksik seade massiivile.&lt;br /&gt;
    7.&amp;lt;b&amp;gt;Manage&amp;lt;/b&amp;gt;(Manageerimine): See funktsioon lubab manageerida spetsiifilisi RAID massiivi komponente&lt;br /&gt;
    nagu lisades uusi vabu seadmeid või eemaldades vigaseid seadmeid.  &lt;br /&gt;
    8.&amp;lt;b&amp;gt;Misc&amp;lt;/b&amp;gt;(Mitmesugusus): See on funktsioon, mis sisaldab kõiki teisi funktsioone, mida läheb vaja. &lt;br /&gt;
    9.&amp;lt;b&amp;gt;Auto-detect&amp;lt;/b&amp;gt;(Automaatne leiduvus): Sellel funktsioonil on võimalus leida aktiivseid kerneleid.&lt;br /&gt;
&lt;br /&gt;
Operatsioonisüsteem CentOS 5.3 kasutati järgmisel süsteemil: &lt;br /&gt;
&lt;br /&gt;
     1.Emaplaat: GigaByte MAA78GM-US2H &lt;br /&gt;
     2.Protsessor: AMD Phenom II X4 920 &lt;br /&gt;
     3.Mälu: 8GB &lt;br /&gt;
     4.Kernel: Linux 2.6.30 &lt;br /&gt;
     5.Opsüsteem ja üles laadimise ketas on IBM DTLA-307020 (20GB ketas on Ulta ATA/100 peal)&lt;br /&gt;
     6./home on  Seagate ST1360827AS&lt;br /&gt;
     7.Testimiseks on kasutusel kaks ketast: Seagate ST3500641AS-RK koos 16 MB cachega. Seal on /dev/sdb ja /dev/sdb. &amp;lt;br /&amp;gt;&lt;br /&gt;
     &amp;lt;b&amp;gt;RAID-1 on loodud /dev/sdb ja /dev/sdc ketaste vahel!&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==ID ketaste paigaldamine==&lt;br /&gt;
Et luua RAID-1 grupp on vaja alguses määrata ketaste ID, mis on üks RAID gruppide osa. Selle tüübi nimetus on &amp;quot;fd&amp;quot; (Linuxi automaatne tuvastamine) ja seda on vaja paigutada kõikidele partitsioonidele ja/või ketastele, mis kasutavad RAID gruppe. &lt;br /&gt;
Kasutajal on võimalus kergelt kontrollida partitsiooni tüüpe: &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid1.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ Partitsiooni tüübid]&lt;br /&gt;
&lt;br /&gt;
==Loome RAID, mis kasutab mdadm==&lt;br /&gt;
Tööriist mdadm lubab kergelt luua RAID grupi. Selles näiteks luuakse kahe kettaga RAID-1 grupp.&lt;br /&gt;
[[Image:Raid2.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ mdadm tööriist]&lt;br /&gt;
&lt;br /&gt;
Valikud mida kuvatakse ekraanile on kergelt arusaadavad. Esimene valik on &amp;quot;-create&amp;quot; sellega saab luua RAID grupp. &lt;br /&gt;
Peale &amp;quot;-verbose&amp;quot; valikut on md seade ja selle all mõeldakse /dev/md0. Peale seda on RAID tase (&amp;quot;-level&amp;quot;) - selle all mõeldakse raid1. Lõpuks on RAID seadmed spetsifitseeritud kasutades &amp;quot;-raid-devices&amp;quot; valikut. &amp;lt;br /&amp;gt;Ekraani peal on näha, kas kasutajal on failisüsteem ketta partitsiooni peal. &lt;br /&gt;
&lt;br /&gt;
RAID töötab blokk tasemel. Seega on see RAID kontroller. Olgu see tarkvara RAID või Raudvara RAID, see töötab RAID grupi seadmete blokkidel. &amp;lt;br /&amp;gt;See tähendab, et ta on failisüsteemist eraldatud. Järelikult kohe kui RAID1 grupp on loodud, siis on kettad sünkroniseeritud. &amp;lt;br /&amp;gt;Esimese partitsiooni blokid on kopeeritud teise partitsiooni kettale.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid3.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ Aktiivsed RAID1]&lt;br /&gt;
&lt;br /&gt;
Pange tähele, et sünkroniseerimise protsess leiab aset &amp;quot;cat-misel&amp;quot; faili sisu on /proc/mdstat.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid4.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid5.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid6.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pildid on pärit:[http://www.linux-mag.com/id/7475/1/ Sünkroniseerimise protsess]&lt;br /&gt;
&lt;br /&gt;
Peale sünkroniseerimise lõpetamist, peaks pilt järgnevalt välja nägema:&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid7.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pildid on pärit:[http://www.linux-mag.com/id/7475/1/ RAID sünkroniseerimise protsessi lõpp]&lt;br /&gt;
&lt;br /&gt;
Nii kaugele jõudes saab failisüsteem luua md seadmele &lt;br /&gt;
&lt;br /&gt;
[[Image:Raid8.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ failisüsteemi output]&lt;br /&gt;
&lt;br /&gt;
Järgmisena võib hakata paigaldama failisüsteem. Näiteks: Järgnev rida oli lisatud /etc/fstab:&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid9.jpg]]&lt;br /&gt;
&lt;br /&gt;
Süsteem on paigaldatud kasutades &amp;quot;mount -a&amp;quot; (Eeldades, et paigaldatud asukoht eksisteerib).&lt;br /&gt;
&lt;br /&gt;
Et olla kindel, et failisüsteem on paigaldatud, tuleks kontrollida failisüsteem üle:&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid10.jpg]]&lt;br /&gt;
&lt;br /&gt;
==RAID grupi monitoorimine==&lt;br /&gt;
Siis kui RAID grupp on püsti ja failisüsteem on loodud, järgmine samm oleks monitoorida massiiv. &amp;lt;br /&amp;gt;Seal on mõningaid juppe, mida saab monitoorida massiivis. Lisaks tuleks arusaada massiivi detailidest.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid11.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/2/ loodud failisüsteem]&lt;br /&gt;
&lt;br /&gt;
Väljundis on näha kui palju seadmeid on RAID massiivis kui paljud seadmed on kukkunud ja kui paljudel seadmetel on märgistatud lisa ruumi.&lt;br /&gt;
&lt;br /&gt;
#&amp;lt;b&amp;gt;Raid Level&amp;lt;/b&amp;gt;(RAID tase) - Meie olukorras on &amp;quot;raid1&amp;quot;In this case it is “raid1″&lt;br /&gt;
#&amp;lt;b&amp;gt;Array Size&amp;lt;/b&amp;gt;(Massiivi suurus) - RAID massiivi suurus, mis antud olukorras on 465.76GiB.&lt;br /&gt;
#&amp;lt;b&amp;gt;Raid Devices&amp;lt;/b&amp;gt;(RAID seadmed) - Antud seadmete arv RAID grupi ja pildi peal on see 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;Total Devices&amp;lt;/b&amp;gt;(Kokku seadmeid) - Kokku arv seadmeid RAID massiivis, mis on antud olukorras 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;Active Devices&amp;lt;/b&amp;gt;(Aktiivsed seadmed) - Arv aktiivseid seadmeid, mis on pildi peal näha 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;Working Devices&amp;lt;/b&amp;gt;(Töötavad seadmed) - Arv töötavaid seadmeid massiivis, mida on 2. &lt;br /&gt;
#&amp;lt;b&amp;gt;Failed Devices&amp;lt;/b&amp;gt;(Kukkunud seadmeid) - Arv kukkunud seadmeid, mis on meie puhul 0.&lt;br /&gt;
#&amp;lt;b&amp;gt;Spare Devices&amp;lt;/b&amp;gt;(Vabu seadmeid) - Arv vabu seadmeid, mida kasutab massiiv, mis on antud hetkel 0.&lt;br /&gt;
&lt;br /&gt;
Käsule mdadm on olemas valik &amp;quot;-mail [address]&amp;quot;, mis lubab sul lisada emaili aadress, siis kui on toimumas midagi, siis saadetakse email siht aadressile. Järgmised käsud on vabalt valitavad: &lt;br /&gt;
&lt;br /&gt;
    -program: Lubab lisada programm ja mida jooksutatakse, millal iganes on intsident leitud. &lt;br /&gt;
    &lt;br /&gt;
    -syslog: See käsk lubab raporteerida kõik süsteemis olevad vead syslogi.&lt;br /&gt;
&lt;br /&gt;
Lisaks võib informatsiooni saada faili väljundist /proc/mdstat&lt;br /&gt;
&lt;br /&gt;
Liigume käsuga &amp;quot;cat&amp;quot; faili väljundisse /proc/mdstat. &amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid12.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/2/ /proc/mdstat väljund]&lt;br /&gt;
&lt;br /&gt;
Väljund näitab aktiivseid seadmeid. RAID-1 ütleb, milline seade on primaarne seade. Vaadata tuleb kõige madalamat numbrit, mis on antud massiivi seadmetes antud.&amp;lt;br /&amp;gt; Antud olukorras on sdb1 sellepärast, et ta on märgistatud &amp;quot;[0]&amp;quot;. Järgmine rida allpool sisaldab numbri blokke, mis näitab iga seadme staatust.&amp;lt;br /&amp;gt; Antud olukorras on andmete sektsioon näidatud &amp;quot;[UU]&amp;quot;. Esimene &amp;quot;U&amp;quot; vasakul annab teada esimesest seadmest(sdc1) ja teine &amp;quot;U&amp;quot; parempool on seade (/dev/sdb1). &amp;lt;br /&amp;gt;&amp;quot;U&amp;quot; tähendab, et seade on üleval ja töötab.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vaadates /proc/mdstat, siis võib otsekohe öelda, kas seade on kukkunud, siis peaks kasutaja nägema sellist märki &amp;quot;_&amp;quot;, &amp;quot;U&amp;quot; asemel.&lt;br /&gt;
&lt;br /&gt;
=Raudvara RAID=&lt;br /&gt;
&lt;br /&gt;
Raudvara baasil ehitatud süsteemid mangeerivad RAID-i alamsüsteeme iseseisvalt ilma hostita ja esitab hostile ainult üksikut ketast RAID massiivile.&lt;br /&gt;
&lt;br /&gt;
Raudvara RAID seade on selline seade, mis ühendatakse SCSI kontrollerile ja esitatakse RAID massiive üksiku SCSI kettale. &lt;br /&gt;
Väline RAID süsteem liigutab kõiki RAID tarkust töödeldes kontrollerisse, mis asub väljaspool ketta alamsüsteemi. Terve alamsüsteem on ühendatud hostile ja läbi normaalse SCSI kontrolleri ja esineb hostile üksiku kettana.&lt;br /&gt;
&lt;br /&gt;
RAID-i kontrollerid toodetakse tüüpilises kaardi formaadis nagu SCSI kontrollerid operatsiooni süsteemidele aga tegelikuses käsitlevad kõigi ketaste suhtlemist iseendaga. &amp;lt;br /&amp;gt;Sellistes olukordades tuleks paigaldada kettad RAID kontrolleritesse nagu paigaldaks SCSI kontrollerit aga, siis tuleks neid lisada RAID kontrolleri konfiguratsioonidesse ja operatsioonisüsteem ei teeks neile vahet.&lt;br /&gt;
&lt;br /&gt;
==Raudvara RAID tootjad==&lt;br /&gt;
&lt;br /&gt;
Mõned Raudvara RAID-i tootjad:&lt;br /&gt;
&lt;br /&gt;
[http://www.3ware.com/3ware_home.htm 3ware]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.hds.com/ Hitachi Data Systems]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.synetic.net/ Synetic Inc]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Eestist saadavad RAID tehnoloogiad:&lt;br /&gt;
&lt;br /&gt;
[http://www.asbis.ee/ Asbis]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.tigma.ee/ Tigma]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Terve hulk erinevaid tootjaid leiad sellelt lehelt [http://www.dmoz.org/Computers/Hardware/Storage/Subsystems/RAID/ RAID Stuff]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Kasulikud lingid=&lt;br /&gt;
&lt;br /&gt;
[http://wiki.archlinux.org/index.php/Installing_with_Software_RAID_or_LVM Installing with Software RAID or LVM]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/s1-raid-approaches.html RAID Approaches]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linux-mag.com/id/7475/2/ Linux Software RAID - A Belt and a Pair of Suspenders]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linuxhomenetworking.com/wiki/index.php/Quick_HOWTO_:_Ch26_:_Linux_Software_RAID Quick HOWTO : Linux Software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.cyberciti.biz/tips/raid-hardware-vs-raid-software.html Software RAID vs Hardware RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://blog.taragana.com/index.php/archive/which-one-is-better-software-raid-or-hardware-raid/ Which one is better Hardware RAID or Software RAID?]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linux.com/news/hardware/servers/8222-benchmarking-hardware-raid-vs-linux-kernel-software-raid Benchmarking Hardware RAID vs Linux Kernel software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://en.gentoo-wiki.com/wiki/RAID/Software Software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.howtoforge.com/replacing_hard_disks_in_a_raid1_array Replacing A Failed Hard Drive In A Software RAID1 Array]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://linux.yyz.us/why-software-raid.html Linux: Why software RAID?]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://linas.org/linux/raid.html RAID and Data Storage Protection Solutions for Linux]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://slacksite.com/slackware/raid.html Building a Software RAID System in Slackware]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Talk:Wine&amp;diff=7832</id>
		<title>Talk:Wine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Talk:Wine&amp;diff=7832"/>
		<updated>2010-04-27T14:14:42Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: New page: Retsensiooni autor: Sergei Istomin  Retsensioon ilmub varsti!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Retsensiooni autor: Sergei Istomin&lt;br /&gt;
&lt;br /&gt;
Retsensioon ilmub varsti!&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7575</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7575"/>
		<updated>2010-04-26T06:27:30Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Kasutatud kirjandus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis sobivad kasutaja raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; muutuja väikse mahuga.&lt;br /&gt;
Ehk:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Open_tables:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_tables:&amp;lt;/b&amp;gt; 544468&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_table&amp;lt;/b&amp;gt; väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_writes/Key_writes_request&amp;lt;/b&amp;gt; peaks olema tavaliselt &amp;lt; 1 (0.5 väärtus sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), kuna paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused kinni ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem &amp;lt;b&amp;gt;Thread_cache_size&amp;lt;/b&amp;gt; threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Threads_created&amp;lt;/b&amp;gt; on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;Thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on liiga suure väärtusega, siis tuleks suurendada &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. &amp;lt;br /&amp;gt;Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis peaks olemas olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline jõudlusele.&amp;lt;br /&amp;gt; &lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN lauseid, mis ei kasuta oma võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
=Kasutatud kirjandus=&lt;br /&gt;
&lt;br /&gt;
[http://dev.mysql.com/doc/refman/5.5/en/innodb-configuration.html InnoDB Configuration]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://cherry.world.edoors.com/Cw9QcpkgQwVQ OPTIMISING MYSQL]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://dev.mysql.com/doc/refman/5.5/en/slow-query-log.html The Slow Query Log]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.mysqlperformanceblog.com/?s=key_buffer_size MySQL Performance Blog]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7574</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7574"/>
		<updated>2010-04-26T06:27:12Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Kasutatud kirjandus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis sobivad kasutaja raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; muutuja väikse mahuga.&lt;br /&gt;
Ehk:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Open_tables:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_tables:&amp;lt;/b&amp;gt; 544468&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_table&amp;lt;/b&amp;gt; väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_writes/Key_writes_request&amp;lt;/b&amp;gt; peaks olema tavaliselt &amp;lt; 1 (0.5 väärtus sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), kuna paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused kinni ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem &amp;lt;b&amp;gt;Thread_cache_size&amp;lt;/b&amp;gt; threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Threads_created&amp;lt;/b&amp;gt; on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;Thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on liiga suure väärtusega, siis tuleks suurendada &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. &amp;lt;br /&amp;gt;Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis peaks olemas olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline jõudlusele.&amp;lt;br /&amp;gt; &lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN lauseid, mis ei kasuta oma võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
=Kasutatud kirjandus=&lt;br /&gt;
&lt;br /&gt;
[http://dev.mysql.com/doc/refman/5.5/en/innodb-configuration.html InnoDB Configuration]&lt;br /&gt;
[http://cherry.world.edoors.com/Cw9QcpkgQwVQ OPTIMISING MYSQL]&lt;br /&gt;
[http://dev.mysql.com/doc/refman/5.5/en/slow-query-log.html The Slow Query Log]&lt;br /&gt;
[http://www.mysqlperformanceblog.com/?s=key_buffer_size MySQL Performance Blog]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7572</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7572"/>
		<updated>2010-04-26T06:21:33Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Teised tähtsad parameetrid */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis sobivad kasutaja raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; muutuja väikse mahuga.&lt;br /&gt;
Ehk:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Open_tables:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_tables:&amp;lt;/b&amp;gt; 544468&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_table&amp;lt;/b&amp;gt; väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_writes/Key_writes_request&amp;lt;/b&amp;gt; peaks olema tavaliselt &amp;lt; 1 (0.5 väärtus sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), kuna paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused kinni ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem &amp;lt;b&amp;gt;Thread_cache_size&amp;lt;/b&amp;gt; threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Threads_created&amp;lt;/b&amp;gt; on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;Thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on liiga suure väärtusega, siis tuleks suurendada &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. &amp;lt;br /&amp;gt;Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis peaks olemas olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline jõudlusele.&amp;lt;br /&amp;gt; &lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN lauseid, mis ei kasuta oma võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
=Kasutatud kirjandus=&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7467</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7467"/>
		<updated>2010-04-23T10:54:13Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Teised tähtsad parameetrid */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis sobivad kasutaja raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; muutuja väikse mahuga.&lt;br /&gt;
Ehk:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Open_tables:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_tables:&amp;lt;/b&amp;gt; 544468&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_table&amp;lt;/b&amp;gt; väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_writes/Key_writes_request&amp;lt;/b&amp;gt; peaks olema tavaliselt &amp;lt; 1 (0.5 väärtus sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), kuna paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused kinni ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem &amp;lt;b&amp;gt;Thread_cache_size&amp;lt;/b&amp;gt; threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Threads_created&amp;lt;/b&amp;gt; on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;Thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on liiga suure väärtusega, siis tuleks suurendada &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. &amp;lt;br /&amp;gt;Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis peaks olemas olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline jõudlusele.&amp;lt;br /&amp;gt; &lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN lauseid, mis ei kasuta oma võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7466</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7466"/>
		<updated>2010-04-23T10:49:26Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Teised tähtsad parameetrid */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis sobivad kasutaja raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; muutuja väikse mahuga.&lt;br /&gt;
Ehk:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Open_tables:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_tables:&amp;lt;/b&amp;gt; 544468&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_table&amp;lt;/b&amp;gt; väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_writes/Key_writes_request&amp;lt;/b&amp;gt; peaks olema tavaliselt &amp;lt; 1 (0.5 väärtus sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), kuna paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused kinni ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem &amp;lt;b&amp;gt;Thread_cache_size&amp;lt;/b&amp;gt; threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Threads_created&amp;lt;/b&amp;gt; on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;Thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on liiga suure väärtusega, siis tuleks suurendada &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. &amp;lt;br /&amp;gt;Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis peaks olemas olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline jõudlusele.&amp;lt;br /&amp;gt; &lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN lauseid, mis ei kasuta oma võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Tarkvaraline_RAID_Ubuntus&amp;diff=7465</id>
		<title>Tarkvaraline RAID Ubuntus</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Tarkvaraline_RAID_Ubuntus&amp;diff=7465"/>
		<updated>2010-04-23T10:48:15Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Tarkvara RAID */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
On olemas kaks võimalust, kuidas läheneda RAID-le: Raudvara RAID ja Tarkvara RAID.&lt;br /&gt;
Tarkvara raid on sisse ehitatud Linuxi kernelisse ja seega võib kasutaja mõelda kui kasulik võib olla osta harjumuspäraseid kontrollereid, mis omavad sisse ehitatud RAID võimalusi.&lt;br /&gt;
Teised kasutajad leiavad, et mõtekam on osta harjumusest RAID süsteeme, mis on eelnevalt konfigureeritud. Võimalus kasutada tarkvara(kerneli-baasil) või raudvara(kontrolleri-baasil) RAID lahendusi võib osutuda keeruliseks. &lt;br /&gt;
&lt;br /&gt;
==Autor== &lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=Tarkvara RAID=&lt;br /&gt;
Tarkvara RAID tähendab, et üks massiiv on manageeritud kerneli poolt kui spetsiaalse raudvara RAID-ga. Kernel organiseerib kõik andmed paljudel ketastel kui samal ajal jookseb ainult üks virtuaalne seade rakendustel. Tarkvara RAID implementeerib erinevaid RAID tasemeid kerneli ketta (blokk seadme) koodil. Tarkvara RAID töötab odavamate IDE ketastel samamoodi nagu SCSI ketaste peal. Tänapäeva kiired protsessorid lubavad oma jõudlusel ületada Raudvara RAID-i. &lt;br /&gt;
&lt;br /&gt;
MD draiver Linuxi Kernelis on näide ühest RAID lahendusest, mis ei sõltu raudvarast. Tarkvara baasil massiivi jõudlus sõltub serveri protsessori jõudlusest ja laadimisest. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Peamised punktid, mida pakub tarkvara RAID:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
1. Threadi taasehitatav protsess&amp;lt;br /&amp;gt;&lt;br /&gt;
2. Massiivide teiseldavus Linuxi masinate vahel ilma rekonstrueerimiseta&amp;lt;br /&amp;gt;&lt;br /&gt;
3. Tagaplaani massiivi rekonstruktsioon kasutades süsteemi ressursse&amp;lt;br /&amp;gt;&lt;br /&gt;
4. Hot swapping ketta toetus&amp;lt;br /&amp;gt;&lt;br /&gt;
5. Automaatne CPU avastamine, et oleks eelistus teatud protsessori optimeerimisest&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tarkvara RAIDI installeerimine kasutades GUI==&lt;br /&gt;
Tarkvara RAID võibolla konfigureeritud Red Hat Linuxi installeerimise ajal. Selles peatükis räägime, kuidas konfigureerida tarkvara RAID-i installeerimise ajal kasutades Disk Druid kasutajaliidest. &amp;lt;br /&amp;gt;&lt;br /&gt;
Kasutades versiooni: &amp;lt;b&amp;gt;Red Hat Linx 9&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Enne RAID kettaseadme loomist peab ennem looma RAID partitsioonid, kasutades järgmist samm-haaval juhendit:&amp;lt;br /&amp;gt;&lt;br /&gt;
1.Ketta partitsioneerimise häälestuse juures tuleb valida:&amp;lt;b&amp;gt;Manually partition with Disk Druid.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.&amp;lt;b&amp;gt;Disk Druid&amp;lt;/b&amp;gt; ekraanil tuleks valida: New to create a new partition.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.Edasi ei ole enam võimalik anda monteerimise punkti(Seda on võimalik teha siis, kui on loodud RAID seade). &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4.Järgmisena tuleks valida software RAID failisüsteemi tüübiks&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid-edit.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit: [http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-edit.png RAID partitsioon]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5.&amp;lt;b&amp;gt;Allowable Drives&amp;lt;/b&amp;gt; alt tuleks valida kettad mille peale luuakse RAID.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui arvuti või kettaseadme administraatoril on mitu ketast, siis kõik olemas olevad kettad võetakse arvesse süsteemi poolt ja need märgistatakse linnukesega ära.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tuleks ära võtta linnukesed nendelt ketastelt, kus ei looda RAID massiivi.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
6.Järgmisena tuleks sisestada ketta partitsioooni sobiv suurus.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
7.Valige &amp;lt;b&amp;gt;Fixed size&amp;lt;/b&amp;gt;, et luua spetsiifilse suurusega ketta partitsioon,valige Fill all space up to (MB) ja sisestage suurus MB-s, et anda partitsiooni suurus või&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Fill to maximum allowable size&amp;lt;/b&amp;gt;, et kõik vabad olevad partitsiooni suurused täidetakse kõvakettal.&amp;lt;br /&amp;gt; &lt;br /&gt;
Kui administraator või kasutaja teevad rohkem kui ühe partitsiooni, siis jagatakse vaba ruum ketta peal.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
8.Valige &amp;lt;b&amp;gt;Force to be a primary partition&amp;lt;/b&amp;gt;, et partitsioon peaks olema primary partition.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
9.Valige &amp;lt;b&amp;gt;Check for bad blocks&amp;lt;/b&amp;gt; kui kasutaja soovib, et installeerimise käigus kontrollitakse vigaseid blokke kõvakettal enne formateerimist.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
10.Vajutage &amp;lt;b&amp;gt;OK&amp;lt;/b&amp;gt;, et naaseda peamenüüsse.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Korrake need sammud kõik uuesti läbi, et luua nii palju partitsioone kui vajalik.&amp;lt;br /&amp;gt;&lt;br /&gt;
Ketaste partitsioneerimisel on võimalus luua teisi ketta tüüpe peale RAIDI.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
1.Valige RAID nupp &amp;lt;b&amp;gt;Disk Druidi&amp;lt;/b&amp;gt; häälestus paneelil.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.Järgmisena ilmub pilt, kus kasutaja loob omale RAID seadme.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid-config.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-config.png RAID seadmed]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.Sisestage installeerimise koht.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4.Valige failisüsteemi tüüp partitsiooni jaoks.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5.Valige seadme nimi nagu näiteks md0 RAID seadmele.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
6.Valige oma RAID tase. Valida võib RAID 0, RAID 1 ja RAID 5 hulgas.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
NB!&lt;br /&gt;
RAID partitsiooni loomisel tuleks tähelepanna &amp;quot;/boot&amp;quot; partitsioon. Selle partitsooni puhul on vaja valida RAID tase 1, &lt;br /&gt;
ja see peab kasutama ühte kahest kettaseadmest(IDE esimeseks, SCSI teiseks). &lt;br /&gt;
Kui kasutaja ei loo RAID partitsiooni &amp;quot;/boot&amp;quot; tüüpi, siis kasutaja loob &amp;quot;/&amp;quot; partitsiooni tüüpi. See on RAID tase 1 &lt;br /&gt;
ja kasutusel peab olema järgmised kaks esimest ketast(IDE esimene, SCSI teiseks)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
7.Järgmised RAID partitsioonid, mida kasutaja lõi, ilmnevad RAID kasutajate loetelus. Valige milline partitsioon nendest&amp;lt;br /&amp;gt;&lt;br /&gt;
partitsioonidest peab olema kasutatud, et luua RAID seade.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
8.Kui konfigureerida RAID 1 või RAID 5, siis tuleks täpsustada vabade partitsioonide arvu. Kui tarkvara RAIDI partitsioon peaks&lt;br /&gt;
kukkuma, siis vaba partitsioonid võetakse automaatselt kasutusele asendus ketastena. Igale vabale partitsioonile tuleks luua lisa&lt;br /&gt;
tarkvara RAID partitsioon. Eelmisel sammul, valige partitsioonid RAID seadmetele ja vabadele partitsioonidele. &lt;br /&gt;
&lt;br /&gt;
9.Peale vajutades OK, RAID tase ilmub &amp;lt;b&amp;gt;Drive Summary&amp;lt;/b&amp;gt; loetellu. Peale seda võib jätkata instaleerimis protsessiga.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Lisa küsimuste tekkimiseks tuleks vaadata Red Hat Linux instructions Guid.&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid-dd.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/figs/raid/raid-dd.png RAID on loodud]&lt;br /&gt;
&lt;br /&gt;
10.RAIDI massiiv on loodud.&lt;br /&gt;
&lt;br /&gt;
==Tarkvara RAIDI installeerimine kasutades kernelit ja mdadm==&lt;br /&gt;
&lt;br /&gt;
Haldades md gruppe võib olla väga keeruline ja raske. See nõuab failide redigeerimist, kus igasugune vea tegemine võib tekitada RAID gruppide kadumist. &amp;lt;br /&amp;gt;Kasutaja peab olema selle juures ettevaatlik.&lt;br /&gt;
&lt;br /&gt;
Mdadm tööriist on suur ja omab erinevaid funktsioone: &lt;br /&gt;
&lt;br /&gt;
    1.&amp;lt;b&amp;gt;Assemble&amp;lt;/b&amp;gt;(Koostama): Koostab eelnevatelt loodud massiivi komponentidelt, aktiivsesse massiivi. &lt;br /&gt;
    2.&amp;lt;b&amp;gt;Build&amp;lt;/b&amp;gt;(Ehitama): Ehitada massiiv, mis igal seadmel teeb superbloki. &lt;br /&gt;
    3.&amp;lt;b&amp;gt;Create&amp;lt;/b&amp;gt;(Looma): Luua uus RAID massiiv koos superblokiga igale seadmele.&lt;br /&gt;
    4.&amp;lt;b&amp;gt;Monitor&amp;lt;/b&amp;gt;(Monitoorimine): On võimalus monitoorida ühte või mitut md seadet, mis toimib erinevatel seadmetel.&lt;br /&gt;
    5.&amp;lt;b&amp;gt;Grow&amp;lt;/b&amp;gt;(Kasvatama): Muudab suurust (kasvamise või kahanemise) või ümberkujundada md seadme. &lt;br /&gt;
    See lubab lisada  seadmeid, nii nagu vaja läheb. &lt;br /&gt;
    6.&amp;lt;b&amp;gt;Incremental Assembly&amp;lt;/b&amp;gt;(Suurendamise blokk): Lisage üksik seade massiivile.&lt;br /&gt;
    7.&amp;lt;b&amp;gt;Manage&amp;lt;/b&amp;gt;(Manageerimine): See funktsioon lubab manageerida spetsiifilisi RAID massiivi komponente&lt;br /&gt;
    nagu lisades uusi vabu seadmeid või eemaldades vigaseid seadmeid.  &lt;br /&gt;
    8.&amp;lt;b&amp;gt;Misc&amp;lt;/b&amp;gt;(Mitmesugusus): See on funktsioon, mis sisaldab kõiki teisi funktsioone, mida läheb vaja. &lt;br /&gt;
    9.&amp;lt;b&amp;gt;Auto-detect&amp;lt;/b&amp;gt;(Automaatne leiduvus): Sellel funktsioonil on võimalus leida aktiivseid kerneleid.&lt;br /&gt;
&lt;br /&gt;
Operatsioonisüsteem CentOS 5.3 kasutati järgmisel süsteemil: &lt;br /&gt;
&lt;br /&gt;
     1.Emaplaat: GigaByte MAA78GM-US2H &lt;br /&gt;
     2.Protsessor: AMD Phenom II X4 920 &lt;br /&gt;
     3.Mälu: 8GB &lt;br /&gt;
     4.Kernel: Linux 2.6.30 &lt;br /&gt;
     5.Opsüsteem ja üles laadimise ketas on IBM DTLA-307020 (20GB ketas on Ulta ATA/100 peal)&lt;br /&gt;
     6./home on  Seagate ST1360827AS&lt;br /&gt;
     7.Testimiseks on kasutusel kaks ketast: Seagate ST3500641AS-RK koos 16 MB cachega. Seal on /dev/sdb ja /dev/sdb. &amp;lt;br /&amp;gt;&lt;br /&gt;
     &amp;lt;b&amp;gt;RAID-1 on loodud /dev/sdb ja /dev/sdc ketaste vahel!&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==ID ketaste paigaldamine==&lt;br /&gt;
Et luua RAID-1 grupp on vaja alguses määrata ketaste ID, mis on üks RAID gruppide osa. Selle tüübi nimetus on &amp;quot;fd&amp;quot; (Linuxi automaatne tuvastamine) ja seda on vaja paigutada kõikidele partitsioonidele ja/või ketastele, mis kasutavad RAID gruppe. &lt;br /&gt;
Kasutajal on võimalus kergelt kontrollida partitsiooni tüüpe: &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid1.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ Partitsiooni tüübid]&lt;br /&gt;
&lt;br /&gt;
==Loome RAID, mis kasutab mdadm==&lt;br /&gt;
Tööriist mdadm lubab kergelt luua RAID grupi. Selles näiteks luuakse kahe kettaga RAID-1 grupp.&lt;br /&gt;
[[Image:Raid2.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ mdadm tööriist]&lt;br /&gt;
&lt;br /&gt;
Valikud mida kuvatakse ekraanile on kergelt arusaadavad. Esimene valik on &amp;quot;-create&amp;quot; sellega saab luua RAID grupp. &lt;br /&gt;
Peale &amp;quot;-verbose&amp;quot; valikut on md seade ja selle all mõeldakse /dev/md0. Peale seda on RAID tase (&amp;quot;-level&amp;quot;) - selle all mõeldakse raid1. Lõpuks on RAID seadmed spetsifitseeritud kasutades &amp;quot;-raid-devices&amp;quot; valikut. &amp;lt;br /&amp;gt;Ekraani peal on näha, kas kasutajal on failisüsteem ketta partitsiooni peal. &lt;br /&gt;
&lt;br /&gt;
RAID töötab blokk tasemel. Seega on see RAID kontroller. Olgu see tarkvara RAID või Raudvara RAID, see töötab RAID grupi seadmete blokkidel. &amp;lt;br /&amp;gt;See tähendab, et ta on failisüsteemist eraldatud. Järelikult kohe kui RAID1 grupp on loodud, siis on kettad sünkroniseeritud. &amp;lt;br /&amp;gt;Esimese partitsiooni blokid on kopeeritud teise partitsiooni kettale.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid3.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ Aktiivsed RAID1]&lt;br /&gt;
&lt;br /&gt;
Pange tähele, et sünkroniseerimise protsess leiab aset &amp;quot;cat-misel&amp;quot; faili sisu on /proc/mdstat.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid4.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid5.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid6.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pildid on pärit:[http://www.linux-mag.com/id/7475/1/ Sünkroniseerimise protsess]&lt;br /&gt;
&lt;br /&gt;
Peale sünkroniseerimise lõpetamist, peaks pilt järgnevalt välja nägema:&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid7.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pildid on pärit:[http://www.linux-mag.com/id/7475/1/ RAID sünkroniseerimise protsessi lõpp]&lt;br /&gt;
&lt;br /&gt;
Nii kaugele jõudes saab failisüsteem luua md seadmele &lt;br /&gt;
&lt;br /&gt;
[[Image:Raid8.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/1/ failisüsteemi output]&lt;br /&gt;
&lt;br /&gt;
Järgmisena võib hakata paigaldama failisüsteem. Näiteks: Järgnev rida oli lisatud /etc/fstab:&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid9.jpg]]&lt;br /&gt;
&lt;br /&gt;
Süsteem on paigaldatud kasutades &amp;quot;mount -a&amp;quot; (Eeldades, et paigaldatud asukoht eksisteerib).&lt;br /&gt;
&lt;br /&gt;
Et olla kindel, et failisüsteem on paigaldatud, tuleks kontrollida failisüsteem üle:&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid10.jpg]]&lt;br /&gt;
&lt;br /&gt;
==RAID grupi monitoorimine==&lt;br /&gt;
Siis kui RAID grupp on püsti ja failisüsteem on loodud, järgmine samm oleks monitoorida massiiv. &amp;lt;br /&amp;gt;Seal on mõningaid juppe, mida saab monitoorida massiivis. Lisaks tuleks arusaada massiivi detailidest.&lt;br /&gt;
&lt;br /&gt;
[[Image:Raid11.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/2/ loodud failisüsteem]&lt;br /&gt;
&lt;br /&gt;
Väljundis on näha kui palju seadmeid on RAID massiivis kui paljud seadmed on kukkunud ja kui paljudel seadmetel on märgistatud lisa ruumi.&lt;br /&gt;
&lt;br /&gt;
#&amp;lt;b&amp;gt;Raid Level&amp;lt;/b&amp;gt;(RAID tase) - Meie olukorras on &amp;quot;raid1&amp;quot;In this case it is “raid1″&lt;br /&gt;
#&amp;lt;b&amp;gt;Array Size&amp;lt;/b&amp;gt;(Massiivi suurus) - RAID massiivi suurus, mis antud olukorras on 465.76GiB.&lt;br /&gt;
#&amp;lt;b&amp;gt;Raid Devices&amp;lt;/b&amp;gt;(RAID seadmed) - Antud seadmete arv RAID grupi ja pildi peal on see 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;Total Devices&amp;lt;/b&amp;gt;(Kokku seadmeid) - Kokku arv seadmeid RAID massiivis, mis on antud olukorras 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;Active Devices&amp;lt;/b&amp;gt;(Aktiivsed seadmed) - Arv aktiivseid seadmeid, mis on pildi peal näha 2.&lt;br /&gt;
#&amp;lt;b&amp;gt;Working Devices&amp;lt;/b&amp;gt;(Töötavad seadmed) - Arv töötavaid seadmeid massiivis, mida on 2. &lt;br /&gt;
#&amp;lt;b&amp;gt;Failed Devices&amp;lt;/b&amp;gt;(Kukkunud seadmeid) - Arv kukkunud seadmeid, mis on meie puhul 0.&lt;br /&gt;
#&amp;lt;b&amp;gt;Spare Devices&amp;lt;/b&amp;gt;(Vabu seadmeid) - Arv vabu seadmeid, mida kasutab massiiv, mis on antud hetkel 0.&lt;br /&gt;
&lt;br /&gt;
Käsule mdadm on olemas valik &amp;quot;-mail [address]&amp;quot;, mis lubab sul lisada emaili aadress, siis kui on toimumas midagi, siis saadetakse email siht aadressile. Järgmised käsud on vabalt valitavad: &lt;br /&gt;
&lt;br /&gt;
    -program: Lubab lisada programm ja mida jooksutatakse, millal iganes on intsident leitud. &lt;br /&gt;
    &lt;br /&gt;
    -syslog: See käsk lubab raporteerida kõik süsteemis olevad vead syslogi.&lt;br /&gt;
&lt;br /&gt;
Lisaks võib informatsiooni saada faili väljundist /proc/mdstat&lt;br /&gt;
&lt;br /&gt;
Liigume käsuga &amp;quot;cat&amp;quot; faili väljundisse /proc/mdstat. &amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:Raid12.jpg]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Pilt on pärit:[http://www.linux-mag.com/id/7475/2/ /proc/mdstat väljund]&lt;br /&gt;
&lt;br /&gt;
Väljund näitab aktiivseid seadmeid. RAID-1 ütleb, milline seade on primaarne seade. Vaadata tuleb kõige madalamat numbrit, mis on antud massiivi seadmetes antud.&amp;lt;br /&amp;gt; Antud olukorras on sdb1 sellepärast, et ta on märgistatud &amp;quot;[0]&amp;quot;. Järgmine rida allpool sisaldab numbri blokke, mis näitab iga seadme staatust.&amp;lt;br /&amp;gt; Antud olukorras on andmete sektsioon näidatud &amp;quot;[UU]&amp;quot;. Esimene &amp;quot;U&amp;quot; vasakul annab teada esimesest seadmest(sdc1) ja teine &amp;quot;U&amp;quot; parempool on seade (/dev/sdb1). &amp;lt;br /&amp;gt;&amp;quot;U&amp;quot; tähendab, et seade on üleval ja töötab.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vaadates /proc/mdstat, siis võib otsekohe öelda, kas seade on kukkunud, siis peaks kasutaja nägema sellist märki &amp;quot;_&amp;quot;, &amp;quot;U&amp;quot; asemel.&lt;br /&gt;
&lt;br /&gt;
=Raudvara RAID=&lt;br /&gt;
&lt;br /&gt;
Raudvara baasil ehitatud süsteemid mangeerivad RAID-i alamsüsteeme iseseisvalt ilma hostita ja esitab hostile ainult üksikut ketast RAID massiivile.&lt;br /&gt;
&lt;br /&gt;
Raudvara RAID seade on selline seade, mis ühendatakse SCSI kontrollerile ja esitatakse RAID massiive üksiku SCSI kettale. &lt;br /&gt;
Väline RAID süsteem liigutab kõiki RAID tarkust töödeldes kontrollerisse, mis asub väljaspool ketta alamsüsteemi. Terve alamsüsteem on ühendatud hostile ja läbi normaalse SCSI kontrolleri ja esineb hostile üksiku kettana.&lt;br /&gt;
&lt;br /&gt;
RAID-i kontrollerid toodetakse tüüpilises kaardi formaadis nagu SCSI kontrollerid operatsiooni süsteemidele aga tegelikuses käsitlevad kõigi ketaste suhtlemist iseendaga. &amp;lt;br /&amp;gt;Sellistes olukordades tuleks paigaldada kettad RAID kontrolleritesse nagu paigaldaks SCSI kontrollerit aga, siis tuleks neid lisada RAID kontrolleri konfiguratsioonidesse ja operatsioonisüsteem ei teeks neile vahet.&lt;br /&gt;
&lt;br /&gt;
==Raudvara RAID tootjad==&lt;br /&gt;
&lt;br /&gt;
Mõned Raudvara RAID-i tootjad:&lt;br /&gt;
&lt;br /&gt;
[http://www.3ware.com/3ware_home.htm 3ware]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.hds.com/ Hitachi Data Systems]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.synetic.net/ Synetic Inc]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Eestist saadavad RAID tehnoloogiad:&lt;br /&gt;
&lt;br /&gt;
[http://www.asbis.ee/ Asbis]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.tigma.ee/ Tigma]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Terve hulk erinevaid tootjaid leiad sellelt lehelt [http://www.dmoz.org/Computers/Hardware/Storage/Subsystems/RAID/ RAID Stuff]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Kasulikud lingid=&lt;br /&gt;
&lt;br /&gt;
[http://wiki.archlinux.org/index.php/Installing_with_Software_RAID_or_LVM Installing with Software RAID or LVM]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/s1-raid-approaches.html RAID Approaches]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linux-mag.com/id/7475/2/ Linux Software RAID - A Belt and a Pair of Suspenders]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linuxhomenetworking.com/wiki/index.php/Quick_HOWTO_:_Ch26_:_Linux_Software_RAID Quick HOWTO : Linux Software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.cyberciti.biz/tips/raid-hardware-vs-raid-software.html Software RAID vs Hardware RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://blog.taragana.com/index.php/archive/which-one-is-better-software-raid-or-hardware-raid/ Which one is better Hardware RAID or Software RAID?]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.linux.com/news/hardware/servers/8222-benchmarking-hardware-raid-vs-linux-kernel-software-raid Benchmarking Hardware RAID vs Linux Kernel software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://en.gentoo-wiki.com/wiki/RAID/Software Software RAID]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.howtoforge.com/replacing_hard_disks_in_a_raid1_array Replacing A Failed Hard Drive In A Software RAID1 Array]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://linux.yyz.us/why-software-raid.html Linux: Why software RAID?]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://linas.org/linux/raid.html RAID and Data Storage Protection Solutions for Linux]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://slacksite.com/slackware/raid.html Building a Software RAID System in Slackware]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7464</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7464"/>
		<updated>2010-04-23T09:22:09Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Teised tähtsad parameetrid */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis sobivad kasutaja raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; muutuja väikse mahuga.&lt;br /&gt;
Ehk:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Open_tables:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_tables:&amp;lt;/b&amp;gt; 544468&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_table&amp;lt;/b&amp;gt; väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_writes/Key_writes_request&amp;lt;/b&amp;gt; peaks olema tavaliselt &amp;lt; 1 (0.5 väärtus sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), kuna paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused kinni ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem &amp;lt;b&amp;gt;Thread_cache_size&amp;lt;/b&amp;gt; threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Threads_created&amp;lt;/b&amp;gt; on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;Thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on liiga suure väärtusega, siis tuleks suurendada &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. &amp;lt;br /&amp;gt;Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis peaks olemas olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline jõudlusele.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN lauseid, mis ei kasuta oma võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7463</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7463"/>
		<updated>2010-04-23T09:20:53Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Teised tähtsad parameetrid */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis sobivad kasutaja raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; muutuja väikse mahuga.&lt;br /&gt;
Ehk:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Open_tables:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_tables:&amp;lt;/b&amp;gt; 544468&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_table&amp;lt;/b&amp;gt; väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_writes/Key_writes_request&amp;lt;/b&amp;gt; peaks olema tavaliselt &amp;lt; 1 (0.5 väärtus sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), kuna paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused kinni ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem &amp;lt;b&amp;gt;Thread_cache_size&amp;lt;/b&amp;gt; threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Threads_created&amp;lt;/b&amp;gt; on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;Thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on liiga suure väärtusega, siis tuleks suurendada &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. &amp;lt;br /&amp;gt;Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis peaks olemas olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline jõudlusele.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il, et&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN muutujad, mis ei kasuta võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7462</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7462"/>
		<updated>2010-04-23T09:14:58Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Teised tähtsad parameetrid */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis sobivad kasutaja raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; muutuja väikse mahuga.&lt;br /&gt;
Ehk:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Open_tables:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_tables:&amp;lt;/b&amp;gt; 544468&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_table&amp;lt;/b&amp;gt; väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_writes/Key_writes_request&amp;lt;/b&amp;gt; peaks olema tavaliselt &amp;lt; 1 (0.5 väärtus sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), kuna paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused kinni ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem &amp;lt;b&amp;gt;Thread_cache_size&amp;lt;/b&amp;gt; threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Threads_created&amp;lt;/b&amp;gt; on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;Thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on liiga suure väärtusega, siis tuleks suurendada &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis peaks olemas olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline jõudlusele.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il, et&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN muutujad, mis ei kasuta võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7461</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7461"/>
		<updated>2010-04-23T09:12:44Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Teised tähtsad parameetrid */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis sobivad kasutaja raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; muutuja väikse mahuga.&lt;br /&gt;
Ehk:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Open_tables:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_tables:&amp;lt;/b&amp;gt; 544468&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_table&amp;lt;/b&amp;gt; väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_writes/Key_writes_request&amp;lt;/b&amp;gt; peaks olema tavaliselt &amp;lt; 1 (0.5 väärtus sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), kuna paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused kinni ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem &amp;lt;b&amp;gt;Thread_cache_size&amp;lt;/b&amp;gt; threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Threads_created&amp;lt;/b&amp;gt; on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;Thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on liiga suure väärtusega, siis tuleks suurendada &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis ei tundu väga halb olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il, et&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN muutujad, mis ei kasuta võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7460</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7460"/>
		<updated>2010-04-23T09:11:52Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Teised tähtsad parameetrid */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis sobivad kasutaja raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; muutuja väikse mahuga.&lt;br /&gt;
Ehk:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Open_tables:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_tables:&amp;lt;/b&amp;gt; 544468&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_table&amp;lt;/b&amp;gt; väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_writes/Key_writes_request&amp;lt;/b&amp;gt; peaks olema tavaliselt &amp;lt; 1 (0.5 väärtus sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), kuna paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused kinni ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem &amp;lt;b&amp;gt;Thread_cache_size&amp;lt;/b&amp;gt; threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Threads_created&amp;lt;/b&amp;gt; on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;Thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on liiga suure väärtusega, siis tuleks suurendada tmp_table_size muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis ei tundu väga halb olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il, et&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN muutujad, mis ei kasuta võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7459</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7459"/>
		<updated>2010-04-23T09:11:10Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Teised tähtsad parameetrid */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis sobivad kasutaja raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; muutuja väikse mahuga.&lt;br /&gt;
Ehk:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Open_tables:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_tables:&amp;lt;/b&amp;gt; 544468&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_table&amp;lt;/b&amp;gt; väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_writes/Key_writes_request&amp;lt;/b&amp;gt; peaks olema tavaliselt &amp;lt; 1 (0.5 väärtus sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), kuna paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused kinni ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem &amp;lt;b&amp;gt;Thread_cache_size&amp;lt;/b&amp;gt; threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Threads_created&amp;lt;/b&amp;gt; on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;Thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Created_tmp_disk_tables on liiga suure väärtusega, siis tuleks suurendada tmp_table_size muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis ei tundu väga halb olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il, et&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN muutujad, mis ei kasuta võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7458</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7458"/>
		<updated>2010-04-23T09:10:20Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Teised tähtsad parameetrid */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis sobivad kasutaja raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; muutuja väikse mahuga.&lt;br /&gt;
Ehk:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Open_tables:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_tables:&amp;lt;/b&amp;gt; 544468&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_table&amp;lt;/b&amp;gt; väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_writes/Key_writes_request&amp;lt;/b&amp;gt; peaks olema tavaliselt &amp;lt; 1 (0.5 väärtus sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), kuna paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused kinni ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem &amp;lt;b&amp;gt;Thread_cache_size&amp;lt;/b&amp;gt; threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Threads_created&amp;lt;/b&amp;gt; on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;Thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See peaks probleem peaks järgmisena olema parandatud. Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Created_tmp_disk_tables on liiga suure väärtusega, siis tuleks suurendada tmp_table_size muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis ei tundu väga halb olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il, et&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN muutujad, mis ei kasuta võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7457</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7457"/>
		<updated>2010-04-23T09:09:21Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Teised tähtsad parameetrid */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis sobivad kasutaja raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; muutuja väikse mahuga.&lt;br /&gt;
Ehk:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Open_tables:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_tables:&amp;lt;/b&amp;gt; 544468&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_table&amp;lt;/b&amp;gt; väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_writes/Key_writes_request&amp;lt;/b&amp;gt; peaks olema tavaliselt &amp;lt; 1 (0.5 väärtus sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), kuna paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused kinni ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem &amp;lt;b&amp;gt;thread_cache_size&amp;lt;/b&amp;gt; threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Threads_created on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See peaks probleem peaks järgmisena olema parandatud. Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Created_tmp_disk_tables on liiga suure väärtusega, siis tuleks suurendada tmp_table_size muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis ei tundu väga halb olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il, et&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN muutujad, mis ei kasuta võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7456</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7456"/>
		<updated>2010-04-23T09:08:13Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Teised tähtsad parameetrid */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis sobivad kasutaja raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; muutuja väikse mahuga.&lt;br /&gt;
Ehk:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Open_tables:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_tables:&amp;lt;/b&amp;gt; 544468&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_table&amp;lt;/b&amp;gt; väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_writes/Key_writes_request&amp;lt;/b&amp;gt; peaks olema tavaliselt &amp;lt; 1 (0.5 väärtus sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), kuna paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused kinni ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem thread_cache_size threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Threads_created on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See peaks probleem peaks järgmisena olema parandatud. Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Created_tmp_disk_tables on liiga suure väärtusega, siis tuleks suurendada tmp_table_size muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis ei tundu väga halb olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il, et&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN muutujad, mis ei kasuta võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7455</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7455"/>
		<updated>2010-04-23T09:04:22Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Teised tähtsad parameetrid */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis sobivad kasutaja raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; muutuja väikse mahuga.&lt;br /&gt;
Ehk:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Open_tables:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_tables:&amp;lt;/b&amp;gt; 544468&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_table&amp;lt;/b&amp;gt; väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_writes/Key_writes_request&amp;lt;/b&amp;gt; peaks olema tavaliselt &amp;lt; 1 (0.5 väärtus sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), et paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused endale ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem thread_cache_size threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Threads_created on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See peaks probleem peaks järgmisena olema parandatud. Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Created_tmp_disk_tables on liiga suure väärtusega, siis tuleks suurendada tmp_table_size muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis ei tundu väga halb olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il, et&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN muutujad, mis ei kasuta võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7454</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7454"/>
		<updated>2010-04-23T09:02:40Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* MySQL-i Optimeerimine */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis sobivad kasutaja raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; muutuja väikse mahuga.&lt;br /&gt;
Ehk:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Open_tables:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_tables:&amp;lt;/b&amp;gt; 544468&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_table&amp;lt;/b&amp;gt; väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_writes/Key_writes_request&amp;lt;/b&amp;gt; peaks olema tavaliselt &amp;lt; 1 (0.5 väärtus sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout, max_connection, thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), et paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused endale ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem thread_cache_size threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Threads_created on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See peaks probleem peaks järgmisena olema parandatud. Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Created_tmp_disk_tables on liiga suure väärtusega, siis tuleks suurendada tmp_table_size muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis ei tundu väga halb olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il, et&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN muutujad, mis ei kasuta võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7453</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7453"/>
		<updated>2010-04-23T09:02:15Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* MySQL-i Optimeerimine */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis sobivad kasutaja raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; muutuja väikse mahuga.&lt;br /&gt;
Ehk:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Open_tables:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_tables:&amp;lt;/b&amp;gt; 544468&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_table&amp;lt;/b&amp;gt; väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_writes/Key_writes_request&amp;lt;/b&amp;gt; peaks olema tavaliselt &amp;lt; 1 (0.5 väärtuse juures sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout, max_connection, thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), et paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused endale ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem thread_cache_size threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Threads_created on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See peaks probleem peaks järgmisena olema parandatud. Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Created_tmp_disk_tables on liiga suure väärtusega, siis tuleks suurendada tmp_table_size muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis ei tundu väga halb olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il, et&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN muutujad, mis ei kasuta võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7452</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7452"/>
		<updated>2010-04-23T09:01:40Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* MySQL-i Optimeerimine */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis sobivad kasutaja raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; muutuja väikse mahuga.&lt;br /&gt;
Ehk:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Open_tables:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_tables:&amp;lt;/b&amp;gt; 544468&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_table&amp;lt;/b&amp;gt; väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Key_writes/Key_writes_request peaks olema tavaliselt &amp;lt; 1 (0.5 väärtuse juures sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout, max_connection, thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), et paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused endale ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem thread_cache_size threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Threads_created on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See peaks probleem peaks järgmisena olema parandatud. Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Created_tmp_disk_tables on liiga suure väärtusega, siis tuleks suurendada tmp_table_size muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis ei tundu väga halb olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il, et&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN muutujad, mis ei kasuta võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7451</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7451"/>
		<updated>2010-04-23T09:00:07Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* MySQL-i Optimeerimine */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis sobivad kasutaja raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; muutuja väikse mahuga.&lt;br /&gt;
Ehk:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Open_tables:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_tables:&amp;lt;/b&amp;gt; 544468&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_table&amp;lt;/b&amp;gt; väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
See on äärmuslikult tähtis, mida õigeks saada.&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Key_writes/Key_writes_request peaks olema tavaliselt &amp;lt; 1 (0.5 väärtuse juures sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout, max_connection, thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), et paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused endale ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem thread_cache_size threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Threads_created on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See peaks probleem peaks järgmisena olema parandatud. Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Created_tmp_disk_tables on liiga suure väärtusega, siis tuleks suurendada tmp_table_size muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis ei tundu väga halb olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il, et&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN muutujad, mis ei kasuta võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7450</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7450"/>
		<updated>2010-04-23T08:59:47Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* MySQL-i Optimeerimine */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis sobivad kasutaja raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; muutuja väikse mahuga.&lt;br /&gt;
Ehk:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Open_tables:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_tables:&amp;lt;/b&amp;gt; 544468&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Opened_table väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
See on äärmuslikult tähtis, mida õigeks saada.&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Key_writes/Key_writes_request peaks olema tavaliselt &amp;lt; 1 (0.5 väärtuse juures sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout, max_connection, thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), et paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused endale ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem thread_cache_size threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Threads_created on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See peaks probleem peaks järgmisena olema parandatud. Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Created_tmp_disk_tables on liiga suure väärtusega, siis tuleks suurendada tmp_table_size muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis ei tundu väga halb olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il, et&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN muutujad, mis ei kasuta võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7449</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7449"/>
		<updated>2010-04-23T08:58:59Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* MySQL-i Optimeerimine */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis sobivad kasutaja raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; muutuja väikse mahuga.&lt;br /&gt;
Ehk:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Open_tables:&amp;lt;/b&amp;gt; 64&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Opened_tables:&amp;lt;/b&amp;gt; 544468&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Opened_table väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
See on äärmuslikult tähtis, mida õigeks saada.&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Key_writes/Key_writes_request peaks olema tavaliselt &amp;lt; 1 (0.5 väärtuse juures sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout, max_connection, thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), et paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused endale ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem thread_cache_size threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Threads_created on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See peaks probleem peaks järgmisena olema parandatud. Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Created_tmp_disk_tables on liiga suure väärtusega, siis tuleks suurendada tmp_table_size muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis ei tundu väga halb olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il, et&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN muutujad, mis ei kasuta võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7448</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7448"/>
		<updated>2010-04-23T08:57:36Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* MySQL-i Optimeerimine */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis sobivad kasutaja raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; muutuja väikse mahuga.&lt;br /&gt;
Ehk: &lt;br /&gt;
table_cache: 64&lt;br /&gt;
Open_tables: 64&lt;br /&gt;
Opened_tables: 544468&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Opened_table väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
See on äärmuslikult tähtis, mida õigeks saada.&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Key_writes/Key_writes_request peaks olema tavaliselt &amp;lt; 1 (0.5 väärtuse juures sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout, max_connection, thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), et paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused endale ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem thread_cache_size threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Threads_created on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See peaks probleem peaks järgmisena olema parandatud. Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Created_tmp_disk_tables on liiga suure väärtusega, siis tuleks suurendada tmp_table_size muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis ei tundu väga halb olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il, et&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN muutujad, mis ei kasuta võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7447</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7447"/>
		<updated>2010-04-23T08:56:47Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* InnoDB MySQL-is */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis sobivad kasutaja raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on table_cache muutuja väikse mahuga.&lt;br /&gt;
Ehk: &lt;br /&gt;
table_cache: 64&lt;br /&gt;
Open_tables: 64&lt;br /&gt;
Opened_tables: 544468&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Opened_table väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
See on äärmuslikult tähtis, mida õigeks saada.&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Key_writes/Key_writes_request peaks olema tavaliselt &amp;lt; 1 (0.5 väärtuse juures sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout, max_connection, thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), et paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused endale ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem thread_cache_size threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Threads_created on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See peaks probleem peaks järgmisena olema parandatud. Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Created_tmp_disk_tables on liiga suure väärtusega, siis tuleks suurendada tmp_table_size muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis ei tundu väga halb olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il, et&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN muutujad, mis ei kasuta võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7446</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7446"/>
		<updated>2010-04-23T08:56:35Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* InnoDB MySQL-is */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis sobivad raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on table_cache muutuja väikse mahuga.&lt;br /&gt;
Ehk: &lt;br /&gt;
table_cache: 64&lt;br /&gt;
Open_tables: 64&lt;br /&gt;
Opened_tables: 544468&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Opened_table väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
See on äärmuslikult tähtis, mida õigeks saada.&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Key_writes/Key_writes_request peaks olema tavaliselt &amp;lt; 1 (0.5 väärtuse juures sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout, max_connection, thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), et paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused endale ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem thread_cache_size threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Threads_created on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See peaks probleem peaks järgmisena olema parandatud. Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Created_tmp_disk_tables on liiga suure väärtusega, siis tuleks suurendada tmp_table_size muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis ei tundu väga halb olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il, et&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN muutujad, mis ei kasuta võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7445</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7445"/>
		<updated>2010-04-23T08:55:43Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* InnoDB MySQL-is */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis on sobivad raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on table_cache muutuja väikse mahuga.&lt;br /&gt;
Ehk: &lt;br /&gt;
table_cache: 64&lt;br /&gt;
Open_tables: 64&lt;br /&gt;
Opened_tables: 544468&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Opened_table väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
See on äärmuslikult tähtis, mida õigeks saada.&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Key_writes/Key_writes_request peaks olema tavaliselt &amp;lt; 1 (0.5 väärtuse juures sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout, max_connection, thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), et paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused endale ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem thread_cache_size threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Threads_created on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See peaks probleem peaks järgmisena olema parandatud. Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Created_tmp_disk_tables on liiga suure väärtusega, siis tuleks suurendada tmp_table_size muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis ei tundu väga halb olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il, et&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN muutujad, mis ei kasuta võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7444</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7444"/>
		<updated>2010-04-23T08:55:13Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* InnoDB MySQL-is */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse logi failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras jne.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis on sobivad raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on table_cache muutuja väikse mahuga.&lt;br /&gt;
Ehk: &lt;br /&gt;
table_cache: 64&lt;br /&gt;
Open_tables: 64&lt;br /&gt;
Opened_tables: 544468&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Opened_table väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
See on äärmuslikult tähtis, mida õigeks saada.&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Key_writes/Key_writes_request peaks olema tavaliselt &amp;lt; 1 (0.5 väärtuse juures sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout, max_connection, thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), et paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused endale ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem thread_cache_size threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Threads_created on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See peaks probleem peaks järgmisena olema parandatud. Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Created_tmp_disk_tables on liiga suure väärtusega, siis tuleks suurendada tmp_table_size muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis ei tundu väga halb olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il, et&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN muutujad, mis ei kasuta võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7443</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7443"/>
		<updated>2010-04-23T08:54:57Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* InnoDB MySQL-is */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse log failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras jne.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis on sobivad raudvaraga kokku.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on table_cache muutuja väikse mahuga.&lt;br /&gt;
Ehk: &lt;br /&gt;
table_cache: 64&lt;br /&gt;
Open_tables: 64&lt;br /&gt;
Opened_tables: 544468&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Opened_table väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
See on äärmuslikult tähtis, mida õigeks saada.&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Key_writes/Key_writes_request peaks olema tavaliselt &amp;lt; 1 (0.5 väärtuse juures sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout, max_connection, thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), et paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused endale ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem thread_cache_size threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Threads_created on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See peaks probleem peaks järgmisena olema parandatud. Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Created_tmp_disk_tables on liiga suure väärtusega, siis tuleks suurendada tmp_table_size muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis ei tundu väga halb olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il, et&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN muutujad, mis ei kasuta võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7442</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7442"/>
		<updated>2010-04-23T08:49:58Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* MySQL-i Optimeerimine */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse log failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras jne.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis on sobivad raudvaraga kokku.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on table_cache muutuja väikse mahuga.&lt;br /&gt;
Ehk: &lt;br /&gt;
table_cache: 64&lt;br /&gt;
Open_tables: 64&lt;br /&gt;
Opened_tables: 544468&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Opened_table väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
See on äärmuslikult tähtis, mida õigeks saada.&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Key_writes/Key_writes_request peaks olema tavaliselt &amp;lt; 1 (0.5 väärtuse juures sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout, max_connection, thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), et paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused endale ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem thread_cache_size threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Threads_created on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See peaks probleem peaks järgmisena olema parandatud. Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Created_tmp_disk_tables on liiga suure väärtusega, siis tuleks suurendada tmp_table_size muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis ei tundu väga halb olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il, et&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN muutujad, mis ei kasuta võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7441</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7441"/>
		<updated>2010-04-23T08:48:57Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Teised tähtsad parameetrid */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse log failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras jne.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis on sobivad raudvaraga kokku.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on table_cache muutuja väikse mahuga.&lt;br /&gt;
Ehk: &lt;br /&gt;
table_cache: 64&lt;br /&gt;
Open_tables: 64&lt;br /&gt;
Opened_tables: 544468&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Opened_table väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
See on äärmuslikult tähtis, mida õigeks saada.&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Key_writes/Key_writes_request peaks olema tavaliselt &amp;lt; 1 (0.5 väärtuse juures sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on table_cache muutuja väikse mahuga.&lt;br /&gt;
Ehk: &lt;br /&gt;
table_cache: 64&lt;br /&gt;
Open_tables: 64&lt;br /&gt;
Opened_tables: 544468&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Opened_table väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
See on äärmuslikult tähtis, mida õigeks saada.&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Key_writes/Key_writes_request peaks olema tavaliselt &amp;lt; 1 (0.5 väärtuse juures sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout, max_connection, thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), et paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused endale ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem thread_cache_size threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Threads_created on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See peaks probleem peaks järgmisena olema parandatud. Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viimseks tuleks vaadata: &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Handler_read_rnd / Handler_read_rnd_next&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Created_tmp_disk_tables on liiga suure väärtusega, siis tuleks suurendada tmp_table_size muutujad.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Tmp_table_size:&amp;lt;/b&amp;gt; 32M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables:&amp;lt;/b&amp;gt; 3227&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_tables:&amp;lt;/b&amp;gt; 159832&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_files:&amp;lt;/b&amp;gt; 4444&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Created_tmp_disk_tables&amp;lt;/b&amp;gt; on arv varjatud ajutisi tabeleid, mis on loodud kettale samalajal käivitades lauseid ja&amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Create_tmp_tables&amp;lt;/b&amp;gt; on mälu põhjal. Ilmselt on see halb kui peab minema ketta kallale mälu asemel. Umbes 2% &amp;lt;b&amp;gt;temp tables &amp;lt;/b&amp;gt;lähvad kettale, mis ei tundu väga halb olema aga tõstes &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt; väärtust oleks oluline.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Handler_read_rnd&amp;lt;/b&amp;gt; on väärtuse poolest liiga suur, siis on ilmselt andmebaasis palju päringuid, mis vajavad MySQL-il, et&lt;br /&gt;
skaneerida kõiki tabeleid või on andmebaasis JOIN muutujad, mis ei kasuta võtmeid korralikult.&amp;lt;br /&amp;gt; &lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd:&amp;lt;/b&amp;gt; 27712353&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Handler_read_rnd_next:&amp;lt;/b&amp;gt; 283536234&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Need väärtused on liiga suured, seega peab ilmselt parandama indexeid ja päringuid.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Täielik mälu kasutus&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutatud MySQL-i mälu = &amp;lt;b&amp;gt;key_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;join_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;record_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;thread_stack&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;tmp_table_size&amp;lt;/b&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui InnoDB mootor peaks olema peal:&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;max_memory_utilization&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;innoDB_buffer_pool_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * (&amp;lt;b&amp;gt;read_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;sort_buffer_size&amp;lt;/b&amp;gt; + &amp;lt;b&amp;gt;binlog_cache_size&amp;lt;/b&amp;gt;) + &amp;lt;b&amp;gt;max_connections&amp;lt;/b&amp;gt; * &amp;lt;b&amp;gt;2M&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siin tuleks tähelepanna &amp;lt;b&amp;gt;max_connexion&amp;lt;/b&amp;gt; ja korrutamise teguri.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Ühenduse kasvamine&amp;lt;/b&amp;gt; = &amp;lt;b&amp;gt;Mälu kasutamise suurendamist&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Table_cache:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Suurendades &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; parameetrit aitab suurendada jõudlust.&amp;lt;br /&amp;gt;&lt;br /&gt;
Siin peab ettevaatlik olema, et parameetri väärtus ei läheks väga suureks. Kõigil operatsioonisüsteemidel on olemas arvu limiit &amp;quot;Open file pointer&amp;quot; mida omab iga üksik protsess.&lt;br /&gt;
Kui MySQL proovib avada palju faile, siis OS võib keelduda ja MySQL genereerib veateate vealogi sisse.&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7428</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7428"/>
		<updated>2010-04-23T06:54:07Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* MySQL-i Optimeerimine */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse log failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras jne.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis on sobivad raudvaraga kokku.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on table_cache muutuja väikse mahuga.&lt;br /&gt;
Ehk: &lt;br /&gt;
table_cache: 64&lt;br /&gt;
Open_tables: 64&lt;br /&gt;
Opened_tables: 544468&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Opened_table väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
See on äärmuslikult tähtis, mida õigeks saada.&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Key_writes/Key_writes_request peaks olema tavaliselt &amp;lt; 1 (0.5 väärtuse juures sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on table_cache muutuja väikse mahuga.&lt;br /&gt;
Ehk: &lt;br /&gt;
table_cache: 64&lt;br /&gt;
Open_tables: 64&lt;br /&gt;
Opened_tables: 544468&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Opened_table väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
See on äärmuslikult tähtis, mida õigeks saada.&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Key_writes/Key_writes_request peaks olema tavaliselt &amp;lt; 1 (0.5 väärtuse juures sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Teised tähtsad parameetrid==&lt;br /&gt;
&lt;br /&gt;
Järmisena tähtsad sätted on: &amp;lt;b&amp;gt;Wait_timeout, max_connection, thread_cache&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Natukene seletust:&lt;br /&gt;
Tavaliselt on andmebaasis palju MySQL-i protsesse, mis niiöelda magavad sellepärast, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; ei ole määratud suuruse &amp;lt;br /&amp;gt;poolest väikseks. Kasutaja peaks kindlaks tegema, et &amp;lt;b&amp;gt;wait_timeout&amp;lt;/b&amp;gt; on määratud väga väikesele väärtusele: 15 sekundit. &amp;lt;br /&amp;gt;&lt;br /&gt;
See tähendab, et MySQL katkestab kõik ühendused, mis ei olnud aktiivsed 15 sekundi jooksul.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Probleem seisneb selles, et järgmisena peaks tõstma &amp;lt;b&amp;gt;max_connection&amp;lt;/b&amp;gt; parameetrit(igal kasutajal on oma väärtus), et paljud&amp;lt;br /&amp;gt; ebaaktiivsed kasutajad ei hoiaks ühendused endale ja ei blokeeriks välja uusi kliente ühendades andmebaasile.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kasutaja peaks kasutama &amp;lt;b&amp;gt;Thread_cache&amp;lt;/b&amp;gt;:&lt;br /&gt;
&amp;quot;Kui palju threade peaks vahemällu jätma uuesti kasutamiseks. Kui klient katkestab ühenduse, siis kliendi threadid pannakse&amp;lt;br /&amp;gt; vahemällu kui seal pole rohkem thread_cache_size threade ennem. Kõik uued threadid on võetud vahemälust ja ainult siis kui vahemälu on tühi, siis luuakse uus thread. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutuja väärtust saab tõsta, et parandada jõudlust kui kasutajal on palju uusi ühendusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui Threads_created on suure väärtusega, siis peab kasutaja suurendama &amp;lt;b&amp;gt;thread_cache_size&amp;lt;/b&amp;gt; muutuja väärtusi.&amp;lt;br /&amp;gt;&lt;br /&gt;
Vahemälu koefitsenti saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created/Connections.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Thread_cache_size: 0&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Threads_created: 150022&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Connections: 150023&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See peaks probleem peaks järgmisena olema parandatud. Vahemälu suurus väärtusega 0 on vaikimiselt määratud my.cnf failis aga soovitatud suurus on 8.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seda saab kalkuleerida järgmise valemiga: &amp;lt;b&amp;gt;table_cache = opened table / max_used_connection&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7426</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7426"/>
		<updated>2010-04-23T06:12:21Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* MySQL-i Optimeerimine */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse log failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras jne.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis on sobivad raudvaraga kokku.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: &amp;lt;b&amp;gt;Table_cache&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on table_cache muutuja väikse mahuga.&lt;br /&gt;
Ehk: &lt;br /&gt;
table_cache: 64&lt;br /&gt;
Open_tables: 64&lt;br /&gt;
Opened_tables: 544468&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Opened_table väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
See on äärmuslikult tähtis, mida õigeks saada.&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Key_writes/Key_writes_request peaks olema tavaliselt &amp;lt; 1 (0.5 väärtuse juures sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7425</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7425"/>
		<updated>2010-04-23T06:11:30Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Sissejuhatus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sissejuhatus=&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse log failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras jne.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis on sobivad raudvaraga kokku.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: Table_cache and Key_buffer_size&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on table_cache muutuja väikse mahuga.&lt;br /&gt;
Ehk: &lt;br /&gt;
table_cache: 64&lt;br /&gt;
Open_tables: 64&lt;br /&gt;
Opened_tables: 544468&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Opened_table väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
See on äärmuslikult tähtis, mida õigeks saada.&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Key_writes/Key_writes_request peaks olema tavaliselt &amp;lt; 1 (0.5 väärtuse juures sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7424</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7424"/>
		<updated>2010-04-23T06:11:16Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Autor */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Sissejuhatus==&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse log failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras jne.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis on sobivad raudvaraga kokku.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: Table_cache and Key_buffer_size&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on table_cache muutuja väikse mahuga.&lt;br /&gt;
Ehk: &lt;br /&gt;
table_cache: 64&lt;br /&gt;
Open_tables: 64&lt;br /&gt;
Opened_tables: 544468&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Opened_table väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
See on äärmuslikult tähtis, mida õigeks saada.&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Key_writes/Key_writes_request peaks olema tavaliselt &amp;lt; 1 (0.5 väärtuse juures sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7423</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7423"/>
		<updated>2010-04-23T06:10:53Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* MySQL-i Optimeerimine */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Sissejuhatus==&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse log failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras jne.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis on sobivad raudvaraga kokku.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=MySQL-i Optimeerimine=&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: Table_cache and Key_buffer_size&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on table_cache muutuja väikse mahuga.&lt;br /&gt;
Ehk: &lt;br /&gt;
table_cache: 64&lt;br /&gt;
Open_tables: 64&lt;br /&gt;
Opened_tables: 544468&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Opened_table väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
See on äärmuslikult tähtis, mida õigeks saada.&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Key_writes/Key_writes_request peaks olema tavaliselt &amp;lt; 1 (0.5 väärtuse juures sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7422</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7422"/>
		<updated>2010-04-23T06:10:17Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Autor */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Sissejuhatus==&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor==&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse log failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras jne.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis on sobivad raudvaraga kokku.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==MySQL-i Optimeerimine==&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: Table_cache and Key_buffer_size&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on table_cache muutuja väikse mahuga.&lt;br /&gt;
Ehk: &lt;br /&gt;
table_cache: 64&lt;br /&gt;
Open_tables: 64&lt;br /&gt;
Opened_tables: 544468&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Opened_table väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
See on äärmuslikult tähtis, mida õigeks saada.&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Key_writes/Key_writes_request peaks olema tavaliselt &amp;lt; 1 (0.5 väärtuse juures sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7421</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7421"/>
		<updated>2010-04-23T06:09:59Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* Autor */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Sissejuhatus==&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
=Autor=&lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse log failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras jne.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis on sobivad raudvaraga kokku.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==MySQL-i Optimeerimine==&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: Table_cache and Key_buffer_size&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on table_cache muutuja väikse mahuga.&lt;br /&gt;
Ehk: &lt;br /&gt;
table_cache: 64&lt;br /&gt;
Open_tables: 64&lt;br /&gt;
Opened_tables: 544468&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Opened_table väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
See on äärmuslikult tähtis, mida õigeks saada.&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Key_writes/Key_writes_request peaks olema tavaliselt &amp;lt; 1 (0.5 väärtuse juures sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7420</id>
		<title>MySQL andmebaasi jõudluse parandamine</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=MySQL_andmebaasi_j%C3%B5udluse_parandamine&amp;diff=7420"/>
		<updated>2010-04-23T06:07:37Z</updated>

		<summary type="html">&lt;p&gt;Sistomin: /* InnoDB MySQL-is */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Sissejuhatus==&lt;br /&gt;
Selles peatükis keskendutakse MySQL-i andmbeaasi jõudluse parandamisega. Peamiselt kirjeldatakse konfiguratsiooni failis olevad&amp;lt;br /&amp;gt; muutujad ja nende suurused. MySQL andmebaasi konfiguratsiooni fail asub kaustas:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/etc/mysql/my.cnf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Selles failis võib muuta mälu, tabelite ja internti ühenduste piiranguid ja teisi võimalike muutusi lisada.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tehnilised näitajad: &amp;lt;b&amp;gt;MySQL 5.5&amp;lt;/b&amp;gt; versioon&lt;br /&gt;
&lt;br /&gt;
==Autor== &lt;br /&gt;
Sergei Istomin&amp;lt;br /&amp;gt; &lt;br /&gt;
A22&amp;lt;br /&amp;gt;&lt;br /&gt;
[mailto:sistomin@itcollege.ee sistomin@itcollege.ee]&lt;br /&gt;
&lt;br /&gt;
=InnoDB MySQL-is=&lt;br /&gt;
&lt;br /&gt;
InnoDB on talletamise mootor MySQL-i andmebaasi jaoks. InnoDB on oma funksionaalsuse poolest kõige eelistatum mootor, kuna InnoDB&amp;lt;br /&amp;gt; mootor võimaldab teha teha andmete taastamist ja süsteemi kokkujooksmised salvestatakse log failidesse.&amp;lt;br /&amp;gt;&lt;br /&gt;
InnoDB salvestab andmete read füüsiliselt primaarsete võtmete järjekorras jne.&amp;lt;br /&amp;gt;&lt;br /&gt;
Rohkem lugemist leiab järgmiselt lingilt:[http://en.wikipedia.org/wiki/InnoDB InnoDB vs MyISAM]&lt;br /&gt;
&lt;br /&gt;
Kaks peamist ketta baasil manageeritud ressursi talletamist on InnoDB-s tema tabelite andme- ja logi failid.&amp;lt;br /&amp;gt;&lt;br /&gt;
Kui kasutaja ei spetsifitseeri InnoDB konfiguratsiooni sätteid, siis MySQL loob isiklikult &amp;lt;b&amp;gt;auto-extending&amp;lt;/b&amp;gt; 10MB andmete faili&amp;lt;br /&amp;gt; &lt;br /&gt;
nimega &amp;lt;b&amp;gt;idbata1&amp;lt;/b&amp;gt; ja kaks 5MB log faili nimega &amp;lt;b&amp;gt;ib_logfile0&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;ib_logfile1&amp;lt;/b&amp;gt; MySQL-i andmete kategoorias.&amp;lt;br /&amp;gt;&lt;br /&gt;
Et parandada jõudlust tuleks lisada InnoDB parameetritele kindlad väärtused, mis on sobivad raudvaraga kokku.&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==MySQL-i Optimeerimine==&lt;br /&gt;
&lt;br /&gt;
Kaks kõige tähtsamat muutujat my.cnf failis on: Table_cache and Key_buffer_size&lt;br /&gt;
&lt;br /&gt;
*Kui &amp;lt;b&amp;gt;Open_tables&amp;lt;/b&amp;gt; on väga suure mahuga, siis kindlasti on table_cache muutuja väikse mahuga.&lt;br /&gt;
Ehk: &lt;br /&gt;
table_cache: 64&lt;br /&gt;
Open_tables: 64&lt;br /&gt;
Opened_tables: 544468&lt;br /&gt;
&lt;br /&gt;
Parameeter nimega &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; on arv avatud tabeleid. MySQL on multi-threaditud ja võib joosta paljudel&lt;br /&gt;
päringutel samaaegselt ja iga üks nendest avab tabeli. &amp;lt;br /&amp;gt;&lt;br /&gt;
Seega kui kasutajal on paar tabelit, läheb temal vaja rohkem tabeleid &amp;lt;b&amp;gt;opened_tables&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Opened_table väärtus on kõrge ja näitab vahemälus olevaid puudusi. &amp;lt;br /&amp;gt;&lt;br /&gt;
Muutes &amp;lt;b&amp;gt;table_cache&amp;lt;/b&amp;gt; parameetri suurust parandab oluliselt jõudlust. &lt;br /&gt;
&lt;br /&gt;
* Kui &amp;lt;b&amp;gt;Key_reads&amp;lt;/b&amp;gt; on suure mahuga, siis &amp;lt;b&amp;gt;key_buffer_size&amp;lt;/b&amp;gt; muutuja on ilmselt liiga väike.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vahemälu jõudmise keskmist saab arvutada järmiselt:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads/Key_read_requests.&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_buffer_size:&amp;lt;/b&amp;gt; 16M&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_read_requests:&amp;lt;/b&amp;gt; 2973620399&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;Key_reads:&amp;lt;/b&amp;gt; 8490571&amp;lt;br /&amp;gt;&lt;br /&gt;
(cache hit rate = 0.0028)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameeter &amp;lt;b&amp;gt;Key_buffer_size&amp;lt;/b&amp;gt; mõjutab indeksite puhvri suurust ja indexi käsitlemise aega.&lt;br /&gt;
Tavaliselt peaks &amp;lt;b&amp;gt;Key_reads/Key_read_request&amp;lt;/b&amp;gt; koefitsent olema &amp;lt; 0.01. &amp;lt;br /&amp;gt;&lt;br /&gt;
See on äärmuslikult tähtis, mida õigeks saada.&lt;br /&gt;
&lt;br /&gt;
Kindlasti tuleks kontrollida &amp;lt;b&amp;gt;Key_writes_requests&amp;lt;/b&amp;gt; ja &amp;lt;b&amp;gt;Key_writes&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Key_writes/Key_writes_request peaks olema tavaliselt &amp;lt; 1 (0.5 väärtuse juures sobib).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]&lt;/div&gt;</summary>
		<author><name>Sistomin</name></author>
	</entry>
</feed>