[MS SQL] Nieuwe installatie, database terugzetten

Pagina: 1
Acties:
  • 116 views sinds 30-01-2008
  • Reageer

  • Polderdijk
  • Registratie: December 2001
  • Laatst online: 15:58
Ik heb een Windows 2000 server installatie met daarop MS SQL 2000. Nu ga ik die opnieuw installeren omdat hij een beetje vervuild enzo is. Nu staat alle data van de website's enzo die erop draaien op de D dus dat staat veilig. Echter de data van de SQL server staan op C en het is wel de bedoeling dat dit weer exact hetzelfde terugkomt nadat ik de server hebt opnieuw geinstalleerd.

Ik heb dit vorige keer ook proberen te doen door een backup van alle databasen te maken (in Enterprise Manager) en geprobeerd om deze later terug te zetten. Echter is mij dat toen niet gelukt omdat na de nieuwe installatie ik de backup niet kon kiezen in SQL en geen enkele manier kunnen vinden om de data terug te zetten. Gelukkig had ik nog met Import & Export data de gegevens naar mijn server thuis gekopieerd en deze dus op die manier terug gezet.

Echter is Import & Export niet echt een optie omdat het grote databasen zijn en met mijn Chello verbinging is de upload niet echt snel dus het terugzetten duurde echt heel lang. Ook had ik het probleem dat hij dingen zoals Identitie en Keys niet terug gezet zodat ik alle tabbellen langs moest gaan om dit weer goed te zetten. Niet zo leuk dus.

Nu is mijn vraag, hoe kan ik nou een volledige backup maken van de databasen en alle tabbellen enzo, en deze weer op precies de zelfde manier na de schone installatie weer terugzetten?

En het zal helemaal mooi zijn als dit allemaal in 1 bestand wordt gezet zodat ik dit voortaan elke nacht kan uitvoeren en altijd zeker bent van een goede backup die ik zonder problemen weer terug kan zetten.

Webhosting van SkyHost.nl: 25 Mb / 1 Gb windows hosting € 4,50 p/m excl.btw!


  • elevator
  • Registratie: December 2001
  • Niet online

elevator

Officieel moto fan :)

Vragen over MS SQLServer zijn beter op z'n plek in Software Algemeen - ik verplaats je topic eventjes :)

Windows Operating Systems >> Software Algemeen

  • whoami
  • Registratie: December 2000
  • Laatst online: 20:46
Je kan het ook op de detach/attach manier doen.

Met sp_detach <databasename> kan je je DB 'loskoppelen' van SQL Server. Je kan dan de data-files van die databank zelf gaan backuppen (de mdf en ldf files dus).
Als je die files dan gebackupped hebt, SQL Server opnieuw geinstalleerd hebt, kan je mbhv de sp_attach stored procedure die databank opnieuw attachen aan sql-server.

https://fgheysels.github.io/


  • Polderdijk
  • Registratie: December 2001
  • Laatst online: 15:58
Kijk dat is denk ik voor mij op dit moment de beste optie.

Klopt het ook dat ik het beste ook de database 'master' en 'msdb' mee kan backuppen? Want zover ik heb kunnen lezen wordt hierin alle users en rechten enzo bewaard?

Whoami, kan je mij met 100% zekerheid zeggen dat dit gaat werken, want als ik de databasen kwijt bent, dan heb ik echt een groot probleem en heb ik denk ik een uurtje of 100 nodig om alle data weer bij elkaar te sprokkelen.

Webhosting van SkyHost.nl: 25 Mb / 1 Gb windows hosting € 4,50 p/m excl.btw!


Verwijderd

als je een backup maakt via sql manager dan kan je die wel weer terughalen, alleen dan moet je bij device kiezen dat je niet van een tape af wilt halen maar van een file en dan zet sql de database gewoon weer terug

  • j_du_pee
  • Registratie: Maart 2000
  • Laatst online: 23-09-2024

j_du_pee

du pain, du vin, du pee

je kunt in EM een .bak file aanmaken waar alles in een bestand staat. Dat is wat jij eerder gedaan had waarschijnlijk en waarbij je de backups niet terug kon krijgen. Dat laatste is wel degelijk mogelijk met EM, of anders via SQL:
SQL:
1
2
3
RESTORE DATABASE mijndb
FROM DISK ='E:\mijnbackup.bak'
with recovery, file=424


Met detach sluit je voor zover ik weet de database. Je kunt dat dus doen nadat je een kopie hebt gemaakt, wat niet heel efficient is als je het iedere nacht wilt doen. Een andere mogelijkheid is:
code:
1
BACKUP DATABASE mijndatabase TO DISK = 'C:\\db1.BAK'

En dat dan dus voor iedere db. Ik meen dat met RESTORE DATABASE het omgekeerde dan gebeurd, maar dat moet toch te vinden zijn op msdn ;)

kaart != map && bottel != fles
Wacht op antwoord


  • Polderdijk
  • Registratie: December 2001
  • Laatst online: 15:58
Dat had ik dus de vorige keer ook gedaan, ik kreeg netjes na het backuppen het backup bestand. Maar na de nieuwe installatie kon ik deze niet in SQL terugkrijgen omdat deze niet werdt vertoond onder Restore Database. Ook heb ik geen knop gezien waar ik naar een backup bestand kan zoeken.

Ik heb op MSDN naar het detach/attach gekeken en ik denk dat ik dat maar ga gebruiken...

Webhosting van SkyHost.nl: 25 Mb / 1 Gb windows hosting € 4,50 p/m excl.btw!


Verwijderd

rechtermuis op database -> all tasks -> restore database -> restore: From device -> select devices -> add en viola :)

[ Voor 11% gewijzigd door Verwijderd op 09-08-2004 16:27 ]


  • Polderdijk
  • Registratie: December 2001
  • Laatst online: 15:58
Dank voor de uitleg! Nu ga ik helemaal voor safe en ga het iig op alle 2 de manieren de data backuppen. Daarna probeer ik het op de gewone manier terug te zetten, werkt dit niet, dan kan ik altijd nog voor de attach methode gaan.

Webhosting van SkyHost.nl: 25 Mb / 1 Gb windows hosting € 4,50 p/m excl.btw!


  • Polderdijk
  • Registratie: December 2001
  • Laatst online: 15:58
Verwijderd schreef op 09 augustus 2004 @ 16:27:
rechtermuis op database -> all tasks -> restore database -> restore: From device -> select devices -> add en viola :)
Zo idd, volgens mij heb ik echt liggen slapen toen :X

Nou ik ga het gewoon proberen.

Oja, nog 1 vraag over het detach/attach, moet ik op de nieuwe installatie ook eerst de lege databasen aanmaken, of hoeft dit niet? Nouja, ik probeer het gewoon wel ff :P

Webhosting van SkyHost.nl: 25 Mb / 1 Gb windows hosting € 4,50 p/m excl.btw!


  • whoami
  • Registratie: December 2000
  • Laatst online: 20:46
Nee, dat hoeft niet.

https://fgheysels.github.io/


Verwijderd

Gebruik je windows of sql accounts die van de databases gebruik maken?

  • Polderdijk
  • Registratie: December 2001
  • Laatst online: 15:58
Nou gisteren avond/nacht is het gebeurd, volgens de normale backup/restore is alle data weer netjes terug op zijn plaats :) Helaas is de backup van IIS corrupt geworden en moest ik handmatig zo'n 45 website's toevoegen :'(

Echter kon ik niet de master tabel terug zetten omdat hij begon te zeuren over dat je in een Single User mode moest opstarten, dit heb ik niet gedaan omdat ik daar geen zin in had om uit te zoeken.

Maar nu heb ik het probleem dat bij elke database die ik gerestored hebt ook de username is teruggezet met de rechten. Echter daar is iets vreemds mee want ik kan die username alleen zien in de Users van die betreffende database maar in de 2e kolom Login Name is blank. Onder Security -> Users zie ik hem niet. Ook kan ik niet de user verwijderen want dan krijg ik een foutmelding dat hij de Owner is.

Ik ga zo ff zoeken hoe ik die ownership eruit moet knallen zodat ik hem wel kan verwijderen!
Verwijderd schreef op 09 augustus 2004 @ 22:26:
Gebruik je windows of sql accounts die van de databases gebruik maken?
Ik gebruik SQL accounts omdat op één of andere manier in het begin de Windows account niet aan de praat kreeg, je kon wel inloggen op de database maar als sprak je de database aan dmv ASP dan kreeg ik allemaal vage foutmeldingen enzo.

Webhosting van SkyHost.nl: 25 Mb / 1 Gb windows hosting € 4,50 p/m excl.btw!


  • j_du_pee
  • Registratie: Maart 2000
  • Laatst online: 23-09-2024

j_du_pee

du pain, du vin, du pee

Polderdijk schreef op 10 augustus 2004 @ 10:01:
Ik gebruik SQL accounts omdat op één of andere manier in het begin de Windows account niet aan de praat kreeg, je kon wel inloggen op de database maar als sprak je de database aan dmv ASP dan kreeg ik allemaal vage foutmeldingen enzo.
edit: hmm, volgens mij heb ik verkeerd gelezen :/
offtopic:
klinkt als een loginmode probleem. Wanneer je via asp in wilt loggen moet de loginmode op mixed mode staan ;)
Let er wel op dat wanneer je dit doet het SA account niet de default instelling heeft van een leeg (null) wachtwoord, omdat je daarmee je machine openzet voor SQL-slammer en dergelijke (port 1433 ?)

[google=loginmode mssql mixed]

[ Voor 6% gewijzigd door j_du_pee op 10-08-2004 10:08 ]

kaart != map && bottel != fles
Wacht op antwoord


  • P_de_B
  • Registratie: Juli 2003
  • Niet online
Polderdijk schreef op 10 augustus 2004 @ 10:01:
Echter kon ik niet de master tabel terug zetten omdat hij begon te zeuren over dat je in een Single User mode moest opstarten, dit heb ik niet gedaan omdat ik daar geen zin in had om uit te zoeken.
:X

In de masterdb worden de rechten etc bijgehouden, lijkt me dus handig om die wel terug te zetten. Waarop heb je niet gewoon sp_attach gebruikt? Dat is de beste manier. Kun je dat niet alsnog doen?

Oops! Google Chrome could not find www.rijks%20museum.nl


  • Polderdijk
  • Registratie: December 2001
  • Laatst online: 15:58
Nou ik wilde het in eerste instantie doen met detach/attach, maar op de één of andere manier wilde dat niet lukken. Dus vandaar dat ik de 2e optie hebt gekozen door het op de 'normale' backup/restore manier hebt gedaan.

Ipc is het nu geen ramp maar ik heb extra account aangemaakt met [username]2 en nu kunnen de databasen ook gebruikt worden alleen ik moest in de ASP code overal een 2-tje achter de username zetten :(

Webhosting van SkyHost.nl: 25 Mb / 1 Gb windows hosting € 4,50 p/m excl.btw!


  • j_du_pee
  • Registratie: Maart 2000
  • Laatst online: 23-09-2024

j_du_pee

du pain, du vin, du pee

Polderdijk schreef op 10 augustus 2004 @ 10:17:
Ipc is het nu geen ramp maar ik heb extra account aangemaakt met [username]2 en nu kunnen de databasen ook gebruikt worden alleen ik moest in de ASP code overal een 2-tje achter de username zetten :(
gelukkig had je de connectiestring in een includefile staan die je in alle relevante ASP's aanriep, zodat dit maar op 1 plaats hoefde te gebeuren ;) :P

kaart != map && bottel != fles
Wacht op antwoord


  • Polderdijk
  • Registratie: December 2001
  • Laatst online: 15:58
j_du_pee schreef op 10 augustus 2004 @ 10:21:
[...]

gelukkig had je de connectiestring in een includefile staan die je in alle relevante ASP's aanriep, zodat dit maar op 1 plaats hoefde te gebeuren ;) :P
Ja klopt, maar dit is per website, en aangezien ik zo'n 15 site's hebt staan die via de SQL db gaat, moest ik het 15 keer doen ;)

Webhosting van SkyHost.nl: 25 Mb / 1 Gb windows hosting € 4,50 p/m excl.btw!


Verwijderd

Polderdijk schreef op 10 augustus 2004 @ 10:01:
Ik gebruik SQL accounts omdat op één of andere manier in het begin de Windows account niet aan de praat kreeg, je kon wel inloggen op de database maar als sprak je de database aan dmv ASP dan kreeg ik allemaal vage foutmeldingen enzo.
Als je sql server opniew installeerd, ben je de validatie in de database kwijt.
Stel dat je user "user-a" hebt, met wachtwoord "geheim" in je originele databse in de eerste installatie.
Je backuped de database, herinstalleerd sql server en maakt de user "user-a" met wachtwoord "geheim" opniew aan in je sql server.
Je krijgt dan een foutmelding, omdat je nieuwe sql server niet vindt dat de "user-a" uit de gerestorde database hetzelfde is als je nieuw aangemaakt "user-a".
Met de query analyser voer je dan de volgende code af op de gerestorde database:

sp_change_users_login 'Update_One', 'user-a', 'user-a'

Daarna werkt het account weer wel. (aangezien je het nu toch al aan de praat hebt, is het leuke voor de search gebruikers)

  • Polderdijk
  • Registratie: December 2001
  • Laatst online: 15:58
Ik heb toch voor elkaar gekregen om de master te restoren. Ik heb eerst de SQL server gestopt. Daarna heb ik hem in een dosbox gestart met:
code:
1
C:\[SQLDir]\sqlservr.exe -c -m
Hiermee start je SQL op in single user mode. Alleen administrators kunen inloggen op de SQL. Nu heb ik gewoon via de normale weg de master kunnen restoren. Even voor de zekerheid gereboot en nu draaid hij weer zoals vroeger :)

(Heb ook weer alle database connecties moeten veranderen, overal het 2-tje weer weg moeten halen 8))
sp_change_users_login 'Update_One', 'user-a', 'user-a'
Ja daar kom je nu mee :+ Nou ja, het is uiteindelijk toch gelukt!

[ Voor 12% gewijzigd door Polderdijk op 10-08-2004 11:47 ]

Webhosting van SkyHost.nl: 25 Mb / 1 Gb windows hosting € 4,50 p/m excl.btw!

Pagina: 1