sql >> Database >  >> RDS >> Database

Voorbeeld DW-database herstellen AdventureWorksDW2019

Soms hebben we een voorbeelddatabase nodig met alle vereiste objecten en een grote set gegevens in de database voor onze verschillende testbehoeften of ons leerdoel. Microsoft heeft verschillende voorbeelddatabases ontwikkeld voor elk type workload, zoals de AdventureWorks-database voor OLTP-workloads en de AdventureWorksDW-database voor datawarehouse-workloads.

Hier zal ik u verschillende benaderingen laten zien voor het maken of installeren van SQL Server datawarehouse-voorbeelddatabase AdventureWorksDW. Ik zal in dit artikel de nieuwste versie van deze database AdventureWorksDW2019 gebruiken.

U kunt elk van de twee methoden gebruiken om een ​​voorbeelddatabase AdventureWorksDW2019 te installeren.

  1. Herstel AdventureWorksDW2019 met een back-upbestand
  2. Maak AdventureWorksDW2019-database met T-SQL-scripts

In dit artikel zal ik beide benaderingen (GUI en T-SQL) uitleggen om deze database te herstellen met behulp van een back-upbestand. Laten we beginnen met de eerste methode waarin we deze database herstellen met behulp van back-upbestanden.

De AdventureWorksDW2019-database herstellen met een back-upbestand

In dit gedeelte wordt uitgelegd hoe u de voorbeelddatabase AdventureWorksDW2019 kunt herstellen met behulp van het back-upbestand met GUI- en T-SQL-instructies. De eerste stap om deze installatie te starten, is door het back-upbestand te downloaden via deze link .

Zodra u op de respectieve versie van een back-upbestand klikt, krijgt u de onderstaande pop-up onder aan uw scherm om de juiste locatie te kiezen. Klik op de S ave om het downloadproces te starten.

Zodra het back-upbestand is gedownload, zal de onderstaande pop-up dit weergeven zoals in de onderstaande afbeelding.

U hebt nu het back-upbestand van uw SQL Server Data Warehouse-voorbeelddatabase AdventureWorksDW2019 gedownload. De volgende stap is om dit back-upbestand te herstellen op uw doel-SQL Server-instantie.

Back-upbestand herstellen met GUI

In deze sectie wordt de GUI-aanpak uitgelegd om de voorbeelddatabase te herstellen. Het zal een eenvoudig herstel zijn zoals we doen voor andere SQL Server-databases. Start SQL Server Management Studio. Maak verbinding met uw doel-SQL Server-exemplaar waar u de datawarehouse-voorbeelddatabase AdventureWorksDW2019 wilt herstellen. Ik heb verbinding gemaakt met mijn doelinstantie in de onderstaande afbeelding.

Klik met de rechtermuisknop op de Databases map en klik op de Database herstellen… optie zoals weergegeven in de onderstaande afbeelding.

U krijgt de onderstaande database herstellen venster nadat u op Databases herstellen… . hebt geklikt opties uit de bovenstaande schermafbeelding. We zullen de tweede optie kiezen die wordt weergegeven in het brongedeelte van de onderstaande afbeelding. Klik op het keuzerondje naast Apparaat . Zodra u op deze optie klikt, wordt een tabblad met drie stippen weergegeven als grijs weergegeven in de onderstaande afbeelding om het back-upbestand te kiezen.

Klik op de drie stippen van het apparaat dat wordt weergegeven in een blauwe rechthoek in de onderstaande afbeelding om de back-upmedia te kiezen. U krijgt het onderstaande scherm om het back-upbestand te kiezen dat we in het bovenstaande gedeelte hebben gedownload. Volg de instructies om het back-upbestand te selecteren.

Hier kunnen we het gedownloade back-upbestand zien in de onderstaande afbeelding. Selecteer dit bestand om de voorbeelddatabase te herstellen. Kies dit back-upbestand en klik op de OK knop om door te gaan.

Nadat u het back-upbestand hebt geselecteerd, worden alle details met betrekking tot de database automatisch ingevuld met behulp van het back-upbestand. U hoeft alleen alle details te verifiëren en indien nodig wijzigingen aan te brengen. Hier moeten we deze database met dezelfde naam herstellen, dus ik heb alles gelaten zoals het is.

Klik op de Bestanden tabblad om te controleren of u deze database op de juiste locatie terugzet. Als u de locatie van de databasebestanden wilt wijzigen, kunt u dat hier doen. Controleer de details en als alles er goed uitziet, klikt u op OK om het herstel voort te zetten.

U kunt de database AdventureWorksDW2019 . zien is succesvol hersteld in de onderstaande afbeelding. Klik op de OK knop om het herstelvenster te sluiten.

U kunt deze restauratie valideren door toegang te krijgen tot deze nieuw gemaakte database en we kunnen zien dat deze database zeer goed toegankelijk is in de onderstaande afbeelding. We kunnen al zijn objecten zien in de objectverkenner.

Zelfs als u deze database in Azure SQL Database in-cloud wilt implementeren of kopiëren, kunt u dit als volgt doen Deploy Database to Microsoft Azure SQL Database… optie gegeven onder de Taken optie die u krijgt door met de rechtermuisknop op de herstelde database te klikken, zoals weergegeven in de onderstaande afbeelding. U hoeft alleen de resterende instructies te volgen die door het venster worden voorgesteld. Het zal u vragen om verbinding te maken met uw Azure SQL-database, waarna de implementatie zal beginnen.

Database herstellen met T-SQL

We kunnen ook de voorbeelddatabase AdventureWorksDW2019 herstellen met behulp van T-SQL-instructies. Zoals we het back-upbestand *.bak hebben gedownload in de bovenstaande sectie. Nu zullen we de koptekstinformatie van het back-upbestand lezen om databasebestandsnamen te krijgen met behulp van de onderstaande T-SQL-instructie.

--Run below statements to read database logical file names and other backup header information
RESTORE FILELISTONLY 
FROM DISK =N'C:\19June2021\Sample-DW\AdventureWorksDW2019.bak' 
 

Databasedetails worden hieronder weergegeven tijdens het openen van de back-upheaderinformatie. We hebben de logische bestandsnamen nodig om de opdracht RESTORE DATABASE uit te voeren. Concentreer u ook op de fysieke bestandsnaam als deze locatie niet geschikt is voor de locatie van uw doeldatabasebestand, gebruik dan de MOVE-clausule in de RESTORE-instructie.

Vervolgens voeren we de onderstaande opdracht RESTORE DATABASE uit om de voorbeelddatabase op uw doelinstantie te herstellen. Zorg ervoor dat u de locatie van het databasebestand wijzigt die in de MOVE-clausule wordt gegeven.

--Restore Sample Database AdventureWorksDW2019
USE [master]
RESTORE DATABASE [AdventureWorksDW2019] 
FROM DISK = N'C:\19June2021\Sample-DW\AdventureWorksDW2019.bak' 
WITH MOVE 'AdventureWorksDW2017' TO 'C:\MSSQL\MSSQL15.MSSQLSERVER\MSSQL\DATA\AdventureWorksDW2019.mdf',
MOVE 'AdventureWorksDW2017_log' TO 'C:\MSSQL\MSSQL15.MSSQLSERVER\MSSQL\DATA\AdventureWorksDW2019_log.ldf',
FILE = 1, NOUNLOAD, STATS = 5
GO

De bovenstaande opdracht heeft de voorbeelddatabase AdventureWorksDW2019 in de onderstaande afbeelding hersteld.

Als u deze voorbeelddatabase met dezelfde naam al hebt hersteld met behulp van de GUI-methode, kunt u die database verwijderen als u deze wilt herstellen met dezelfde naam of een andere naam. Hier heb ik de databasenaam en de bestanden gewijzigd voor de succesvolle uitvoering van dit herstel.

--Restore sample database using different Name
USE [master]
RESTORE DATABASE [AdventureWorksDW2019-TSQL] 
FROM  DISK = N'C:\MSSQL\AdventureWorksDW2019.bak' 
WITH MOVE 'AdventureWorksDW2017' TO 'C:\MSSQL\MSSQL15.MSSQLSERVER\MSSQL\DATA\AdventureWorksDW2019-TSQL.mdf',
MOVE 'AdventureWorksDW2017_log' TO 'C:\MSSQL\MSSQL15.MSSQLSERVER\MSSQL\DATA\AdventureWorksDW2019TSQL_log.ldf',
FILE = 1,  NOUNLOAD,  STATS = 5
GO

Hier kunt u de herstelde database AdventureWorksDW20119 valideren. Ik heb de opdracht sp_helpdb uitgevoerd om de details te krijgen en je kunt zien dat deze database toegankelijk is in de onderstaande afbeelding.

-- Check DB details
sp_helpdb AdventureWorksDW2019

Ik heb twee benaderingen gedemonstreerd voor het herstellen van de voorbeelddatabase AdventureWorksDW2019 in het bovenstaande gedeelte.

AvontuurWorksDW2019-database maken met T-SQL-scripts

Als u een voorbeelddatabase niet wilt of kunt herstellen met behulp van een back-upbestand *.bak, heeft u een andere optie om deze te verkrijgen met behulp van T-SQL-scripts. Microsoft heeft een master T-SQL-script gegeven dat een voorbeelddatabase AdventureWorksDW20119 zal maken met alle database-objecten die structuur hebben en vervolgens zal dit script alle tabellen laden met de feitelijke gegevens. In deze sectie kunt u deze database maken met behulp van T-SQL-scripts.

Open de bijgevoegde MSDN link om alle scripts en datasheets te downloaden die in de voorbeelddatabase worden geladen. Ga naar het gedeelte Scripts maken van deze MSDN-pagina. U ziet twee downloadlinks zoals weergegeven in de onderstaande afbeelding. De ene is voor de OLTP-workload en de tweede is voor de datawarehouse-workload. Omdat we een voorbeelddatabase moeten installeren voor datawarehouse-workload, zullen we de bestanden downloaden die zijn bijgevoegd onder de tweede link die ik ook in het onderstaande scherm heb gemarkeerd.

U krijgt het onderstaande pop-upvenster onder aan uw scherm om dit bestand te downloaden en op te slaan. Kies de juiste locatie en sla deze bestanden op.

Ga naar de locatie waar je bovenstaande bestanden hebt opgeslagen. U ziet gedownloade gecomprimeerde bestanden zoals weergegeven in de onderstaande afbeelding. De volgende stap is om dit gecomprimeerde bestand uit te pakken door er met de rechtermuisknop op te klikken en het hier uit te pakken of uit te pakken.

U kunt na het uitpakken alle bestanden zien die onder het gezipte bestand vallen in het onderstaande scherm. Er is één SQL-bestand met de naam “instawdbdw” en meerdere CSV-bestanden waar de werkelijke gegevens zich bevinden. We zullen dit SQL-script uitvoeren dat de database en al zijn objecten zal maken, samen met het laden van de daadwerkelijke gegevens in de database.

Maak verbinding met uw SQL Server-instantie in SQL Server Management Studio. Klik op het Bestand tabblad en klik vervolgens op Openen , kies nu het Bestand… optie om het bovenstaande SQL-bestand te selecteren om op SQL Server te draaien.

Kies hier het gedownloade SQL-bestand. Klik op de Openen om het te openen in het nieuwe queryvenster van SQL Server Management Studio.

Hier ziet u het SQL-script in het nieuwe queryvenster. Lees alle becommentarieerde regels van het script om de succesvolle uitvoering van dit script te verzekeren. U kunt verschillende verplichte vereisten zien in de onderstaande afbeelding, zorg ervoor dat u ze allemaal volgt voordat u dit script uitvoert. Hieronder vindt u de lijst met deze vereisten:

  • Schakel zoeken in volledige tekst in op SQL Server-instantie
  • Een query moet worden uitgevoerd in de SQLCMD-modus
  • Verander het pad dat in dit script wordt gegeven in het door u gewenste pad waar u het script hebt opgeslagen of kopieer het script naar de onderstaande locatie.

Ik heb zoeken in volledige tekst al ingeschakeld voor mijn SQL Server-instantie, dus we zijn goed met de eerste optie. De tweede optie is om SQLCMD in te schakelen, wat we kunnen doen door op de SQLCMD-modus te klikken van de Query tabblad zoals weergegeven in de onderstaande afbeelding. Ik heb het pad naar de locatie van het script waar ik alle bestanden heb opgeslagen al gewijzigd.

Voer nu het bovenstaande commando uit.

U kunt de uitvoering van dit script zien in de onderstaande afbeelding. U kunt de voortgang van de uitvoering van het script bekijken in het uitvoergedeelte waar elke actie duidelijk wordt vermeld.

Vervolgens kunt u de nieuw gemaakte datawarehouse-voorbeelddatabase AdventureWorksDW valideren in de onderstaande afbeelding wanneer het bovenstaande script met succes is uitgevoerd. We kunnen zien dat alle objecten zijn gemaakt.

Conclusie

In dit artikel heb ik u laten zien hoe u de datawarehouse-voorbeelddatabase AdventureWorksDW met meerdere methoden kunt maken en installeren. U kunt dit artikel volgen om de voorbeelddatabase voor uw zakelijke behoeften te herstellen. U kunt ook back-ups maken van databases en de voorbeelddatabase herstellen vanaf een back-up met dbForge Studio voor SQL Server. Deel dit artikel en geef uw feedback, zodat we kunnen verbeteren.


  1. Kan geen verbinding maken met lokale MySQL-server via socket '/var/mysql/mysql.sock' (38)

  2. Hoe lid te worden van de eerste rij

  3. Geekbench 3 gebruiken om de prestaties van de databaseserver te evalueren

  4. Hoe kan ik een taak plannen om dagelijks een SQL-query uit te voeren?