Bíonn trí chás ag teacht aníos arís agus arís eile:
- Cuir scéimre ar bun le haghaidh stáitsithe nó CI — teastaíonn an struchtúr táblaí folamh uait ionas gur féidir le tástálacha rith i gcoinne fíorcholúin, innéacsanna agus srianta, ach níl uait ar chor ar bith gigighbearta de rónna táirgthe a sheoladh isteach i dtimpeallacht caite.
- Sonraí síolta amháin — tá an scéimre ann cheana sa bhunachar sonraí sprice, agus níl uait ach na rónna INSERT chun é a líonadh, gan ráitis CREATE a bheadh ag teacht salach ar an méid atá ann.
- Faigh réidh le torann — tá an dumpa borrtha ag táblaí
logs,sessions,audit_trailnócachele deicheanna milliún ró nach dteastaíonn uait a iompórtáil riamh.
Cén fáth nach leor mysqldump --no-data
Is é an chomhairle chlasaiceach mysqldump --no-data (struchtúr amháin) nó mysqldump --no-create-info (sonraí amháin). Is bratacha easpórtála iad araon: athraíonn siad cad atá i ndumpa úr ó bhunachar sonraí atá ag rith. Ní dhéanann siad rud ar bith do dhumpa atá agat cheana ina shuí ar an diosca mar chomhad .sql.
Go praiticiúil, is minic a thagann an comhad ó dhuine eile, nó ó jab cúltaca, nó ó fhreastalaí nach bhfuil rochtain bheo agat air a thuilleadh. Ní féidir leat mysqldump a atrialladh i gcoinne bunachar sonraí nach bhfuil insroichte — tá na dintiúir imithe, tá an freastalaí díchoimisiúnaithe, nó is é an comhad go simplí an t-aon rud a tugadh duit. Ag an bpointe sin tá na bratacha gan úsáid, agus fágtar tú ag cur an chomhaid féin in eagar.
An bealach de láimh
Is é an bogadh soiléir línte a bhaint le grep nó sed. Chun an struchtúr a choinneáil agus na sonraí a ligean:
# coinnigh gach rud ach amháin rónna INSERT grep -v '^INSERT INTO' dump.sql > schema.sql # nó coinnigh na rónna INSERT amháin do chomhad sonraí-amháin grep '^INSERT INTO' dump.sql > data.sql
Breathnaíonn sé seo ceart go leor ar dhumpa beag néata — agus ansin briseann sé ar cheann fíor:
- INSERTanna il-líne. Is féidir le
INSERT INTO … VALUESamháin na mílte líne a shíneadh. Meaitseálanngrepan chéad líne agus fágann sé an chuid eile de na luachanna dílleachta, ag táirgeadh comhad briste. - Ionsáití sínte. Baisleann mysqldump go leor rónna in aon ráiteas ollmhór amháin. Ní féidir le scagairí líne-bhunaithe a insint cá gcríochnaíonn a leithéid de ráiteas.
- Nótaí tráchta agus bloic. Trasnaíonn bloic choinníollacha
/*! … */,LOCK TABLES, agus nótaí tráchta--leis na sonraí, mar sin coinníonn scagaire soineanta dramhaíl nó gearrann sé rud éigin a bhfuil an iompórtáil ag brath air. - Tá sonraí-amháin níos measa. Caitheann
grep '^INSERT'íon amach na ráitisSETagusLOCKa bhfuil na rónna ag brath orthu, agus imíonn aon INSERT nach dtosaíonn go díreach ag colún a náid go ciúin.
Críochnaíonn tú ag dífhabhtú do scagaire féin in ionad do scéimre a fháil.
Struchtúr-amháin nó sonraí-amháin le DumpCleaner
Tuigeann DumpCleaner ráitis SQL in ionad línte a mheaitseáil, mar sin scarann sé struchtúr ó shonraí go hiontaofa — ar chomhaid ar bith méide:
- Tarraing do dhumpa
.sqlisteach in DumpCleaner (MySQL, MariaDB nó PostgreSQL). Parsálann sé an comhad trí shruthú, mar sin lódálann dumpa il-gigighbeart le cuimhne chothrom. - Scoránaigh na cineálacha ráitis a theastaíonn uait: CREATE TABLE, CREATE INDEX, INSERT INTO, ALTER, DROP, LOCK, SET. Díthiceáil INSERT INTO agus faigheann tú struchtúr amháin; díthiceáil CREATE TABLE / CREATE INDEX agus faigheann tú sonraí amháin.
- Nó roghnaigh réamhshocrú — Struchtúr amháin nó Sonraí amháin — chun gach scoránaí a shocrú in aon chéim amháin, ansin mionathraigh de réir tábla más mian leat.
- Easpórtáil. Faigheann tú comhad scéimre lom le haghaidh stáitsithe nó CI, nó dumpa glan sonraí-amháin le síolú.
Toisc go bhfuil an scagaire ráiteas-eolach, coinnítear nó ligtear INSERT sínte il-líne ina iomláine — ní ghearrtar riamh sa lár é.
Is é an fíorchumhacht ná go n-oibríonn an scagadh de réir cineáil ráitis agus de réir tábla, agus go gcomhcheanglaíonn an dá cheann. Is féidir leat struchtúr gach tábla a choinneáil ach sonraí INSERT a chur san áireamh do na trí thábla a theastaíonn uait i ndáiríre amháin — ag fágáil an tábla logs 89 milliún ró mar bhlaosc folamh. Sin rud nach féidir le bratach --no-data ar bith a chur in iúl.
Scar struchtúr ó shonraí i soicindí
Scagann DumpCleaner dumpa reatha de réir cineáil ráitis agus de réir tábla — struchtúr amháin, sonraí amháin, nó meascán ar bith — sruthú, le cuimhne chothrom. Aip dhúchasach macOS & iPadOS, ceannach aon uaire.
Íoslódáil ón App StoreCeisteanna coitianta
An féidir liom na sonraí a easpórtáil gan an scéimre?
Is féidir. Díchumasaigh CREATE TABLE agus CREATE INDEX (nó roghnaigh an réamhshocrú Sonraí amháin) agus coinnigh INSERT INTO. Easpórtálann DumpCleaner na rónna amháin, réidh le lódáil isteach i scéimre atá ann cheana.
An gcoinníonn easpórtáil struchtúr-amháin innéacsanna agus eochracha eachtracha?
Coinníonn. Coinníonn struchtúr amháin CREATE TABLE, CREATE INDEX, ALTER TABLE agus na sainmhínithe eochrach eachtraí — gach rud a shainíonn an bunachar sonraí. Ní bhaintear ach na rónna sonraí INSERT.
An féidir liom meascán — struchtúr do gach tábla, sonraí do chuid acu?
Is féidir. Tá an scagadh de réir cineáil ráitis agus de réir tábla, agus comhcheanglaíonn an dá cheann. Coinnigh struchtúr gach tábla ach cuir sonraí INSERT san áireamh do na cúpla tábla a theastaíonn uait i ndáiríre amháin.
An oibríonn sé seo le PostgreSQL?
Oibríonn. Léann DumpCleaner dumpaí MySQL, MariaDB agus PostgreSQL agus braitheann sé an fhormáid go huathoibríoch, mar sin oibríonn easpórtálacha struchtúr-amháin agus sonraí-amháin ar an mbealach céanna do chomhaid pg_dump.
Scéimre gan na sonraí — nó sonraí gan an scéimre
Tarraing, scoránaigh na cineálacha ráitis, easpórtáil. Roinneann DumpCleaner dumpa ar bith isteach sa chuid a theastaíonn uait go díreach.
Íoslódáil ón App Store