Databases kopiëren met back-up en herstel
van toepassing op:SQL Server-
In SQL Server kunt u een nieuwe database maken door een back-up te herstellen van een gebruikersdatabase die is gemaakt met behulp van SQL Server 2005 (9.x) of een latere versie. Back-ups van hoofd-, model en msdb- die zijn gemaakt met een eerdere versie van SQL Server, kunnen echter niet worden hersteld door SQL Server. Sql Server-back-ups kunnen ook niet worden hersteld door een eerdere versie van SQL Server.
Belangrijk
SQL Server 2016 maakt gebruik van een ander standaardpad dan eerdere versies. Als u daarom back-ups wilt herstellen van een database die is gemaakt op de standaardlocatie van eerdere versies, moet u de optie MOVE gebruiken. Voor meer informatie over het nieuwe standaardpad zie Bestandslocaties voor standaard- en benoemde exemplaren van SQL Server. Zie 'De databasebestanden verplaatsen' verderop in dit onderwerp voor meer informatie over het verplaatsen van databasebestanden.
Algemene stappen voor het gebruik van back-up en herstel om een database te kopiëren
Wanneer u back-up en herstel gebruikt om een database te kopiëren naar een ander exemplaar van SQL Server, kunnen de bron- en doelcomputers elk platform zijn waarop SQL Server wordt uitgevoerd.
De algemene stappen zijn:
Maak een back-up van de brondatabase, die zich kan bevinden op een exemplaar van SQL Server 2005 (9.x) of hoger. De computer waarop dit exemplaar van SQL Server wordt uitgevoerd, is de broncomputer.
Maak op de computer waarop u de database wilt kopiëren (de doelcomputer), verbinding met het exemplaar van SQL Server waarop u de database wilt herstellen. Indien nodig maakt u op het doelexemplaren server dezelfde back-upapparaten als voor de back-up van de bron databases.
Herstel de back-up van de brondatabase op de doelcomputer. Als u de database herstelt, worden automatisch alle databasebestanden gemaakt.
Enkele aanvullende overwegingen die van invloed kunnen zijn op dit proces:
Voordat u databasebestanden herstelt
Als u een database herstelt, worden automatisch de databasebestanden gemaakt die nodig zijn voor het herstellen van de database. De bestanden die tijdens het herstelproces door SQL Server zijn gemaakt, gebruiken standaard dezelfde namen en paden als de back-upbestanden van de oorspronkelijke database op de broncomputer.
Als u de database herstelt, kunt u desgewenst de apparaattoewijzing, bestandsnamen of het pad voor de herstellende database opgeven.
Dit kan nodig zijn in de volgende situaties:
De mapstructuur of stationstoewijzing die door de database op de oorspronkelijke computer wordt gebruikt, bestaat niet op de andere computer. De back-up bevat bijvoorbeeld een bestand dat standaard naar station E wordt hersteld, maar de doelcomputer ontbreekt aan een station E.
De doellocatie heeft mogelijk onvoldoende ruimte.
U hergebruikt een databasenaam die al bestaat op de herstelbestemming en een van de bestanden heeft dezelfde naam als een databasebestand in de back-upset: het volgende gebeurt:
Als het bestaande databasebestand kan worden overschreven, wordt het overschreven (dit heeft geen invloed op een bestand dat deel uitmaakt van een andere databasenaam).
Als het bestaande bestand niet kan worden overschreven, treedt er een herstelfout op.
Om fouten en onaangename gevolgen te voorkomen, kunt u vóór de herstelbewerking de back-upbestand geschiedenistabel gebruiken om de database en logboekbestanden in de back-up te achterhalen die u wilt herstellen.
De databasebestanden verplaatsen
Als de bestanden in de databaseback-up niet kunnen worden hersteld naar de doelcomputer, moet u de bestanden verplaatsen naar een nieuwe locatie terwijl ze worden hersteld. Bijvoorbeeld:
U wilt een database herstellen op basis van back-ups die zijn gemaakt op de standaardlocatie van de eerdere versie.
Het kan nodig zijn om sommige databasebestanden in de back-up naar een ander station te herstellen wegens capaciteitsproblematieken. Dit komt vaak voor omdat de meeste computers binnen een organisatie niet hetzelfde aantal en dezelfde grootte van schijfstations of identieke softwareconfiguraties hebben.
Het kan nodig zijn om een kopie van een bestaande database op dezelfde computer te maken voor testdoeleinden. In dit geval bestaan de databasebestanden voor de oorspronkelijke database al, dus er moeten verschillende bestandsnamen worden opgegeven wanneer de databasekopie wordt gemaakt tijdens de herstelbewerking.
Zie 'Bestanden en bestandsgroepen herstellen naar een nieuwe locatie' verderop in dit onderwerp voor meer informatie.
De databasenaam wijzigen
De naam van de database kan worden gewijzigd omdat deze wordt hersteld naar de doelcomputer, zonder eerst de database te hoeven herstellen en vervolgens de naam handmatig te wijzigen. Het kan bijvoorbeeld nodig zijn om de databasenaam te wijzigen van Sales in SalesCopy- om aan te geven dat dit een kopie van een database is.
De naam van de database die expliciet wordt opgegeven wanneer u een database herstelt, wordt automatisch gebruikt als de nieuwe databasenaam. Omdat de databasenaam nog niet bestaat, wordt er een nieuwe gemaakt met behulp van de bestanden in de back-up.
Bij het upgraden van een database met behulp van Herstellen
Bij het herstellen van back-ups van een eerdere versie is het handig om vooraf te weten of het pad (station en map) van ieder van de volledige tekstcatalogi in een back-up op de doelcomputer bestaat. Als u de logische namen en fysieke namen, het pad en de bestandsnaam) van elk bestand in een back-up wilt weergeven, inclusief de catalogusbestanden, gebruikt u een INSTRUCTIE RESTORE FILELISTONLY FROM <backup_device>. Zie RESTORE FILELISTONLY (Transact-SQL)voor meer informatie.
Als hetzelfde pad niet bestaat op de doelcomputer, hebt u twee alternatieven:
Maak de equivalente schijf-/maptoewijzing op de doelcomputer.
Verplaats de catalogusbestanden naar een nieuwe locatie tijdens de herstelbewerking met behulp van de MET MOVE clausule in uw HERSTEL DATABASE-instructie. Zie RESTORE (Transact-SQL)voor meer informatie.
Zie Upgrade Full-Text Searchvoor meer informatie over alternatieve opties voor het upgraden van indexen in volledige tekst.
Eigendom van database
Wanneer een database op een andere computer wordt hersteld, wordt de SQL Server-aanmelding of Microsoft Windows-gebruiker die de herstelbewerking start automatisch de eigenaar van de nieuwe database. Wanneer de database is hersteld, kan de systeembeheerder of de nieuwe database-eigenaar het eigendom van de database wijzigen. Om ongeautoriseerde herstel van een database te voorkomen, gebruikt u wachtwoorden voor media- of back-upsets.
Metagegevens beheren bij het terugzetten naar een ander serverexemplaar
Wanneer u een database herstelt naar een ander serverexemplaren, om gebruikers en toepassingen consistent te maken, moet u mogelijk enkele of alle metagegevens voor de database, zoals aanmeldingen en taken, opnieuw maken op het andere serverexemplaren. Voor meer informatie, zie Metagegevens beheren bij het beschikbaar maken van een database op een ander serverexemplaar (SQL Server).
De gegevens en logboekbestanden in een back-upset weergeven
bestanden en bestandsgroepen herstellen naar een nieuwe locatie
bestanden en bestandsgroepen herstellen via bestaande bestanden
Een database herstellen met een nieuwe naam
een onderbroken herstelbewerking opnieuw starten
database-eigenaar wijzigen
een database kopiëren met behulp van SMO- (SQL Server Management Objects)
Zie ook
Databases kopiëren naar andere servers
bestandslocaties voor standaard- en benoemde exemplaren van SQL Server
FILELISTONLY (Transact-SQL) herstellen
RESTORE (Transact-SQL)