E faʻapefea ona faʻatulaga faʻamaumauga a MySQL/MariaDB e faʻaliliu ai laulau InnoDB i laulau MyISAM?

O le afi teuina o se laulau fa'amaumauga e pei o le afi o se ta'avale; o le suia o le afi e suia ai loa le fa'atinoga ma uiga. E toatele tagata e manatu o se fa'amaumauga e na'o le teuina o fa'amaumauga, ae a e amata galue i ai... InnoDB 转成 La'uISAMOna pau lea o le a e iloa ai mea lilo o loo i tua atu.

Aiseā e manaʻo ai se tasi e sui mai InnoDB i MyISAM?

I le tele o tulaga, e vave atu le MyISAM, aemaise lava mo talosaga e mamafa le faitau ma faigofie le tusitusi e pei o faʻamaumauga o ogalaau ma fuainumera.

O lana faiga loka e pei o le laulau e matua sologa lelei lava lona faagaoioiga pe a maualalo le saoasaoa o le lokaina.

E le gata i lea, o le teuina o faila a MyISAM e sili atu ona faigofie ona malamalama i ai; tasi .MYD Teu fa'amaumauga, tasi .MYI O le teuina o fa'asinomaga, femalagaa'i, ma le faia o faila faaleoleo e matua faigofie lava.

Ae ui i lea, o fefaʻatauaiga a InnoDB ma le lagolago mai fafo e toetoe lava o se mea e manaʻomia i tulaga faigata faapisinisi.

O le mea lea, e tatau ona e iloa pe manaʻomia moni e lau pisinisi nei foliga aʻo leʻi faia le suiga.

Poloaiga autū: SUIA LE LAULAU

Ina ia liua se laulau e tasi mai InnoDB i MyISAM, e na'o le tasi le laina o le code e te mana'omia:

ALTER TABLE `你的表名` ENGINE = MyISAM;

A maeʻa le faʻatinoina, o le a ki le afi teuina o le laulau.

E lē o se mea faigofie ea lenā?

Fa'aliliuga fa'aputuga: Fausiaina otometi o tusitusiga

Afai e tele pe selau fo'i au laulau, o le suia fa'alelima o ia laulau e mautinoa lava e le aoga.

I le taimi nei, e mafai ona faʻaaogaina se fesili e tasi e otometi lava ona faʻatupuina ai faʻamatalaga o le liua o le batch:

SELECT CONCAT('ALTER TABLE `', table_name, '` ENGINE = MyISAM;') 
FROM information_schema.tables 
WHERE table_schema = '你的数据库名' AND engine = 'InnoDB';

A maeʻa ona faʻagaoioia, o le a faʻaalia ai le tele o... ALTER TABLE ... Fa'amatalaga.

Kopi nei faʻamatalaga ma faʻatino uma i le taimi e tasi e faʻamaeʻa ai le liua o le vaega i le taimi e tasi.

O le mea lea ua ta'ua o le "automated batch conversion".

Iloiloga o tulaga lamatia a'o le'i liua

E faʻapefea ona faʻatulaga faʻamaumauga a MySQL/MariaDB e faʻaliliu ai laulau InnoDB i laulau MyISAM?

Fa'atapula'aga o ki mai fafo

E lagolagoina e InnoDB ki mai fafo, ae e le lagolagoina e MyISAM.

O le taimi lava e maeʻa ai le liua, o le a tiaʻi ese tapulaʻa o ki mai fafo.

Afai e faalagolago lau pisinisi i le tapeina fa'asolosolo po'o le fa'afouga, o le a le aoga atoa le fa'avae pe a uma le liua.

Lagolago fefa'ataua'iga

E iai fefaʻatauaiga a InnoDB ma e lagolagoina e ia. COMMIT ma ROLLBACK.

E leai ni fefa'ataua'iga a le MyISAM, na'o loka i le tulaga o le laulau.

A maeʻa le liua, o le a le toe aoga uma tulafono faʻakomepiuta e fesoʻotaʻi ma fefaʻatauaʻiga, ma o le a le mafai ona toe faʻafoʻi i tua pe a iai se tuusaunoaga.

Fa'atinoga fa'atasi

E faʻaaoga e InnoDB le loka i le tulaga o laina, ae faʻaaoga e MyISAM le loka i le tulaga o laulau.

I tulaga e maualuga le tutusa o taimi, e masani ona loka e le MyISAM laulau, ma mafua ai ona faʻalavelaveina le faʻatinoga.

Fa'ailoga o le Fa'asinomaga

MySQL A o leʻi oʻo i le lomiga 5.6, sa i ai le MyISAM lana lava faʻasino tusitusiga atoa.

Ae i totonu MySQL Ua uma ona lagolagoina le fa'asino igoa atoa i lomiga 5.6 ma le 10+ o MariaDB ma InnoDB.

O le mea lea, se'i vagana ua e fa'aogaina se lomiga tuai, e leai se mana'oga e sui ai i le MyISAM mo le fa'asinomaga atoa o tusitusiga.

Faiga Sili Ona Lelei

  1. Fa'amaumauga fa'aleoleo A'o le'i faia le liua, ia mautinoa ua e auina atu i fafo. .sql E teuina faila ina ia mautinoa e mafai ona toe faʻafoʻisia i soʻo se taimi.

  2. Fausaga o le Lisi Siaki Faaaoga le poloaiga lenei e siaki ai pe iai se ki mai fafo:

    SHOW CREATE TABLE `你的表名`;
    
  3. Faatino le liua faʻaaogā ALTER TABLE I se isi itu, e mafai ona faʻaaogaina ni tusitusiga faʻaputu e faʻamaeʻa ai le liua.

  4. Siaki le tulaga o le soifua maloloina A maeʻa le liua, faʻatino le faʻatonuga:

    CHECK TABLE `你的表名`;
    OPTIMIZE TABLE `你的表名`;
    

    O lenei mea e faʻamaonia ai o loʻo galue lelei le laulau ma faʻasaʻoloto ai ni vaega.

Metotia toe fa'aleleia fa'afo'isia

Afai e matauina le faʻaletonu o le faʻatinoga poʻo ni faʻafitauli tau pisinisi pe a uma le liua, e mafai ona e toe foʻi i le InnoDB i soʻo se taimi:

ALTER TABLE `你的表名` ENGINE = InnoDB;

O le mea lea e ta'ua o le "fa'agaioiga e mafai ona toe fa'afo'i," e maua ai se auala e te sao ese ai.

Manatu fa'amaonia ua taua

E tusa ai Pepa Aloaia a le MySQL Fa'amatalaga:

"Fa'amauina o ki mai fafo"aiE na'o InnoDB e lagolagoina nts. Afai e te liua se laulau i le MyISAM, o ki uma mai fafo o le a le amana'iaina.
——Tusitaiala Fa'asino i le MySQL, Mataupu 14.6.6 Tapula'a o Ki Fafo

O lenei faʻamatalaga ua taʻu manino mai ai ia i tatou e le aoga atoatoa ki mai fafo i le MyISAM.

ma le Pepa Aloaia a MariaDB Sa faamamafaina foi e faapea:

"E lē lagolagoina e MyISAM fefaʻatauaʻiga. E lē tatau ona faʻaaogaina e talosaga e faʻalagolago i le faʻamaoni o fefaʻatauaʻiga le MyISAM."
——Fa'avae o le Malamalama o MariaDB, Afifi Teuina

O le mafuaʻaga lea e tatau ai ona e mafaufau faalua aʻo leʻi faia se suiga.

Loʻu Manatu ma le Faaiuga

O le liua o InnoDB i MyISAM e pei o le suia o le afi o se taʻavale taugata i se afi o se loli.

E mafai ona tamo'e, ae e matua ese lava le auala e tamo'e ai.

Afai e aofia ai i lau pisinisi ni fesili mama fa'amaumauga, atonu e sili atu ona talafeagai le saoasaoa ma le faigofie o MyISAM.

Ae peitaʻi, afai e faʻalagolago lau polokalama i fefaʻatauaiga ma ki mai fafo, o le faʻavavevaveina o le liua o ia ki e pei o le aveeseina o le taga ea.

O le mea lea, o le poto moni e lē o taoto i le tuliloaina o le saoasaoa ma le tauaso, ae o le paleni o le mautu ma le faatinoga.

O le filifiliga o le faʻamaumauga e fuafua ai le agaga o le polokalama.

O le poto masani i tomai o le fesuiaʻiina o afi teuina o faamatalaga e le gata o se faaaliga o le tomai faatekinolosi, ae o se faaleleia atili ai foi o mafaufauga faa-tusiata.

Afai o loʻo e mafaufau e faʻaliliuina i le tele o vaega, faʻamolemole faia muamua se iloiloga atoatoa o tulaga lamatia.

Fa'atino le siosiomaga fa'ata'ita'i fa'atasi e fa'ata'ita'i ai tulaga moni fa'apisinisi.

A maeʻa ona faʻamaonia ua saʻo mea uma, faʻatino loa i le siosiomaga gaosiga.

E lē o ni meataalo fa'amaumauga; o le fatu lea o fa'amaumauga fa'apisinisi.

Ma o oe lava lea e pulea le tata o lou fatu.

发表 评论

E le fa'asalalauina lau tuatusi imeli. Faʻaoga fanua e manaʻomia * Igoa

Tusitusiga Tusitusiga
Tusi i pito i luga