2014-06-25 16 views
13

Możliwe jest utworzenie kopii zapasowej bazy danych uruchomionej w instancji Amazon RDS i odtworzenie jej na komputerze lokalnym przy użyciu standardowego Zadanie -> Kopia zapasowa i Zadanie -> Przywróć funkcje w Microsoft SQL Server Management Studio? Jeśli tak, jak to zrobić?Jak wykonać kopię zapasową instancji bazy danych Amazon RDS MS SQL Server i przywrócić lokalnie

Uwaga, to pytanie nie dotyczy tego, czy można zbiorczo skopiować dane lub wygenerować skrypty, ale czy można utworzyć prawdziwą kopię zapasową bazy danych .BAK, którą można przywrócić przy użyciu funkcji przywracania SSMS.

+0

możliwy duplikat [W jaki sposób mogę utworzyć kopię zdalnej bazy danych SQL Server na dysku lokalnym?] (Http://stackoverflow.com/questions/3942207/how-can-i-backup-a-remote-sql-server -database-to-a-local-drive) – drneel

+0

To pytanie dotyczy wykonywania prawdziwej kopii zapasowej za pomocą standardowych funkcji Task -> Backup and Task -> Restore w Microsoft SQL Server Management Studio. Jako takie, jest to inne pytanie. –

Odpowiedz

9

Nie możesz obecnie utworzyć pliku .bak z amazon rds. Sposób w jaki sobie z tym poradzę polega na użyciu czarodziejskiego kreatora migracji, który akurat działa również z Amazon rds.

Wpisuję instancję EC2 z zainstalowanym programem SQL Server i kreatorem migracji. Następnie używam narzędzia do migracji, aby skopiować bazę danych RDS do instancji EC2.

Po wykonaniu tej czynności można utworzyć plik .bak z SQL Server uruchomionego na instancji EC2. to ból, ale działa. jeśli masz przepustowość lub Twoja baza danych jest mała, możesz użyć narzędzia do migracji bezpośrednio na komputerze docelowym.

http://sqlazuremw.codeplex.com

+2

RDS po prostu dodano "Amazon RDS dla SQL Server obsługuje teraz SQL Server Native Backup/Restore z S3" https://aws.amazon.com/about-aws/whats-new/2016/07/amazon-rds-sql-server -supports-native-backups/ – russau

2

Można utworzyć kopię zapasową lokalnie z AWS RDS. Korzystając z SQL Management Studio, kliknij prawym przyciskiem myszy twoją bazę danych> Zadanie> Eksportuj dane

Trzeba tylko wybrać odpowiednie "Źródło danych", np. "SQL Server Native 11" zarówno dla źródła, jak i miejsca docelowego.

Jest dobrze opisane na stronie dokumentacji AWS: http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/SQLServer.Procedural.Importing.html#SQLServer.Procedural.Exporting.SSIEW

Sekcja: "SQL Server Kreatora importu i eksportu"

+1

To świetny sposób na zbiorcze kopiowanie danych. Jednak nie jest to naprawdę kopia zapasowa, ponieważ nie kopiuje żadnych kluczy, indeksów, wiązań itp. – mntyguy

+0

Dokumentacja AWS pomogła ... – Avinash

6

Teraz można uzyskać plik bak się do S3. Oto wskazówki: http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/SQLServer.Procedural.Importing.html

Oto krótki fragment, który będzie generować kopie zapasowe:

exec msdb.dbo.rds_backup_database 
    @source_db_name='database_name', 
    @s3_arn_to_backup_to='arn:aws:s3:::bucket_name/file_name_and_extension', 
    @overwrite_S3_backup_file=1; 

Przed tej funkcji, mogę dostać bacpac, że sprawdziły się w moim przypadku. W SSMS kliknij prawym przyciskiem myszy bazę danych> Zadania> Eksportuj aplikację warstwy danych.

Udało mi się zaimportować to na mój serwer bez żadnych problemów.

Powiązane problemy