{"id":230545,"date":"2022-11-28T20:10:00","date_gmt":"2022-11-28T17:10:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=230545"},"modified":"2022-11-28T20:11:36","modified_gmt":"2022-11-28T17:11:36","slug":"wordpressin-kehittaejaen-opas-mysql-tietojen-rekonstruointiin","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/fi\/wordpressin-kehittaejaen-opas-mysql-tietojen-rekonstruointiin\/","title":{"rendered":"WordPressin kehitt\u00e4j\u00e4n opas MySQL-tietojen rekonstruointiin"},"content":{"rendered":"\n<p>Jossain vaiheessa jokaisen kehitt\u00e4j\u00e4n uralla tulee olemaan aika, jolloin teet jotain, joka jarruttaa tuotantoa.<\/p>\n<ul>\n<li>Ehk\u00e4p\u00e4 ty\u00f6nn\u00e4t koodin, joka rikkoo v\u00e4limuistin, joka palvelee tietoja miljoonille ihmisille,<\/li>\n<li>Ehk\u00e4 p\u00e4ivit\u00e4t sovelluksen ja p\u00e4\u00e4t\u00e4t puhaltaa pois tiedot, joita ei ole varmuuskopioitu,<\/li>\n<li>Tai ehk\u00e4 ty\u00f6nn\u00e4t muutoksen, joka &quot;toimii koneellasi&quot;, mutta letkuttaa kokonaan l\u00e4hteen ohjausvaraston.<\/li>\n<\/ul>\n<p>Ja muita esimerkkej\u00e4 on paljon. Olen varma, ett\u00e4 voit nopeasti nimet\u00e4 viisi muuta itse.<\/p>\n<p>Olen sitoutunut (pun tarkoittamani, tavallaan) oman osuuteni kaikesta yll\u00e4 olevasta, mutta yhdest\u00e4 asiasta, jonka n\u00e4en tiloissamme ty\u00f6skentelevilt\u00e4 ihmisilt\u00e4.<\/p>\n<p>Toisin sanoen ne, jotka ty\u00f6skentelev\u00e4t tietokannan tukemien web-sovellusten parissa \u2013 on puutteellinen ymm\u00e4rrys tietokannan organisoinnista tiedostoj\u00e4rjestelm\u00e4tasolla ja siit\u00e4, kuinka on mahdollista rekonstruoida tietoja, vaikka sinulla ei olisikaan normaalia varmuuskopiota, josta toimia.<\/p>\n<p>T\u00e4ss\u00e4 viestiss\u00e4 aion sukeltaa syv\u00e4lle MySQL-tietokantaorganisaatioon tiedostoj\u00e4rjestelm\u00e4tasolla, kuinka voit palauttaa tietoja siit\u00e4 verrattuna varmuuskopiotiedostoon, jos joudut sellaiseen tilanteeseen, ja tarjoamaan viitteit\u00e4 (tai kirjanmerkkej\u00e4) tarvitset niit\u00e4.<\/p>\n<h2>MySQL-tietojen rekonstruointi<\/h2>\n<p>Selvyyden vuoksi aion puhua MySQL-tietokannasta, joka toimii *nix-pohjaisen k\u00e4ytt\u00f6j\u00e4rjestelm\u00e4n muunnelmassa (joten tarkastelet Linux- tai macOS-jakelua).<\/p>\n<p>Tiedostojen sijainnit (jotka k\u00e4sittelen hetken) vaihtelevat Windows-pohjaisissa j\u00e4rjestelmiss\u00e4, mutta sinun on etsitt\u00e4v\u00e4 ne <strong><a href=\"https:\/\/dev.mysql.com\/doc\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">MySQL-oppaasta tai vastaavasta resurssista.<\/a><\/strong><\/p>\n<p>Asia on: Ennen kuin menet liian pitk\u00e4lle t\u00e4h\u00e4n artikkeliin, tied\u00e4 miss\u00e4 tiedostot sijaitsevat k\u00e4ytt\u00f6j\u00e4rjestelm\u00e4ss\u00e4si. Jos esimerkiksi k\u00e4yt\u00e4t macOS:\u00e4\u00e4 ja l\u00f6yd\u00e4t sen todenn\u00e4k\u00f6isesti <strong>hakemistosta \/usr\/local\/mysql\/data.<\/strong><\/p>\n<p>K\u00e4yt\u00e4n mieluummin <strong><a href=\"https:\/\/wordpress.mediadoma.com\/fi\/homebrew-node-ja-gulp-wordpressin-kehittaemiseen\/\" title=\"Homebrew&#039;ta\">Homebrew&#8217;ta<\/a><\/strong>, joten MySQL-tietokantani ovat <strong>\/usr\/local\/var\/mysql<em><\/em><\/strong> .<em><\/em> Ja kuten yll\u00e4 n\u00e4et, huomaat tiedostoja, joilla on sama nimi kuin j\u00e4rjestelm\u00e4ss\u00e4si olevilla tietokannoilla. .<\/p>\n<h3>Miten tietokannat j\u00e4rjestet\u00e4\u00e4n<\/h3>\n<p>Pintatasolla se n\u00e4ytt\u00e4\u00e4 melko yksinkertaiselta. Mutta jos aiot avata hakemiston yll\u00e4 mainitulla tavalla, huomaat, ett\u00e4 suuri osa n\u00e4kem\u00e4st\u00e4si on hakemistoja \u2013 ei tiedostoja sin\u00e4ns\u00e4 \u2013 jotka sis\u00e4lt\u00e4v\u00e4t lis\u00e4tietoja.<\/p>\n<\/p>\n<p>Jos syvenn\u00e4t yhteen hakemistoista, n\u00e4et useita tiedostoja:<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-163965-61e75bde646e7.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-163965-61e75bde646e7.png\" alt=\"WordPressin kehitt\u00e4j\u00e4n opas MySQL-tietojen rekonstruointiin\"><\/a><\/p>\n<p>N\u00e4it\u00e4 tiedostoja ovat seuraavat:<\/p>\n<ul>\n<li>MAAILMAN<\/li>\n<li>MINUN MIN\u00c4<\/li>\n<li>FRM<\/li>\n<li>IBD<\/li>\n<\/ul>\n<p>Ja jokainen n\u00e4ist\u00e4 tiedostotyypeist\u00e4 on olemassa jokaiselle tietokannan taulukolle.<\/p>\n<p>Katsotaanpa n\u00e4it\u00e4 siis tarkemmin saadaksemme paremman k\u00e4sityksen siit\u00e4, mist\u00e4 tietokanta koostuu.<\/p>\n<h4>1 Tietokanta on joukko tiedostoja<\/h4>\n<p>Yleisesti ottaen useimmat meist\u00e4 tiet\u00e4v\u00e4t, ett\u00e4 MySQL on <strong><a href=\"https:\/\/en.wikipedia.org\/wiki\/Relational_database\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">relaatiotietokanta<\/a><\/strong> ja jokainen tietokanta koostuu joukosta taulukoita, jotka kaikki tallentavat erityyppist\u00e4 tietoa (ja monet taulukot liittyv\u00e4t jollain tavalla toisiinsa, vaikka se olisi vain arvo yksi sarake).<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-163965-61e75be15f8cc.jpg\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-163965-61e75be15f8cc.jpg\" alt=\"WordPressin kehitt\u00e4j\u00e4n opas MySQL-tietojen rekonstruointiin\"><\/a><\/p>\n<p>Mutta t\u00e4m\u00e4 viesti ei koske tietokannan relaatiota eik\u00e4 sit\u00e4, kuinka voimme suorittaa kyselyit\u00e4 sit\u00e4 vastaan. (Jos olet kiinnostunut, kokeile sit\u00e4 &#8211; se kaikki perustuu <strong><a href=\"https:\/\/en.wikipedia.org\/wiki\/Tuple_relational_calculus\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">monikkolaskeluun<\/a><\/strong> .)<\/p>\n<p>Sen sijaan t\u00e4ss\u00e4 on kyse sen ymm\u00e4rt\u00e4misest\u00e4, ett\u00e4 jokaisessa taulukossa on joukko tiedostoja, jotka viittaavat kunkin taulukon sis\u00e4lt\u00e4miin tietoihin. Ja<\/p>\n<h4>2 Tiedostotyyppien ymm\u00e4rt\u00e4minen<\/h4>\n<p>Koska jokainen tietokannan taulukko koostuu yll\u00e4 olevista tiedostotyypeist\u00e4, tarkastellaan yksitt\u00e4ist\u00e4 tiedostotyyppi\u00e4 ja m\u00e4\u00e4ritet\u00e4\u00e4n sitten rooli jokaisessa taulukossa (ja lopulta kuinka t\u00e4m\u00e4 vaikuttaa koko tietokantaan).<\/p>\n<ul>\n<li><strong>MYD<\/strong>. T\u00e4m\u00e4 tiedosto sis\u00e4lt\u00e4\u00e4 tiedot, jotka on tallennettu tietokantataulukon riveille. T\u00e4m\u00e4 tiedosto liittyy l\u00e4heisesti FRM-tiedostoon.<\/li>\n<li><strong>FRM<\/strong>. T\u00e4m\u00e4 tiedosto sis\u00e4lt\u00e4\u00e4 taulukkomuotoiset tiedot (joka sis\u00e4lt\u00e4\u00e4 esimerkiksi tietokannan kunkin sarakkeen rakenteen, sen sis\u00e4lt\u00e4mien tietojen tyypin ja niin edelleen).<\/li>\n<li><strong>MYI<\/strong>. T\u00e4m\u00e4 on tietokantahakemisto. Jos k\u00e4yt\u00e4t MyISAM-tietokantaa (jota useimmat meist\u00e4 k\u00e4ytt\u00e4v\u00e4t t\u00e4ll\u00e4 hetkell\u00e4 InnoDB:t\u00e4), sinulla on t\u00e4m\u00e4 tiedosto. Lis\u00e4ksi tiedoissa on tietoa siit\u00e4, onko tiedot suljettu kunnolla vai ei. Pid\u00e4 t\u00e4t\u00e4 tiedostona itse taulukon eheydest\u00e4. Ei siin\u00e4 olevaa tietoa, ei sen muotoa.<\/li>\n<li><strong>IBD<\/strong>. T\u00e4m\u00e4 on tiedostotyyppi, joka liittyy InnoDB-tietokantataulukoihin (joten et ehk\u00e4 n\u00e4e t\u00e4t\u00e4 tietokannan hakemistossa). Jos kuitenkin teet niin, on t\u00e4rke\u00e4\u00e4 tiet\u00e4\u00e4, ett\u00e4 InnoDB-pohjaiset tietokannat tallentavat tietoja kustakin t\u00e4m\u00e4n tiedoston taulukosta.<\/li>\n<\/ul>\n<p>Yll\u00e4 olevissa tiedoissa on kaksi muuta tutkimisen arvoista aihetta.<\/p>\n<ol>\n<li>MyISAM<\/li>\n<li>InnoDB<\/li>\n<\/ol>\n<p>Ennen kuin tarkastelet kaikkia n\u00e4it\u00e4, huomaa, ett\u00e4 MyISAM ja InnoDB ovat niin sanottuja tallennusmoottoreita. Se kuulostaa hienolta, mutta se liittyy siihen, kuinka tietokantaohjelmisto hallitsee tietojen <strong><a href=\"https:\/\/en.wikipedia.org\/wiki\/Create,_read,_update_and_delete\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">luomista, lukemista, p\u00e4ivitt\u00e4mist\u00e4 ja poistamista<\/a><\/strong>.<\/p>\n<h5>MyISAM &amp; InnoDB: Mit\u00e4 eroa on?<\/h5>\n<p>Jokainen n\u00e4ist\u00e4 tallennuskoneista eroaa siit\u00e4, miten ne k\u00e4sittelev\u00e4t tapahtumia, lukitsemista, palautuksia ja hakuja. Niille, jotka ovat tietokannan yll\u00e4pit\u00e4ji\u00e4, kaikki edell\u00e4 mainitut ovat tuttuja (mutta et todenn\u00e4k\u00f6isesti my\u00f6sk\u00e4\u00e4n lue t\u00e4t\u00e4 \ud83d\ude43).<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-163965-61e75be446350.jpg\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-163965-61e75be446350.jpg\" alt=\"WordPressin kehitt\u00e4j\u00e4n opas MySQL-tietojen rekonstruointiin\"><\/a><\/p>\n<p>Ei tietenk\u00e4\u00e4n t\u00e4m\u00e4n tyyppinen moottori.<\/p>\n<p>Meille muille meill\u00e4 on t\u00e4m\u00e4:<\/p>\n<ul>\n<li>Tapahtumat tapahtuvat aina, kun v\u00e4hint\u00e4\u00e4n kahta k\u00e4sky\u00e4, kuten SELECT ja UPDATE tai INSERT ja DELETE, tai mit\u00e4 tahansa n\u00e4iden kahden (tai useamman) yhdistelm\u00e4\u00e4 k\u00e4ytet\u00e4\u00e4n yhdess\u00e4 toistensa kanssa. Joten jos valitsisit tiedot ja POISTAisit sitten tulokset, sinulla olisi tapahtuma.\n<ul>\n<li><strong>MyISAM ei tue tapahtumia.<\/strong> T\u00e4m\u00e4 tarkoittaa, ett\u00e4 jos &quot;tapahtuma&quot; keskeytyy, se vaikuttaa kaikkiin toiminnan aikana k\u00e4siteltyihin tietoihin. T\u00e4ytyy sanoa, ett\u00e4 t\u00e4t\u00e4 ei k\u00e4ytet\u00e4.<\/li>\n<li>InnoDB puolestaan \u200b\u200btakaa, ett\u00e4 muutoksia ei tehd\u00e4 taulukkoon ennen kuin tapahtuma on suoritettu loppuun. Toisin sanoen muutoksia ei sitouduta tietokantaan.<\/li>\n<\/ul>\n<\/li>\n<li>Jokaisen varastomoottorin lukitus vaihtelee p\u00f6yt\u00e4tasolla tai rivitasolla. Aina kun suoritat kysely\u00e4 taulukkoa vastaan, MyISAM lukitsee koko taulukon, kunnes prosessi on valmis. InnoDB puolestaan \u200b\u200blukitsee vain ne rivit, joihin t\u00e4m\u00e4 vaikuttaa. T\u00e4m\u00e4 on t\u00e4rke\u00e4 ero, koska se tarkoittaa, ett\u00e4 voit jatkaa toimintaasi taulukossa, mutta ei samoilla riveill\u00e4, aina kun k\u00e4yt\u00e4t InnoDB:t\u00e4.<\/li>\n<li>Palautukset eiv\u00e4t ole mahdollisia MyISAMissa. T\u00e4m\u00e4 tarkoittaa, ett\u00e4 kun muutos on tehty, se on tehty. InnoDB tarjoaa palautuksia. Oletetaan, ett\u00e4 teet muutoksen taulukkoon, teit vahingossa jotain, jota et aikonut tehd\u00e4, ja voit palauttaa sen edelliseen tilaan. T\u00e4t\u00e4 ei kuitenkaan pid\u00e4 sekoittaa varmuuskopioon. Se on enemm\u00e4n kuin tapahtuman &quot;kumoa&quot;-toiminto.<\/li>\n<li>Haku, erityisesti siin\u00e4, miten rakennamme tietokantaamme, on avainasemassa, kun j\u00e4rjest\u00e4mme tietoja tietokantojemme sis\u00e4ll\u00e4. Yksinkertaisesti sanottuna InnoDB tukee <strong><a href=\"https:\/\/dev.mysql.com\/doc\/refman\/5.6\/en\/innodb-fulltext-index.html\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">FULLTEXT-<\/a><\/strong> indeksointia (MySQL 5.6.4:st\u00e4 alkaen). Mutta jos is\u00e4nt\u00e4si tai palveluntarjoajasi ei salli FULLTEXT-indeksej\u00e4, v\u00e4it\u00e4n, ett\u00e4 se ei ole dealbreaker.<\/li>\n<\/ul>\n<p>Kun otetaan huomioon kaikki yll\u00e4 olevat tiedot, jokaisen on n\u00e4ht\u00e4v\u00e4, ett\u00e4 InnoDB-tallennusmoottorin edut ovat paljon suuremmat kuin MyISAM-tallennusmoottorin edut, varsinkin jos haluat k\u00e4ytt\u00e4\u00e4 MySQL-versiota, joka on v\u00e4hint\u00e4\u00e4n yht\u00e4 suuri kuin 5.6.4.<\/p>\n<h4>3 Tietokannan luominen uudelleen<\/h4>\n<p>Oletetaan t\u00e4ss\u00e4 vaiheessa, ett\u00e4 tied\u00e4t, ett\u00e4 sinulla on p\u00e4\u00e4sy tietokannan muodostaviin tiedostoihin k\u00e4ytt\u00f6j\u00e4rjestelm\u00e4st\u00e4.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-163965-61e75be6c364a.jpg\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-163965-61e75be6c364a.jpg\" alt=\"WordPressin kehitt\u00e4j\u00e4n opas MySQL-tietojen rekonstruointiin\"><\/a><\/p>\n<p>Ehk\u00e4 se on edellinen varmuuskopio, ehk\u00e4 pystyt paikantamaan tiedostot levylt\u00e4 tai ehk\u00e4 voit hakea ne jollain muulla tavalla \u2013 ja sinun on palautettava tietokanta aiempaan kohtaan.<\/p>\n<h5>1 \u00c4l\u00e4 tee sit\u00e4 tuotannossa<\/h5>\n<p>Ennen kuin teet mit\u00e4\u00e4n, luo tyhj\u00e4 tietokanta paikalliselle koneellesi ja yrit\u00e4 sitten tuoda tiedot. Mutta j\u00e4lleen kerran, t\u00e4m\u00e4 ei ole kuin pelkk\u00e4 tietokannan k\u00e4ytt\u00f6liittym\u00e4 SQL-tiedoston tuomiseen.<\/p>\n<p>Luo sen sijaan hakemisto, joka vastaa luotavan tietokannan nime\u00e4. T\u00e4ss\u00e4 viestiss\u00e4 k\u00e4yt\u00e4n esimerkki\u00e4 <strong>trunkdev<\/strong> (koska t\u00e4ss\u00e4 ty\u00f6skentelen k\u00e4ytt\u00e4m\u00e4ll\u00e4 uusinta versiota <strong><a href=\"https:\/\/wordpress.org\/download\/source\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">WordPress trunkista<\/a><\/strong> ).<\/p>\n<h5>2 Varmuuskopioi olemassa oleva tietokanta<\/h5>\n<p>Varmuuskopioi seuraavaksi olemassa oleva tietokanta niin paljon kuin mahdollista \u2013 olipa kyseess\u00e4 tietokannan k\u00e4ytt\u00f6liittym\u00e4 tai tiedostojen kopio. Kopioi sen j\u00e4lkeen tiedostot l\u00e4hdesijainnista luomaasi hakemistoon.<\/p>\n<p>Sinun pit\u00e4isi t\u00e4ss\u00e4 vaiheessa pysty\u00e4 lataamaan valitsemasi tietokantak\u00e4ytt\u00f6liittym\u00e4 ja n\u00e4hd\u00e4 juuri kopioimiesi tietokantatiedostojen tiedot. T\u00e4m\u00e4 riippuu siit\u00e4, ett\u00e4 tiedostot eiv\u00e4t ole vioittuneet ja tietokantapalvelin k\u00e4ynniss\u00e4.<\/p>\n<h5>3 \u00c4l\u00e4 asenna muita ohjelmistoja<\/h5>\n<p>Huomaa, ett\u00e4 t\u00e4ss\u00e4 vaiheessa en yritt\u00e4isi asentaa siihen muita ohjelmistoja, kuten WordPressi\u00e4 tai muita tietoja. Ty\u00f6skentele sen sijaan suoraan tietojen kanssa. Olettaen, ett\u00e4 se n\u00e4kyy k\u00e4ytt\u00f6liittym\u00e4ss\u00e4si, tee oikea varmuuskopio tai vie tiedosto SQL-tiedostoksi, jotta voit helpommin palauttaa tiedot tulevaisuudessa.<\/p>\n<p>Jotkut k\u00e4ytt\u00f6liittym\u00e4t antavat sinulle mahdollisuuden vied\u00e4 vain tiettyj\u00e4 taulukoita. T\u00e4ss\u00e4 tapauksessa varmuuskopioi kaikki. Joidenkin tietokantojen osalta t\u00e4m\u00e4 kest\u00e4\u00e4 kauan; muille, ei niin paljon. Kaikki riippuu projektin koosta.<\/p>\n<h5>4 Ty\u00f6skentele tietojen kanssa<\/h5>\n<p>T\u00e4ss\u00e4 vaiheessa sinun pit\u00e4isi pysty\u00e4 k\u00e4sittelem\u00e4\u00e4n tietokantaa k\u00e4ytt\u00f6liittym\u00e4n tai SQL:n avulla. Jos et ole mukava tai edes varma kuinka tehd\u00e4 t\u00e4m\u00e4, keskustele jonkun kanssa, joka voi olla uskomattoman herkk\u00e4 (teill\u00e4h\u00e4n on kuitenkin tietokannan rekonstruointi tiedostoista, eik\u00f6 niin?)<\/p>\n<p>Kun uskot, ett\u00e4 sinulla on tiedot paikassa, joka on valmis palautettavaksi mihin tahansa sovellukseen, jossa tiedot ovat kadonneet, tiedot ovat vioittuneet tai niiss\u00e4 on vain virheellisi\u00e4 tietoja, on aika valmistautua ottamaan tiedot paikalliselta koneeltasi ja l\u00e4hett\u00e4m\u00e4\u00e4n ne takaisin l\u00e4hde.<\/p>\n<h3>Takaisin L\u00e4hteeseen<\/h3>\n<p>Ensinn\u00e4kin kaikki edell\u00e4 mainitut on suositeltavaa tehd\u00e4 v\u00e4h\u00e4liikenteen aikoina, joten varmista, ett\u00e4 aina kun teet t\u00e4m\u00e4n, et tee sit\u00e4 ruuhka-aikoina. T\u00e4m\u00e4n pit\u00e4isi olla sanomattakin selv\u00e4\u00e4.<\/p>\n<p>Ota seuraavaksi varmuuskopio tietokannasta ennen kuin alat k\u00e4ytt\u00e4\u00e4 sit\u00e4. Tallenna tiedosto sellaiseen paikkaan, jonka voit helposti muistaa ja johon p\u00e4\u00e4set helposti k\u00e4siksi. Jos jokin menee pieleen tuotavien tietojen k\u00e4yt\u00f6ss\u00e4, olet suojattu ja palautat vain sen, mit\u00e4 olet tuomassa. Selvyyden vuoksi vie koko tietokanta SQL-muodossa.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-163965-61e75be94139d.jpg\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-163965-61e75be94139d.jpg\" alt=\"WordPressin kehitt\u00e4j\u00e4n opas MySQL-tietojen rekonstruointiin\"><\/a><\/p>\n<p>Ota nyt tietokanta, joka sinulla on paikallisella koneellasi, ja vie tiedot my\u00f6s SQL-tiedostoon. Avaa viety tiedosto ja varmista, ett\u00e4 se k\u00e4ytt\u00e4\u00e4 <strong>CREATE<\/strong> &#8211; k\u00e4sky\u00e4 tietokannan luomiseen oikealla nimell\u00e4 ja taulukot my\u00f6s oikeanimill\u00e4.<\/p>\n<p>Olettaen, ett\u00e4 kaikki menee hyvin, kaikki tuomasi palautetaan t\u00e4sm\u00e4lleen sellaisena kuin sen pit\u00e4isi olla ja kuten n\u00e4et paikallisella laitteellasi. Jos et n\u00e4e sit\u00e4, tuo aiemmin viem\u00e4si tiedosto. muuten olet hyv\u00e4 l\u00e4htem\u00e4\u00e4n.<\/p>\n<h4>Ent\u00e4 jos se ei toimi?<\/h4>\n<p>Jos se ei auta, sinun on ment\u00e4v\u00e4 perusongelmaan:<\/p>\n<ul>\n<li>Eik\u00f6 se toiminut, koska palvelimen tiedostoissa oli jotain vikaa?<\/li>\n<li>Eik\u00f6 se toiminut paikallisella koneellasi luomasi tietokannan tyypin vuoksi?<\/li>\n<li>K\u00e4yt\u00e4tk\u00f6 samaa tallennusmoottoria? Sinun pit\u00e4isi olla, koska se tulee tiedostoista.<\/li>\n<li>Onko tietokannan eheys kiinte\u00e4 paikallisesti?<\/li>\n<li>Poistetaanko palvelimen tietokanta ennen tietojen tuontia paikalliselta koneeltasi?<\/li>\n<\/ul>\n<p>Jos se ei toimi t\u00e4ss\u00e4 vaiheessa, se johtuu yleens\u00e4 jostain yll\u00e4 olevasta. Se voi kuitenkin olla jotain muuta. Olen tehnyt kaikkeni tarjotakseni mahdollisimman paljon tietoa MySQL-tietokannoista, niiden rakenteesta ja tarvittavista vaiheista tietokannan rekonstruoimiseksi tiedostoista, mutta en pysty kaappaamaan kaikkia mahdollisia reunatapauksia.<\/p>\n<h2>Varmuuskopioi tiedot aina (\u00e4l\u00e4k\u00e4 oleta, ett\u00e4 se on tehty)<\/h2>\n<p>Toivon kuitenkin, ett\u00e4 kaikki yll\u00e4 olevat tiedot antavat syvemm\u00e4n k\u00e4sityksen siit\u00e4, mit\u00e4 WordPressin alla piilee, jos kohtaat t\u00e4m\u00e4n ongelman yksin tai asiakkaan kanssa.<\/p>\n<p>Ja lopuksi aina varmuuskopio. Tee manuaaliset varmuuskopiot, tee automaattiset varmuuskopiot ja tee ne usein. \u00c4l\u00e4 my\u00f6sk\u00e4\u00e4n rajoita sit\u00e4 tietokantaan. Varmuuskopioi tietokanta, sovellus ja kaikki muu ratkaisun tehostamiseen tarvittava.<\/p>\n<p>Jos teet niin, sinun ei tarvitse huolehtia kaikesta edell\u00e4 mainitusta.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/tommcfarlin.com\" class=\"external external_icon\">tommcfarlin.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Kaikki mit\u00e4 halusit tiet\u00e4\u00e4 siit\u00e4, miten MySQL-perustietokanta on j\u00e4rjestetty tiedostoj\u00e4rjestelm\u00e4tasolla ja miten edet\u00e4 MySQL-tietojen rekonstruoinnissa.<\/p>\n","protected":false},"author":1,"featured_media":163966,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[719,895,843],"tags":[1166],"class_list":["post-230545","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-kehittaejae","category-koodi","category-opetusohjelmia","tag-affiai-fi"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/posts\/230545","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/comments?post=230545"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/posts\/230545\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/media\/163966"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/media?parent=230545"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/categories?post=230545"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/tags?post=230545"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}