Táblatípusok mysql segítséget
MyISAM táblák
Által használt alapértelmezett MySQL feloldásáig az 5.5-ös verzió.
Minden MyISAM lemezen tárolt három fájlokat (a mysql / data könyvtárban a könyvtár), a fájl nevét egybeesik a tábla nevét, és a kiterjesztés lehet az alábbi értékeket:
.frm - tábla szerkezetét, ez a fájl információkat tartalmaz a nevét és típusú oszlopok és indexek;
.MYD - ez a fájl tartalmazza a táblázat adatainak;
.MYI - indexek a táblázatban szereplő fájl.
MyISAM táblázatok számos funkció:
A legnagyobb számú indexek - 64 (version 4.1.2). Minden index lehet maximum 16 oszlopok.
A kiadás MySQL 4.1, az ezt kódoló be lehet állítani az egyes szöveges oszlop.
Megengedett indexelés szöveges oszlop, beleértve a változó hosszúságú.
Támogatja a teljes szöveges keresést.
Táblázatok egy zászló jelzi a helyes lezárását az asztalra. Ha a szerver leállt Vészhelyzetben a fedezetlen indító zászló jelzi a lehetőségét, kár, hogy a táblázatok és a szerver automatikusan próbálja tesztelni őket, és helyreállítani.
MyISAM táblák, akkor megtekintéséhez / javítás myisamchk segédprogramot.
MyISAM táblák lehet tömörített myisampack.
A MyISAM háromféle típusú táblák. Ketten függően automatikusan kiválasztja a típusú oszlop. Harmadszor - tömörített táblák - csak akkor hozható létre a myisampack eszköz.
1.Ctaticheskie táblázat (fix hosszúságú)
Ez a formátum által elfogadott alapértelmezett. Akkor alkalmazzák, ha a táblázat nem tartalmaz oszlopokat VARCHAR, BLOB vagy TEXT. Ez a formátum - a legtöbb egyszerű és biztonságos, valamint a leggyorsabb, ha dolgozik lemezek. Sebesség eléréséig rovására könnyű megtalálni információk a meghajtó: statikus formátumú táblázatokat az index az is elég, hogy szaporodnak a sor számát a hossza. Ezen kívül egy asztal vizsgálat nagyon könnyen olvasható állandó rekordok száma az egyes leolvasások a lemezről. Ha hiba történik írása közben egy fix méretű MyISAM fájl `myisamchk„minden esetben képes legyen könnyen meghatározni hol kezdődik és végződik minden húr. Tehát általában visszaállítható az összes rekordot, kivéve azokat, amelyek részben felülírt.
2.Dinamicheskie asztal
A használt formátum táblák, amelyek az oszlopok VARCHAR, BLOB, vagy a szöveget, vagy ha az asztal jött létre azzal a paraméterrel ROW_FORMAT = dinamikus. Ez némileg bonyolultabb formában, hiszen minden sorban van egy fejléc, amely tartalmazza a hosszát. Egy rekord is a végén több, mint egy helyen, ha nőtt a frissítés során. Töredezettségmentesítéséhez egy tábla, akkor a parancs OPTIMIZE asztal vagy myisamchk. Ha statikus adatok hozzáférhet / változás néhány VARCHAR vagy BLOB oszlopban ugyanannál az asztalnál, hogy elkerüljék fragmentáció a dinamikus oszlopok jobb menjen egy másik asztalhoz.
3.Szhatye asztal
Táblázatok Az ilyen típusú csak olvasható. Ezek felhasználása során keletkezett kiegészítő eszközként myisampack. Annak ellenére, hogy a MyISAM méret nagyon megbízható (összes módosítást rögzít a táblázat SQL utasítás a visszatérési értékeket), a táblázat azonban sérülhet. Ez történik a következő esetekben:
mysqld elpusztult a folyamat során a feljegyzéseket;
A hirtelen leállítása a számítógép (például, ha a tápfeszültség ki volt kapcsolva);
Hardver hiba;
A külső program (pl myisamchk) megnyitni egy asztalt.
szoftver hiba a kódot, vagy MySQL MyISAM.
InnoDB táblák
A MySQL 5.5 egy olyan típusú alapértelmezett. InnoDB tábla típusa által kifejlesztett Innobase. Táblázatokban az ilyen típusú nagy teljesítményű és stabil tárolását A táblázatok adatai akár 1 TB, és a terhelés a szerveren akár 800 insert / update másodpercenként. Funkciók, mint például InnoDB:
Minden van tárolva egy táblázatban helyet, így az asztal nevének egyedinek kell lennie.
Az adatok tárolása egy táblázatban tér lehetővé teszi, hogy távolítsa el a korlátozást, hogy mennyi a táblázatokban. Fájl asztalokkal lehet bontani kisebb darabokra, és elosztott több lemezre, vagy akár host.
Asztalok támogatja az automatikus átállást.
Ez a típusú táblákat MySQL az egyetlen, amely támogatja a lépcsőzetes törlések és idegen kulcs.
Blokkolva szintjén az egyéni nyilvántartások.
Van fokozott támogatást kódolást.
MERGE asztalok
A MySQL típusú létezik MERGE táblázatok (vagy asztalra MRG_MyISAM), amely a gyűjtemény azonos táblázatok MyISAM, amelyeket fel lehet használni, mint egy táblázat. A több táblázat is használható tolkokomandy SELECT, törlését és frissítését. Ha megpróbáljuk alkalmazni az asztalra MERGE parancs csökkenése, ez csak akkor működik meghatározásáról szóló MERGE.
MEMORY asztal
Következő típusú MEMORY asztalok (HEAP) RAM-ban tárolja. ami miatt minden kérést ilyen táblázatok nagyon gyors. A hátránya egy ilyen tábla - a teljes adatvesztés, ha a szerver meghibásodik. Ezért ezek a táblák tárolják a fő ideiglenes adatok, amelyek könnyen újra helyreáll. Amikor létrehoz egy táblázatot típusú MEMORY, létrehoz egy fájlt a frm. ahol a tábla szerkezetét határozza. Fékezéskor vagy a szerver újraindítására, a tábla szerkezete az adatok is, de az összes információt tartalmazza a táblázatban elvész, mert csak RAM-ban tárolt. Minden alkalommal, amikor újraindítja a szervert, újra létrehozni a táblát nem szükséges, szerkezete továbbra is. MEMORY tábla típus rendelkezik bizonyos korlátokkal:
Az indexek használatával csak a műveletek összehasonlítása a szereplők «=» és «⇔», hogy más piaci szereplőknek, mint például a „>” vagy "<», индексирование столбцов не имеет смысла.
Mint MERGE táblázatok segítségével csak nem egyedi indexek.
Nem engedélyezett oszlopok típusú TEXT és BLOB.
Korábbi verzióit MySQL 4.1 táblázatokban az ilyen típusú nem podderzhivalyas AUTO_INCREMENT.
asztalok példa
Példa típus egy csonka. hozzon létre egy táblázatot az ilyen típusú lehet, de nem lehet adatok fogadására és küldésére. Amikor létrehoz egy táblázatot a típus és a memória létrehozott táblázatok csak egy frm a fájlt úgy határozza meg a szerkezet a táblázatban.
Táblázatok BDB (BerkeleyDB)
BDB táblázatok szolgálnak tranzakciós felvezető BerkeleyDB, amely által kifejlesztett Sleepycat. Amikor létrehoz táblákat az ilyen típusú vannak kialakítva két fájlt: .frm - tárolt táblázat szerkezetét. állományba - a tárolt adatok és az indexek.
Jellemzői BDB táblázatok:
Asztali naplót. amely javítja a stabilitást a bázis és növeli a valószínűségét sikeres behajtás esetén a hiba.
BDB tábla típus formájában tárolt bináris fák. Ez a technika lassítja a leolvasó tároló tábla (mondjuk letölteni az összes táblázat sorai), és növeli az elfoglalt terület a lemezen asztalra. Azonban a keresés az egyes értékek a táblázatban gyorsabbá válik. Minden más táblák tárolja a indexek formájában bináris fák.
Minden BDB asztal kell egy elsődleges kulcsot, annak hiányában a rejtett elsődleges kulcs létre a AUTO_INCREMENT attribútumot.
Az ilyen típusú táblák támogatott ügylet az oldal szintjén.
Számítva a sorok számát egy táblázatban a COUNT () függvény lassabb annak a ténynek köszönhető, hogy a számlálás sorok BDB asztalok (ellentétben MyISAM) a szerver oldalon nem támogatja, és egy komplett közép történik minden kapcsolat.
A kulcsok nincsenek csomagolva, mint a MyISAM táblák és több helyet.
Amikor a BDB asztal foglalja el az összes rendelkezésre álló lemezterületet, van egy rollback ügylet és egy hibaüzenet. Ezzel szemben a BDB, MyISAM táblák egyszerűen várni a térre, így a szerver összeomlik.