{"id":229952,"date":"2022-11-28T20:08:00","date_gmt":"2022-11-28T17:08:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=229952"},"modified":"2022-11-28T20:21:43","modified_gmt":"2022-11-28T17:21:43","slug":"wordpress-developers-guide-to-mysql-data-reconstruction","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/sv\/wordpress-developers-guide-to-mysql-data-reconstruction\/","title":{"rendered":"WordPress Developer&#8217;s Guide to MySQL Data Reconstruction"},"content":{"rendered":"\n<p>N\u00e5gon g\u00e5ng i varje utvecklares karri\u00e4r kommer det att finnas en tid d\u00e5 du g\u00f6r n\u00e5got som tankar produktionen.<\/p>\n<ul>\n<li>Kanske kommer du att trycka kod som slutar med att en cache som serverar data till miljontals m\u00e4nniskor,<\/li>\n<li>Kanske kommer du att uppdatera en applikation och sluta med att du bl\u00e5ser bort information som inte \u00e4r s\u00e4kerhetskopierad,<\/li>\n<li>Eller s\u00e5 kanske du trycker p\u00e5 en \u00e4ndring som &quot;fungerar p\u00e5 din maskin&quot; men som fullst\u00e4ndigt spolar k\u00e4llkontrollf\u00f6rr\u00e5det.<\/li>\n<\/ul>\n<p>Och det finns m\u00e5nga andra exempel. Jag \u00e4r s\u00e4ker p\u00e5 att du snabbt kan namnge fem till sj\u00e4lv.<\/p>\n<p>Jag har \u00e5tagit mig (typ av ordlek) min besk\u00e4rda del av allt ovan men en av de saker som jag ser fr\u00e5n m\u00e4nniskor som arbetar i v\u00e5rt utrymme.<\/p>\n<p>Det vill s\u00e4ga de som arbetar med databasst\u00f6dda webbapplikationer \u2013 \u00e4r bristen p\u00e5 f\u00f6rst\u00e5else f\u00f6r databasorganisation p\u00e5 filsystemsniv\u00e5 och hur det \u00e4r m\u00f6jligt att rekonstruera data \u00e4ven n\u00e4r man inte har en standard backup att fungera av.<\/p>\n<p>I det h\u00e4r inl\u00e4gget ska jag ta en djupdykning i MySQL-databasorganisationen p\u00e5 filsystemniv\u00e5, hur du kan \u00e5terst\u00e4lla information fr\u00e5n den kontra en s\u00e4kerhetskopia om du skulle hamna i den situationen, och ge referenser (eller bokm\u00e4rken) b\u00f6r du beh\u00f6ver dem.<\/p>\n<h2>MySQL-datarekonstruktion<\/h2>\n<p>F\u00f6r att vara tydlig, kommer jag att prata om en MySQL-databas som k\u00f6rs p\u00e5 en variant av ett *nix-baserat operativsystem (s\u00e5 du tittar p\u00e5 en distribution av Linux eller macOS).<\/p>\n<p>Platserna f\u00f6r filerna (som jag kommer att t\u00e4cka tillf\u00e4lligt) kommer att variera p\u00e5 ett Windows-baserat system, men du m\u00e5ste h\u00e4nvisa till <strong><a href=\"https:\/\/dev.mysql.com\/doc\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">MySQL-manualen<\/a><\/strong> eller en liknande resurs f\u00f6r att hitta dem.<\/p>\n<p>Po\u00e4ngen \u00e4r: Innan du g\u00e5r f\u00f6r l\u00e5ngt in i den h\u00e4r artikeln, vet var filerna finns i ditt operativsystem. Till exempel, om du k\u00f6r macOS och d\u00e5 kommer du sannolikt att hitta det i <strong>\/usr\/local\/mysql\/data.<\/strong><\/p>\n<p>Jag f\u00f6redrar att anv\u00e4nda <strong><a href=\"https:\/\/wordpress.mediadoma.com\/sv\/homebrew-node-och-gulp-foer-wordpress-utveckling\/\" title=\"Homebrew\">Homebrew<\/a><\/strong> s\u00e5 mina MySQL-databaser finns i <strong>\/usr\/local\/var\/mysql<em><\/em><\/strong> .<em><\/em> Och som du kan se ovan kommer du att m\u00e4rka filer som har samma namn som databaserna som du har p\u00e5 ditt system .<\/p>\n<h3>Hur databaser \u00e4r organiserade<\/h3>\n<p>P\u00e5 ytniv\u00e5 ser det ganska enkelt ut. Men om du ska \u00f6ppna katalogen som n\u00e4mnts ovan, kommer du att uppt\u00e4cka att mycket av det du ser \u00e4r kataloger \u2013 inte filer i sig \u2013 som inneh\u00e5ller mer information.<\/p>\n<\/p>\n<p>Om du borrar ner i en av katalogerna kommer du att se en m\u00e4ngd olika filer:<\/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=\"WordPress Developer&#039;s Guide to MySQL Data Reconstruction\"><\/a><\/p>\n<p>Dessa inkluderar filer som inkluderar f\u00f6ljande typer:<\/p>\n<ul>\n<li>V\u00c4RLD<\/li>\n<li>MYI<\/li>\n<li>FRM<\/li>\n<li>IBD<\/li>\n<\/ul>\n<p>Och var och en av dessa typer av filer finns f\u00f6r varje tabell i databasen.<\/p>\n<p>S\u00e5 l\u00e5t oss titta p\u00e5 dessa mer djupg\u00e5ende f\u00f6r att f\u00e5 en st\u00f6rre f\u00f6rst\u00e5else f\u00f6r exakt vad en databas best\u00e5r.<\/p>\n<h4>1 Databasen \u00e4r en upps\u00e4ttning filer<\/h4>\n<p>Generellt sett vet de flesta av oss att MySQL \u00e4r en <strong><a href=\"https:\/\/en.wikipedia.org\/wiki\/Relational_database\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">relationsdatabas<\/a><\/strong> och varje databas best\u00e5r av en upps\u00e4ttning tabeller som alla lagrar olika typer av information (och m\u00e5nga tabeller \u00e4r relaterade till varandra p\u00e5 n\u00e5got s\u00e4tt \u00e4ven om det bara \u00e4r ett v\u00e4rde i en enkel kolumn).<\/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=\"WordPress Developer&#039;s Guide to MySQL Data Reconstruction\"><\/a><\/p>\n<p>Men det h\u00e4r inl\u00e4gget handlar inte om den relationella aspekten av databasen och inte heller om hur vi kan k\u00f6ra fr\u00e5gor mot den. (Om du \u00e4r intresserad, ha det &#8211; allt \u00e4r baserat p\u00e5 <strong><a href=\"https:\/\/en.wikipedia.org\/wiki\/Tuple_relational_calculus\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">tupelkalkyl<\/a><\/strong> .)<\/p>\n<p>Ist\u00e4llet handlar det om att f\u00f6rst\u00e5 att det f\u00f6r varje tabell finns en upps\u00e4ttning filer som refererar till information i varje tabell. Och<\/p>\n<h4>2 F\u00f6rst\u00e5 filtyperna<\/h4>\n<p>Eftersom varje tabell i en databas best\u00e5r av ovanst\u00e5ende filtyper, l\u00e5t oss titta p\u00e5 den individuella filtypen och sedan best\u00e4mma vilken roll den spelar f\u00f6r varje tabell (och i slut\u00e4ndan hur detta p\u00e5verkar hela databasen).<\/p>\n<ul>\n<li><strong>MYD<\/strong>. Den h\u00e4r filen inneh\u00e5ller data som \u00e4r lagrade i raderna i databastabellen. Denna fil \u00e4r n\u00e4ra relaterad till FRM-filen.<\/li>\n<li><strong>FRM<\/strong>. Den h\u00e4r filen inneh\u00e5ller data i tabellformatet (som inkluderar saker som hur varje kolumn i databasen \u00e4r t\u00e4nkt att vara strukturerad, vilken typ av data den inneh\u00e5ller och s\u00e5 vidare).<\/li>\n<li><strong>MYI<\/strong>. Detta \u00e4r databasindexet. Om du anv\u00e4nder en MyISAM-databas (som de flesta av oss anv\u00e4nder InnoDB vid det h\u00e4r laget), kommer du att ha den h\u00e4r filen. Vidare inneh\u00e5ller uppgifterna information om huruvida uppgifterna har st\u00e4ngts ordentligt eller inte. Betrakta detta som en fil om sj\u00e4lva tabellens integritet. Inte informationen i den, inte formatet p\u00e5 den.<\/li>\n<li><strong>IBD<\/strong>. Detta \u00e4r en filtyp som \u00e4r associerad med InnoDB-databastabeller (s\u00e5 du kanske inte ser detta i din databas katalog). Om du g\u00f6r det \u00e4r det dock viktigt att veta att InnoDB-baserade databaser kommer att lagra information om varje tabell i den h\u00e4r filen.<\/li>\n<\/ul>\n<p>I ovanst\u00e5ende information finns det tv\u00e5 andra \u00e4mnen v\u00e4rda att utforska.<\/p>\n<ol>\n<li>MyISAM<\/li>\n<li>InnoDB<\/li>\n<\/ol>\n<p>Innan du tittar p\u00e5 var och en av dessa, notera att MyISAM och InnoDB \u00e4r vad som kallas lagringsmotorer. Det l\u00e5ter fancy, men det har att g\u00f6ra med hur databasprogramvaran hanterar operationerna f\u00f6r att <strong><a href=\"https:\/\/en.wikipedia.org\/wiki\/Create,_read,_update_and_delete\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">skapa, l\u00e4sa, uppdatera och ta bort information<\/a><\/strong>.<\/p>\n<h5>MyISAM &amp; InnoDB: Vad \u00e4r skillnaden?<\/h5>\n<p>Var och en av dessa lagringsmotorer skiljer sig \u00e5t i hur de hanterar transaktioner, l\u00e5sning, \u00e5terst\u00e4llningar och s\u00f6kningar. F\u00f6r de som \u00e4r databasadministrat\u00f6rer, du \u00e4r bekant med allt ovan (men du l\u00e4ser troligen inte det h\u00e4r \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=\"WordPress Developer&#039;s Guide to MySQL Data Reconstruction\"><\/a><\/p>\n<p>Inte den h\u00e4r typen av motor, f\u00f6rst\u00e5s.<\/p>\n<p>F\u00f6r resten av oss har vi det h\u00e4r:<\/p>\n<ul>\n<li>Transaktioner sker n\u00e4r minst tv\u00e5 uttalanden som SELECT och UPDATE eller INSERT och DELETE eller n\u00e5gon kombination av de tv\u00e5 (eller flera) anv\u00e4nds tillsammans med varandra. S\u00e5 om du skulle V\u00c4LJA information och sedan RADERA resultaten, skulle du ha en transaktion.\n<ul>\n<li><strong>MyISAM st\u00f6der inte transaktioner.<\/strong> Detta inneb\u00e4r att om en &quot;transaktion&quot; avbryts s\u00e5 p\u00e5verkas all data som bearbetades under operationen. Beh\u00f6ver s\u00e4ga att detta inte anv\u00e4nds.<\/li>\n<li>InnoDB, \u00e5 andra sidan, garanterar att \u00e4ndringarna inte kommer att g\u00f6ras i tabellen f\u00f6rr\u00e4n transaktionen \u00e4r genomf\u00f6rd. Med andra ord kommer \u00e4ndringarna inte att bindas till databasen.<\/li>\n<\/ul>\n<\/li>\n<li>F\u00f6r var och en av lagringsmotorerna varierar l\u00e5sningen p\u00e5 tabellniv\u00e5 eller radniv\u00e5. N\u00e4rhelst du k\u00f6r en fr\u00e5ga mot en tabell, kommer MyISAM att l\u00e5sa hela tabellen tills processen \u00e4r klar. InnoDB, \u00e5 andra sidan, kommer bara att l\u00e5sa de rader som p\u00e5verkas. Detta \u00e4r en viktig skillnad eftersom det betyder att du kan forts\u00e4tta att arbeta p\u00e5 en tabell, bara inte samma rader, n\u00e4r du anv\u00e4nder InnoDB.<\/li>\n<li>\u00c5terst\u00e4llning \u00e4r inte m\u00f6jlig i MyISAM. Det betyder att n\u00e4r en f\u00f6r\u00e4ndring v\u00e4l \u00e4r gjord s\u00e5 \u00e4r den gjord. InnoDB erbjuder \u00e5terst\u00e4llningar. S\u00e5 l\u00e5t oss s\u00e4ga att du g\u00f6r en f\u00f6r\u00e4ndring av tabellen, du av misstag gjorde n\u00e5got du inte menade att g\u00f6ra, sedan kan du rulla tillbaka det till dess tidigare tillst\u00e5nd. Detta ska dock inte f\u00f6rv\u00e4xlas med en s\u00e4kerhetskopia. Det \u00e4r mer som en &quot;\u00e5ngra&quot;-operation f\u00f6r en transaktion.<\/li>\n<li>S\u00f6kning, s\u00e4rskilt i hur vi strukturerar v\u00e5ra databaser, \u00e4r nyckeln i hur vi organiserar data i v\u00e5ra databaser. Enkelt uttryckt st\u00f6der <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\">InnoDB FULLTEXT-<\/a><\/strong> indexering (fr\u00e5n och med MySQL 5.6.4). Men om din v\u00e4rd eller leverant\u00f6r inte till\u00e5ter FULLTEXT-index, skulle jag h\u00e4vda att det inte \u00e4r en dealbreaker.<\/li>\n<\/ul>\n<p>Med tanke p\u00e5 all information ovan, \u00e4r det var och en att se att f\u00f6rdelarna med InnoDB-lagringsmotorn vida \u00f6verv\u00e4ger f\u00f6rdelarna med MyISAM-lagringsmotorn, s\u00e4rskilt om du \u00e4r ovan f\u00f6r att anv\u00e4nda en version av MySQL som \u00e4r minst lika med 5.6.4<\/p>\n<h4>3 \u00c5terskapa databasen<\/h4>\n<p>L\u00e5t oss nu anta att du vet att du har tillg\u00e5ng till filerna som utg\u00f6r databasen fr\u00e5n operativsystemet.<\/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=\"WordPress Developer&#039;s Guide to MySQL Data Reconstruction\"><\/a><\/p>\n<p>Kanske \u00e4r det en tidigare s\u00e4kerhetskopia, kanske kan du hitta filerna p\u00e5 disken, eller kanske kan du h\u00e4mta dem p\u00e5 n\u00e5got annat s\u00e4tt \u2013 och du beh\u00f6ver \u00e5terst\u00e4lla databasen till en tidigare punkt.<\/p>\n<h5>1 G\u00f6r det inte i produktion<\/h5>\n<p>Innan du g\u00f6r n\u00e5got, skapa en tom databas p\u00e5 din lokala dator och arbeta sedan med att importera informationen. Men \u00e5terigen, det h\u00e4r \u00e4r inte som att bara anv\u00e4nda ett databasgr\u00e4nssnitt f\u00f6r att importera en SQL-fil.<\/p>\n<p>Skapa ist\u00e4llet en katalog som matchar namnet p\u00e5 databasen som du vill skapa. I det h\u00e4r inl\u00e4gget kommer jag att anv\u00e4nda exemplet <strong>trunkdev<\/strong> (eftersom det \u00e4r h\u00e4r jag jobbar med den senaste versionen fr\u00e5n <strong><a href=\"https:\/\/wordpress.org\/download\/source\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">WordPress trunk<\/a><\/strong> ).<\/p>\n<h5>2 S\u00e4kerhetskopiera den befintliga databasen<\/h5>\n<p>S\u00e4kerhetskopiera sedan den befintliga databasen s\u00e5 mycket som m\u00f6jligt \u2013 oavsett om det \u00e4r med ett databasgr\u00e4nssnitt eller en kopia av filerna. Efter det kopierar du filerna fr\u00e5n k\u00e4llplatsen till katalogen som du skapade.<\/p>\n<p>Du b\u00f6r vid det h\u00e4r laget kunna ladda upp ditt valbara databasgr\u00e4nssnitt och se informationen som finns i databasfilerna som du just kopierade. Detta \u00e4r beroende av att filerna inte \u00e4r skadade och att databasservern k\u00f6rs.<\/p>\n<h5>3 Installera inte annan programvara<\/h5>\n<p>Observera att jag vid det h\u00e4r laget inte skulle f\u00f6rs\u00f6ka installera annan programvara p\u00e5 den som WordPress eller annan information. Arbeta ist\u00e4llet direkt med datan. F\u00f6rutsatt att den \u00e4r synlig i din front-end, g\u00f6r en ordentlig s\u00e4kerhetskopiering eller export av filen till en SQL-fil s\u00e5 att du l\u00e4ttare kan \u00e5terst\u00e4lla informationen i framtiden.<\/p>\n<p>Vissa gr\u00e4nssnitt ger dig m\u00f6jligheten att endast exportera vissa tabeller. I det h\u00e4r fallet, s\u00e4kerhetskopiera allt. F\u00f6r vissa databaser kommer detta att ta l\u00e5ng tid; f\u00f6r andra, inte s\u00e5 mycket. Allt beror p\u00e5 projektets storlek.<\/p>\n<h5>4 Arbeta med data<\/h5>\n<p>Vid det h\u00e4r laget b\u00f6r du kunna b\u00f6rja manipulera databasen med front-end eller SQL. Om du inte \u00e4r bekv\u00e4m eller ens s\u00e4ker p\u00e5 hur du g\u00f6r detta, prata med n\u00e5gon som \u00e4r det eftersom detta kan vara n\u00e5got som \u00e4r otroligt k\u00e4nsligt (trots allt, du har att g\u00f6ra med att rekonstruera en databas fr\u00e5n filer, eller hur?)<\/p>\n<p>N\u00e4r du tror att du har informationen p\u00e5 en plats som \u00e4r redo att \u00e5terst\u00e4llas till vilken applikation som helst f\u00f6rlorad information, skadad information eller helt enkelt har felaktig data, d\u00e5 \u00e4r det dags att f\u00f6rbereda dig f\u00f6r att ta informationen fr\u00e5n din lokala dator och skicka tillbaka den till k\u00e4lla.<\/p>\n<h3>Tillbaka till k\u00e4llan<\/h3>\n<p>F\u00f6r det f\u00f6rsta rekommenderas allt ovanst\u00e5ende att g\u00f6ras under tider med l\u00e5g trafik, s\u00e5 se till att n\u00e4r du g\u00f6r detta kommer du inte att g\u00f6ra det under h\u00f6gtrafik. Detta borde vara sj\u00e4lvklart.<\/p>\n<p>Ta sedan en s\u00e4kerhetskopia av databasen innan du b\u00f6rjar anv\u00e4nda den. Spara filen p\u00e5 en plats som du enkelt kan \u00e5terkalla och l\u00e4tt komma \u00e5t s\u00e5 att om n\u00e5got g\u00e5r fel med att anv\u00e4nda informationen du ska importera, d\u00e5 \u00e4r du t\u00e4ckt och \u00e5terst\u00e4ller helt enkelt det som redan fanns d\u00e4r. F\u00f6r att vara tydlig, exportera hela databasen i SQL-format.<\/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=\"WordPress Developer&#039;s Guide to MySQL Data Reconstruction\"><\/a><\/p>\n<p>Ta nu databasen som du har p\u00e5 din lokala dator och exportera den informationen till en SQL-fil ocks\u00e5. \u00d6ppna den exporterade filen och se till att den anv\u00e4nder en <strong>CREATE<\/strong> &#8211; sats f\u00f6r att skapa databasen med r\u00e4tt namn och tabellerna med r\u00e4tt namn ocks\u00e5.<\/p>\n<p>F\u00f6rutsatt att allt g\u00e5r bra kommer allt du har importerat att \u00e5terst\u00e4llas exakt som det ska vara och som du ser p\u00e5 din lokala enhet. Om du inte ser det, importera sedan filen du exporterade tidigare; annars \u00e4r du bra att g\u00e5.<\/p>\n<h4>Vad h\u00e4nder om det inte fungerar?<\/h4>\n<p>Om det inte fungerar, m\u00e5ste du g\u00e5 ner till rotproblemet:<\/p>\n<ul>\n<li>Fungerade det inte p\u00e5 grund av n\u00e5got fel med filerna fr\u00e5n servern?<\/li>\n<li>Fungerade det inte p\u00e5 grund av den typ av databas du skapade p\u00e5 din lokala dator?<\/li>\n<li>Anv\u00e4nder du samma lagringsmotor? Du borde vara det eftersom det kommer fr\u00e5n filerna.<\/li>\n<li>\u00c4r databasens integritet stabil lokalt?<\/li>\n<li>Raderas databasen p\u00e5 servern innan data importeras fr\u00e5n din lokala dator?<\/li>\n<\/ul>\n<p>Om det inte fungerar vid det h\u00e4r laget, kommer det vanligtvis att bero p\u00e5 n\u00e5got liknande det som \u00e4r ovan. Det kan dock vara n\u00e5got annat. Jag har gjort vad jag kan f\u00f6r att tillhandah\u00e5lla s\u00e5 mycket information som m\u00f6jligt om MySQL-databaser, hur de \u00e4r uppbyggda och de steg som kr\u00e4vs f\u00f6r att rekonstruera databasen fr\u00e5n filer, men jag kan inte f\u00e5nga alla potentiella kantfall.<\/p>\n<h2>S\u00e4kerhetskopiera alltid data (och anta inte att det g\u00f6rs)<\/h2>\n<p>Som sagt, jag hoppas att all information ovan ger en djupare f\u00f6rst\u00e5else f\u00f6r vad som ligger under WordPress om du skulle m\u00f6ta detta problem p\u00e5 egen hand eller med en kund.<\/p>\n<p>Och slutligen alltid backup. G\u00f6r manuella s\u00e4kerhetskopior, g\u00f6r automatiska s\u00e4kerhetskopior och g\u00f6r dem ofta. Begr\u00e4nsa det inte till databasen heller. S\u00e4kerhetskopiera databasen, applikationen och allt annat som beh\u00f6vs f\u00f6r att driva l\u00f6sningen.<\/p>\n<p>Om du g\u00f6r det beh\u00f6ver du inte oroa dig f\u00f6r allt ovan.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Inspelningsk\u00e4lla:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/tommcfarlin.com\" class=\"external external_icon\">tommcfarlin.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Allt du ville veta om hur en grundl\u00e4ggande MySQL-databas \u00e4r organiserad p\u00e5 filsystemsniv\u00e5 och hur man g\u00e5r tillv\u00e4ga f\u00f6r MySQL-datarekonstruktion.<\/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":[848,901,724],"tags":[1173],"class_list":["post-229952","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-handledningar","category-koda","category-utvecklaren","tag-affiai-sv"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/posts\/229952","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/comments?post=229952"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/posts\/229952\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/media\/163966"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/media?parent=229952"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/categories?post=229952"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/tags?post=229952"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}