Array ( [0] => 15504954 [id] => 15504954 [1] => cswiki [site] => cswiki [2] => MyISAM [uri] => MyISAM [3] => [img] => [4] => [day_avg] => [5] => [day_diff] => [6] => [day_last] => [7] => [day_prev_last] => [8] => [oai] => [9] => [is_good] => [10] => [object_type] => [11] => 1 [has_content] => 1 [12] => [oai_cs_optimisticky] => ) Array ( [0] => {{Infobox - software}} [1] => '''MyISAM''' je nejpoužívanější a až do verze 5.1 výchozí formát úložiště dat (storage engine) v [[Databáze|databázovém]] systému [[MySQL]]. Je následovníkem formátu [[ISAM]] (Indexed Sequential Access Method). [2] => [3] => == Úložiště == [4] => MyISAM obvykle ukládá každou tabulku ve dvou souborech: [5] => * ''.MYD'' - datový soubor [6] => * ''.MYI'' - indexový soubor [7] => Formát MyISAM je platformově neutrální, což znamená, že můžete bez jakýchkoliv potíží zkopírovat datové a indexové soubory ze serveru založeného na [[Intel]]u na [[PowerPC]] nebo na [[Sun SPARC]].
[8] => Tabulky MyISAM mohou obsahovat buď dynamické řádky, nebo statické řádky (pevné délky). [[MySQL]] se rozhodne o tom, který formát použije na základě definice tabulky. To, kolik řádků celkem může tabulka MyISAM obsahovat, je primárně limitováno velikostí volného místa na [[disk]]u na databázovém serveru a na tom, jak velký soubor povoluje vytvořit [[operační systém]].
[9] => Tabulky MyISAM, které jsou vytvářeny v [[MySQL]] 5.0 s proměnlivou délkou řádků, jsou standardně nakonfigurovány tak, aby zvládly 256 [[Byte#Terabyte|TB]] dat pomocí 6[[bajt]]ových ukazatelů na datové záznamy. Dřívější verze [[MySQL]] měly jako standard 4[[bajt]]ové ukazatele pro maximálně 4 [[Byte#Gigabyte|GB]] dat. Všechny verze [[MySQL]] umějí zpracovávat ukazatele až do velikosti 8 [[bajt]]ů. [10] => [11] => == Funkce MyISAM == [12] => Protože MyISAM je jeden z nejstarších úložných enginů, které byly zařazeny do [[MySQL]], obsahuje velké množství funkcí, které byly vyvinuty během let jeho existence, aby uspokojily potřeby požadované jeho uživateli. [13] => [14] => === Uzamykání a souběžnost === [15] => MyISAM uzamyká celé tabulky, ne řádky. Čtenáři obdrží sdílené (čtecí) zámky na všechny tabulky, z nichž potřebují číst. Zapisovatelé obdrží výlučné (zapisovací) zámky. Ovšem i když nad tabulkou běží výběrové dotazy, dají se do tabulky vkládat nové řádky (tzv. souběžné vkládání, concurrent inserts). Je to významná a užitečná funkce. [16] => [17] => === Automatická oprava === [18] => MySQL podporuje automatickou kontrolu a opravu tabulek MyISAM. [19] => [20] => === Ruční oprava === [21] => Pomocí příkazů ''CHECK TABLE'' a ''REPAIR'' je možno zkontrolovat, jestli v tabulce nejsou chyby, a poté provést opravu. Pokud je server [[offline]], lze kontrolovat a opravovat tabulky nástrojem příkazového řádku ''myisamcheck''. [22] => [23] => === Indexové funkce === [24] => V tabulkách MyISAM můžete vytvářet [[index]]y na prvních 500 znacích sloupců ''BLOB'' a ''TEXT''. MyISAM podporuje [[fulltext]]ové [[index]]y, v nichž se indexují jednotlivá slova pro potřeby složitých vyhledávacích operací. [25] => [26] => === Pozdržené zápisy klíčů === [27] => Tabulky MyISAM, pro které byla při vytvoření volba ''DELAY_KEY_WRITE'', nezapisují na konci dotazu změněná data na disk. MyISAM ukládá změny do [[buffer]]u klíčů (key buffer), který je umístěn v [[operační paměť|paměti]]. Bloky indexu jsou "spláchnuty" (flush) na disk tehdy, když je [[buffer]] "pročišťován" (prune; tj. jsou odstraňována stará data) nebo když je uzavírána tabulka. Tím se může rapidně zvýšit výkon u intenzivně používaných tabulek, které se často mění. Jestliže však zhavaruje systém nebo server, budou [[index]]y s velkou pravděpodobností narušené, takže se budou muset opravit. [28] => [29] => == Komprimované tabulky MyISAM == [30] => Tabulky, které se po naplnění daty už nikdy nemění a pouze se čtou, se dají [[komprimace|zkomprimovat]] prostřednictvím utility ''myisampack''. Ačkoliv zkomprimované tabulky se nedají modifikovat, zabírají mnohem méně místa na [[disk]]u. Důsledkem je, že nabízejí lepší výkon, protože jejich menší velikost implikuje méně hledání na disku při vyhledávání záznamů. Zkomprimované tabulky MyISAM mohou mít [[index]]y, jsou ovšem určeny pouze ke čtení. Dodatečné režijní náklady na dekomprimaci dat při jejich čtení jsou u většiny aplikací na moderním hardwaru nepodstatné, protože opravdové zisky plynou z redukce diskových operací [[I/O]]. Protože se řádky komprimují jednotlivě, MySQL nemusí dekomprimovat celou tabulku (dokonce ani stránku ne), když potřebuje načíst jediný řádek. [31] => [32] => == Související články == [33] => * [[InnoDB]] [34] => * [[MySQL]] [35] => [36] => == Externí odkazy == [37] => * [http://dev.mysql.com/doc/mysql/en/myisam-storage-engine.html Dokumentace MyISAM] [38] => [39] => {{Pahýl}} [40] => [41] => [[Kategorie:MySQL]] [] => )
good wiki

MyISAM

MyISAM je nejpoužívanější a až do verze 5. 1 výchozí formát úložiště dat (storage engine) v databázovém systému MySQL.

More about us

About

Expert Team

Vivamus eget neque lacus. Pellentesque egauris ex.

Award winning agency

Lorem ipsum, dolor sit amet consectetur elitorceat .

10 Year Exp.

Pellen tesque eget, mauris lorem iupsum neque lacus.

You might be interested in

,'MySQL','index','bajt','disk','buffer','fulltext','InnoDB','PowerPC','I/O','Sun SPARC','Byte#Terabyte','offline'