Mamindra angona backup avy amin'ny dikan-teny MS SQL Server vaovao mankany amin'ny dikan-teny taloha

prehistory

Indray mandeha, mba hamerenana bibikely, dia nila backup ny angon-drakitra famokarana aho.

Nahagaga ahy fa tojo ireto fetra manaraka ireto aho:

  1. Ny backup database dia natao tamin'ny version SQL Server 2016 ary tsy nifanaraka tamin'ny ahy SQL Server 2014.
  2. Ao amin'ny solosaina miasa, ny OS ampiasaina dia Windows 7ka tsy afaka nanavao aho SQL Server hatramin'ny version 2016
  3. Ny vokatra tohanana dia anisan'ny rafitra lehibe kokoa miaraka amin'ny maritrano lova natambatra mafy ary niresaka tamin'ny vokatra sy fototra hafa koa, ka mety haharitra ela ny fametrahana azy any amin'ny toby hafa.

Raha jerena ireo voalaza etsy ambony ireo dia tonga tamin'ny fanatsoahan-kevitra aho fa tonga ny fotoana ho an'ny vahaolana tsy manara-penitra.

Famerenana ny angona avy amin'ny backup

Nisafidy ny hampiasa milina virtoaly aho Oracle VM VirtualBox miaraka amin'ny Windows 10 (azonao atao ny maka sary fitsapana ho an'ny navigateur Edge avy eto). Ny SQL Server 2016 dia napetraka tamin'ny milina virtoaly ary naverina tamin'ny laoniny ny angon-drakitra fampiharana (fampianarana).

Fametrahana ny fidirana amin'ny SQL Server amin'ny milina virtoaly

Manaraka izany dia nilaina ny nanao dingana vitsivitsy mba hahafahana miditra amin'ny SQL Server avy any ivelany:

  1. Ho an'ny firewall, ampio fitsipika handavana ny fangatahana seranan-tsambo 1433.
  2. Irina ny fidirana amin'ny mpizara tsy mandeha amin'ny authentication windows, fa amin'ny alΓ lan'ny SQL mampiasa login sy tenimiafina (mora kokoa ny mametraka fidirana). Na izany aza, amin'ity tranga ity, mila tadidinao ny mamela ny SQL Authentication amin'ny fananana SQL Server.
  3. Ao amin'ny firafitry ny mpampiasa amin'ny SQL Server eo amin'ny tabilao User Mapping mamaritra ny andraikitry ny mpampiasa amin'ny angon-drakitra naverina tamin'ny laoniny db_securityadmin.

Famindrana angona

Raha ny marina, ny famindrana angon-drakitra dia misy dingana roa:

  1. Famindrana angon-drakitra (tabilao, fijery, fomba fiasa voatahiry, sns.)
  2. Mamindra ny angona mihitsy

Famindrana angon-drakitra

Manao ireto hetsika manaraka ireto izahay:

  1. Mifidy isika Asa -> Mamorona Scripts ho an'ny base portable.
  2. Safidio ny zavatra ilainao hamindrana na avelao ny sanda mahazatra (amin'ity tranga ity, ny script dia hoforonina ho an'ny zavatra database rehetra).
  3. Lazao ny toe-javatra hitahirizana ny script. Mora kokoa ny mitahiry ny script ao anaty rakitra Unicode tokana. Avy eo, raha misy tsy fahombiazana, tsy mila mamerina ny dingana rehetra indray ianao.

Rehefa voavonjy ny script dia azo alefa amin'ny SQL Server tany am-boalohany (dika taloha) mba hamoronana ny fototra ilaina.

fampitandremana: Aorian'ny fanatanterahana ny script dia mila manamarina ny fifandraisana misy eo amin'ny firafitry ny angona avy amin'ny backup sy ny angona noforonin'ny script ianao. Raha ny ahy dia tsy nisy setup ho an'ny COLLATE tao amin'ny script, izay nitarika ho amin'ny tsy fahombiazana rehefa mamindra angona sy mandihy amin'ny ampongatapaka mba hamoronana indray ny angon-drakitra amin'ny fampiasana ny script fanampiny.

Famindrana angona

Alohan'ny hamindrana angon-drakitra dia tsy maintsy esorinao ny fanamarinana ny famerana rehetra amin'ny angon-drakitra:

EXEC sp_msforeachtable 'ALTER TABLE ? NOCHECK CONSTRAINT all'

Ny famindrana angon-drakitra dia atao amin'ny alΓ lan'ny wizard fanafarana data Asa -> Manafatra angona amin'ny SQL Server, izay misy ny angon-drakitra noforonin'ny script:

  1. Lazao ny firafitry ny fifandraisana amin'ny loharano (SQL Server 2016 amin'ny milina virtoaly). Nampiasa loharanom-baovao aho SQL Server Native Client ary ny fanamarinana SQL voalaza teo aloha.
  2. Lazao ny firafitry ny fifandraisana ho an'ny toerana (SQL Server 2014 amin'ny milina mpampiantrano).
  3. Manaraka, amboary ny sarintany. Tsy maintsy voafantina daholo tsy vakiana fotsiny zavatra (ohatra, tsy mila mifidy ny fijery). Ho safidy fanampiny, safidio "Avelao hampidirina ao amin'ny tsanganana famantarana"raha toy izany no ampiasaina.
    fampitandremana: raha, rehefa miezaka mifidy latabatra maromaro sy mametraka ny fananany "Avelao hampidirina ao amin'ny tsanganana famantarana" ny fananana dia efa napetraka ho an'ny iray farafahakeliny amin'ireo latabatra voafantina, ny fifanakalozan-kevitra dia manondro fa ny fananana dia efa napetraka ho an'ny latabatra voafantina rehetra. Ity zava-misy ity dia mety hampisafotofoto ary hitarika amin'ny fifindra-monina diso.
  4. Manomboka ny famindrana izahay.
  5. Famerenana ny fisavana teritery:
    EXEC sp_msforeachtable 'ALTER TABLE ? CHECK CONSTRAINT all'

Raha misy hadisoana mitranga, jereo ny fikandrana, mamafa ny angon-drakitra noforonina miaraka amin'ny fahadisoana, mamorona azy indray avy amin'ny script, manao fanitsiana ary mamerina ny famindrana angon-drakitra.

famaranana

Tsy fahita firy io asa io ary noho ireo fetra voalaza etsy ambony ihany no mitranga. Ny vahaolana mahazatra indrindra dia ny manavao ny SQL Server na mifandray amin'ny mpizara lavitra raha mamela izany ny rafitra fampiharana. Na izany aza, tsy misy afa-miala amin'ny fehezan-dalΓ na lova sy tanana miolakolaka amin'ny fampandrosoana tsy misy kalitao. Manantena aho fa tsy mila an'ity torolalana ity ianao, fa raha mbola mila izany ianao, dia hanampy amin'ny fitahirizana fotoana sy tebiteby be. Misaotra anao noho ny fifantohanao!

Lisitry ny loharano ampiasaina

Source: www.habr.com