Avatar billede HenrikSjang Nybegynder
27. oktober 2008 - 19:15 Der er 5 kommentarer og
1 løsning

Backup af schemaer

Er det muligt at tage løbende backup/eksport af sine database schemaer, uden at få dataene med?

Situationen er den, at jeg har en database server med ret mange test- og udviklingsdatabaser på. Al data er lige gyldigt, men der foretages i ny og næ schema ændringer, som vi gerne vil have backup af.

Er det muligt fx at lave et sql job, som eksporterer alle schemaer (views, tables, stored procedures osv.) til fysiske filer, eller hvad kan man gøre? Da databaserne godt kan indeholde ret mange GB test-data, er jeg ikke interesseret i bare at tage almindelige backups.

At smide alle schemaer ind i noget source control er det langsigtede ønske, men på kort bane gad vi godt fx have en kopi af schemaerne for de seneste 30 dage fx.

Kan det gøres?

Der skal lige tilføjes, at antallet af databaser varierer, så løsningen skal helst selv "opdage" nye databaser. I bund og grund ønsker jeg egentlig bare hvis man kunne lave en almindelige backup maintenance plan, og så sætte et flueben i "backup schemas only" :)
Avatar billede arne_v Ekspert
27. oktober 2008 - 19:22 #1
Du ved formentligt godt at Enterprise Manager / SQLServer Studio kan generere SQL
til at genskabe en hel database.

Saa jeg antager at det reelle problem er at scripte det, saa det kan automatiseres. Og at
du ikke vil kode 500-1000 linier kode for at lave din egen hjemmelavede loesning.
Avatar billede HenrikSjang Nybegynder
27. oktober 2008 - 19:39 #2
præcis :)

Jeg har overvejet om SMO'er kan klare tricket, men jeg har aldrig leget med det før, så derfor spørgsmålet her.

Jeg fandt et par sp'er som simulerer en dump-funktion, som netop kan eksportere til en fil. Tilsyneladende kunne man bare IKKE vælge at nøjes med schemaerne, så jeg valgte at google videre. Jeg orkede nemlig ikke at undersøge hvor omstændigt det ville være at tilføje "schema only" funktionen til den 600 linjer lange sp... man er vel doven :)
Avatar billede HenrikSjang Nybegynder
27. oktober 2008 - 19:44 #3
Hov, hvis ellers jeg åbner mine øjne, så KAN den sp sgu da lave en schema only... jeg skynder mig lige at teste. Jeg skal nok lige vende tilbage med hvad jeg finder ud af.
Avatar billede HenrikSjang Nybegynder
27. oktober 2008 - 20:04 #4
Med en lille database, var der ikke noget problem - men med en stor database, med 1000+ stored procedures, og hundredevis af tabeller, der tager det godt nok pænt lang tid at lave denne eksport. Den har kørt 11 minutter nu, og jeg aner ikke hvor langt den er fra at være færdig. Da vi har godt 170 databaser på den givne server, kommer det til at tage pææænt lang tid hvis den skal igennem dem alle.

Så jeg er stadig lidt på udkig efter muligheder.

Til de nysgerrige, så var det denne jeg havde fundet: http://www.wisdombay.com/downs/sqldump.php
Avatar billede HenrikSjang Nybegynder
27. oktober 2008 - 20:34 #5
Ja dette script er så et ægte dump-redskab, for den kigger slet ikke på sp'er, triggers osv. Den tager kun tabel-schemaer samt contraints mm. Altså ikke nok til at løse mit problem.
Avatar billede HenrikSjang Nybegynder
30. oktober 2008 - 11:12 #6
Vi endte med at lave noget halløj med Redgate Pro udgaven.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester