Toon posts:

MSSQL Database restore met replace, lijkt niet te werken.

Pagina: 1
Acties:

Vraag


  • Defector
  • Registratie: December 2005
  • Niet online
Regelmatig restore ik een database via het SQL commando.

Restore Database "databasenaam" from disk "filenaam" with recovery, replace, stats

Nu wil het geval dat de database die ik restore nieuwe kolommen bevat in de tabellen.
Ben verder compleet niet geïnteresseerd in de oude database.
De nieuwe database met alles wat erbij hoort (data en tabel definitie) moet gewoon onder "Databasenaam" weer aanwezig zijn in de MSSQL server.

Ik ging er altijd vanuit dat replace daar het juiste commando voor was. Maar nu loop ik tegen een issue aan dat bepaalde kolommen niet meegenomen zijn vanuit de nieuwe database.
Al een keer geverifieerd of ik de juiste database had en het nog een 2e keer uitgevoerd. Maar die kolommen blijven afwezig.

Beste antwoord (via Defector op 21-06-2020 22:57)


  • RobIII
  • Registratie: December 2001
  • Laatst online: 00:57

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

Uh, dan doe je volgens mij toch echt iets verkeerd of verwar je bestanden met elkaar o.i.d. Dit zou gewoon moeten werken en een volledige restore moeten doen, niet alles-op-een-paar-kolommen-na.

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Roses are red Violets are blue, Unexpected ‘{‘ on line 32.

Over mij

Alle reacties


Acties:
  • Beste antwoord
  • 0Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Laatst online: 00:57

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

Uh, dan doe je volgens mij toch echt iets verkeerd of verwar je bestanden met elkaar o.i.d. Dit zou gewoon moeten werken en een volledige restore moeten doen, niet alles-op-een-paar-kolommen-na.

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Roses are red Violets are blue, Unexpected ‘{‘ on line 32.

Over mij


  • Defector
  • Registratie: December 2005
  • Niet online
Thanks voor de bevestiging, het gebruikte commando zit dan goed. Dan moet ik het ergens anders zoeken waarom het niet werkt.

  • Wim-Bart
  • Registratie: Mei 2004
  • Laatst online: 10-01-2021

Wim-Bart

Zie signature voor een baan.

Waarom niet gewoon een sql file van database aanmaken en die uitvoeren waarbij oude database gedropt wordt. Veel sneller en je hebt een schone database.

Overigens een restore met replace gaat ook fout wanneer er nog een connectie open staat of een backup loopt.

Beheerders, Consultants, Servicedesk medewerkers. We zoeken het allemaal. Stuur mij een PM voor meer info of kijk hier De mooiste ICT'er van Nederland.


Acties:
  • 0Henk 'm!

  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 23-07-2021
Wim-Bart schreef op zaterdag 20 juni 2020 @ 22:39:
Waarom niet gewoon een sql file van database aanmaken en die uitvoeren waarbij oude database gedropt wordt. Veel sneller en je hebt een schone database.
Hoe bedoel je sneller?
Heb je daar enigszins timings oid van? Want het lijkt mij heel erg vreemd dat een sql-file die eerst door een parser dan nog door een query-optimizer moet sneller is dan een binair formaat.

TS: Wat voor backup (full/incremental/log) is het exact? Want in principe zijn het geen nieuwe kolommen. Je hebt als het goed is gewoon in je database kolommen staan en die worden gewoon gerestored of de restore mislukt.

Maar standaard backup van sql server kan geen kolommen uitsluiten.

Acties:
  • 0Henk 'm!

  • Defector
  • Registratie: December 2005
  • Niet online
Ben even van scratch begonnen met nieuwe back-ups en opnieuw inlezen. Had wat problemen met de database die een verbinding vast bleef houden. Nadat ik de database offline had gezet en weer online was het gelukt. Waarbij de juiste gegevens nu ook over zijn genomen.

Het was een full backup.

Acties:
  • 0Henk 'm!

  • Wim-Bart
  • Registratie: Mei 2004
  • Laatst online: 10-01-2021

Wim-Bart

Zie signature voor een baan.

Gomez12 schreef op zondag 21 juni 2020 @ 16:56:
[...]

Hoe bedoel je sneller?
Heb je daar enigszins timings oid van? Want het lijkt mij heel erg vreemd dat een sql-file die eerst door een parser dan nog door een query-optimizer moet sneller is dan een binair formaat.

TS: Wat voor backup (full/incremental/log) is het exact? Want in principe zijn het geen nieuwe kolommen. Je hebt als het goed is gewoon in je database kolommen staan en die worden gewoon gerestored of de restore mislukt.

Maar standaard backup van sql server kan geen kolommen uitsluiten.
Afhankelijk van de database praat je hier over milliseconden. Een restore met replace is sowieso trager dan een restore na een drop van een database omdat er veel meer moet plaats vinden intern. En zolang je geen data mee hoeft te restoren is een nieuwe db genereren met een script ook veel fijner, met name omdat je dan tenminste ook met autonumbering op 1 begint.

Beheerders, Consultants, Servicedesk medewerkers. We zoeken het allemaal. Stuur mij een PM voor meer info of kijk hier De mooiste ICT'er van Nederland.


Acties:
  • 0Henk 'm!

  • Wim-Bart
  • Registratie: Mei 2004
  • Laatst online: 10-01-2021

Wim-Bart

Zie signature voor een baan.

Defector schreef op zondag 21 juni 2020 @ 22:56:
Ben even van scratch begonnen met nieuwe back-ups en opnieuw inlezen. Had wat problemen met de database die een verbinding vast bleef houden. Nadat ik de database offline had gezet en weer online was het gelukt. Waarbij de juiste gegevens nu ook over zijn genomen.

Het was een full backup.
Dus blijkbaar stonden er nog locks. connecties of transacties open. Offline zetten zorgt voor er voor dat de database "vrij" is en dan gaat restoren vlekkeloos.

Beheerders, Consultants, Servicedesk medewerkers. We zoeken het allemaal. Stuur mij een PM voor meer info of kijk hier De mooiste ICT'er van Nederland.


Acties:
  • +1Henk 'm!

  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 23-07-2021
Wim-Bart schreef op zondag 21 juni 2020 @ 23:13:
[...]
Afhankelijk van de database praat je hier over milliseconden. Een restore met replace is sowieso trager dan een restore na een drop van een database omdat er veel meer moet plaats vinden intern. En zolang je geen data mee hoeft te restoren is een nieuwe db genereren met een script ook veel fijner, met name omdat je dan tenminste ook met autonumbering op 1 begint.
Ah, jij scheidt de data van de database. Terwijl de TS expliciet zegt inclusief data.

En imho hoort bij een restore altijd data, ik ken geen mogelijkheid om van een db fatsoenlijk alleen de structuur te backuppen om die ergens anders weer te gaan restoren.

Juist vanwege oa autonumbering die in een andere tabel een FK is en daar gewoon als data meegebackupped is en dus niet meer zou kloppen als die op 1 begint.

Je kan een dbase scriptmatig opbouwen en de structuur scriptmatig beheren, maar dat is iets anders dan backup/restore.

Ik denk dat wat TS gewoon zo af en toe doet is : Een productie omgeving database overzetten naar een acceptate / test-omgeving. Zodat de mensen die moeten testen / accepteren tegen voor hun bekende data aan zitten te kijken.

Acties:
  • 0Henk 'm!

  • Wim-Bart
  • Registratie: Mei 2004
  • Laatst online: 10-01-2021

Wim-Bart

Zie signature voor een baan.

Gomez12 schreef op zondag 21 juni 2020 @ 23:26:
[...]

Ah, jij scheidt de data van de database. Terwijl de TS expliciet zegt inclusief data.

En imho hoort bij een restore altijd data, ik ken geen mogelijkheid om van een db fatsoenlijk alleen de structuur te backuppen om die ergens anders weer te gaan restoren.

Juist vanwege oa autonumbering die in een andere tabel een FK is en daar gewoon als data meegebackupped is en dus niet meer zou kloppen als die op 1 begint.

Je kan een dbase scriptmatig opbouwen en de structuur scriptmatig beheren, maar dat is iets anders dan backup/restore.

Ik denk dat wat TS gewoon zo af en toe doet is : Een productie omgeving database overzetten naar een acceptate / test-omgeving. Zodat de mensen die moeten testen / accepteren tegen voor hun bekende data aan zitten te kijken.
Ik ging er van uit dat data niet belangrijk was, omdat dit ook werd gezegd. Wanneer ik een restore zou doen van dev/acc/tst dan zou ik dat zonder data doen. Er vanuit gaande dat dit ook het geval zou zijn. En eventuele data, zoals bijvoorbeeld lookup tabellen, zou ik dan ook gescript vullen met bulk import bijvoorbeeld.

Beheerders, Consultants, Servicedesk medewerkers. We zoeken het allemaal. Stuur mij een PM voor meer info of kijk hier De mooiste ICT'er van Nederland.


  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 23-07-2021
Wim-Bart schreef op zondag 21 juni 2020 @ 23:34:
[...]

Ik ging er van uit dat data niet belangrijk was, omdat dit ook werd gezegd.
Gewoon even ter mijner info, maar waar lees jij dat want ik lees juist het tegenovergestelde :
De nieuwe database met alles wat erbij hoort (data en tabel definitie) moet gewoon onder "Databasenaam" weer aanwezig zijn in de MSSQL server.
Nieuwe database = gerestorede database neem ik aan.
Defector schreef op zondag 21 juni 2020 @ 22:56:
Ben even van scratch begonnen met nieuwe back-ups en opnieuw inlezen. Had wat problemen met de database die een verbinding vast bleef houden. Nadat ik de database offline had gezet en weer online was het gelukt. Waarbij de juiste gegevens nu ook over zijn genomen.

Het was een full backup.
Dan zou ik bij deze even goed gaan kijken naar error-handeling, want een restore die mislukt aanzien voor een restore die wat kolommen mist is toch echt een wezenlijk verschil...

  • Wim-Bart
  • Registratie: Mei 2004
  • Laatst online: 10-01-2021

Wim-Bart

Zie signature voor een baan.

Gomez12 schreef op maandag 22 juni 2020 @ 00:22:
[...]

Gewoon even ter mijner info, maar waar lees jij dat want ik lees juist het tegenovergestelde :

[...]

Nieuwe database = gerestorede database neem ik aan.
Ik werd in verwarring gebracht door:
Ben verder compleet niet geïnteresseerd in de oude database.
Dus data weg.

En:
Nu wil het geval dat de database die ik restore nieuwe kolommen bevat in de tabellen.
Dus dacht ik, een compleet nieuw schema.

Beheerders, Consultants, Servicedesk medewerkers. We zoeken het allemaal. Stuur mij een PM voor meer info of kijk hier De mooiste ICT'er van Nederland.

Pagina: 1



Nintendo Switch (OLED model) Apple iPhone SE (2022) LG G1 Google Pixel 6 Call of Duty: Vanguard Samsung Galaxy S22 Garmin fēnix 7 Nintendo Switch Lite

Tweakers vormt samen met Hardware Info, AutoTrack, Gaspedaal.nl, Nationale Vacaturebank, Intermediair en Independer DPG Online Services B.V.
Alle rechten voorbehouden © 1998 - 2022 Hosting door True

Tweakers maakt gebruik van cookies

Tweakers plaatst functionele en analytische cookies voor het functioneren van de website en het verbeteren van de website-ervaring. Deze cookies zijn noodzakelijk. Om op Tweakers relevantere advertenties te tonen en om ingesloten content van derden te tonen (bijvoorbeeld video's), vragen we je toestemming. Via ingesloten content kunnen derde partijen diensten leveren en verbeteren, bezoekersstatistieken bijhouden, gepersonaliseerde content tonen, gerichte advertenties tonen en gebruikersprofielen opbouwen. Hiervoor worden apparaatgegevens, IP-adres, geolocatie en surfgedrag vastgelegd.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Toestemming beheren

Hieronder kun je per doeleinde of partij toestemming geven of intrekken. Meer informatie vind je in ons cookiebeleid.

Functioneel en analytisch

Deze cookies zijn noodzakelijk voor het functioneren van de website en het verbeteren van de website-ervaring. Klik op het informatie-icoon voor meer informatie. Meer details

janee

    Relevantere advertenties

    Dit beperkt het aantal keer dat dezelfde advertentie getoond wordt (frequency capping) en maakt het mogelijk om binnen Tweakers contextuele advertenties te tonen op basis van pagina's die je hebt bezocht. Meer details

    Tweakers genereert een willekeurige unieke code als identifier. Deze data wordt niet gedeeld met adverteerders of andere derde partijen en je kunt niet buiten Tweakers gevolgd worden. Indien je bent ingelogd, wordt deze identifier gekoppeld aan je account. Indien je niet bent ingelogd, wordt deze identifier gekoppeld aan je sessie die maximaal 4 maanden actief blijft. Je kunt deze toestemming te allen tijde intrekken.

    Ingesloten content van derden

    Deze cookies kunnen door derde partijen geplaatst worden via ingesloten content. Klik op het informatie-icoon voor meer informatie over de verwerkingsdoeleinden. Meer details

    janee