Възстановяването на база данни е нещо просто с Azure Data Studio. Процесът е подобен на този с SQL Server Management Studio. Просто щракнете върху Възстановяване и следвайте подканите.
Този процес на възстановяване ви позволява да навигирате през файловата система на компютъра, за да намерите .bak файла. Този .bak файл съдържа резервно копие на базата данни, която искате да възстановите. Така че, когато SQL Server възстановява базата данни, той използва .bak файла за това.
Въпреки това, ако изпълнявате своя екземпляр на SQL Server в Docker контейнер (което, разбира се, бихте направили, ако използвате SQL Server на Mac или Linux), има нещо, което трябва да знаете, ако вашият архивен файл се намира извън контейнера на Docker.
Ако архивният файл се намира извън контейнера на Docker, който изпълнява SQL Server, ще трябва да го копирате в контейнера на Docker, преди да извършите възстановяването. След като копирате .bak файла в контейнера на Docker, можете да продължите и да използвате Azure Data Studio, за да възстановите базата данни.
По-долу очертавам всички необходими стъпки.
Този урок предполага, че сте инсталирали SQL Server на вашия Mac с помощта на Docker контейнер и сте инсталирали Azure Data Studio.
Трябва да отбележа, че въпреки че примерите на тази страница са направени на Mac, всички стъпки трябва да работят както на macOS, така и на Linux.
Изтеглете примерна база данни
Ако вече имате своя собствена база данни .bak файл, не е необходимо да правите тази стъпка.
За този урок ще възстановя примерната база данни на WideWorldImporters. Това е примерна база данни, която Microsoft предостави за показване на различните функции на SQL Server. По-специално, ще използвам версията на базата данни за съхранение на данни.
За да изтеглите .bak файл на примерната база данни на WideWorldImporters, или отидете на страницата на WideWorldImporters Github и намерете връзката за изтегляне, или можете да изтеглите файла .bak директно тук:
- WildWorldImportersDW-Full.bak [47.7mb]
Копирайте файла .bak в контейнера на Docker
Ще трябва да направите тази стъпка само ако вашият .bak файл се намира извън контейнера на Docker (който ще бъде, ако току-що сте изтеглили файла WideWorldImporters .bak).
Първо, нека създадем папка в контейнера на Docker:
sudo docker exec -it sql_server_demo mkdir /var/opt/mssql/backup
Сега копирайте файла .bak на базата данни в тази папка:
sudo docker cp WideWorldImportersDW-Full.bak sql_server_demo:/var/opt/mssql/backup
Тази команда предполага, че сте в същата директория като файла .bak. Ако не, променете първо в директорията, като използвате. Например:
cd Downloads
или каквато и папка, в която се намира.
Защо трябва да копираме файла .bak?
Контейнерът Docker има своя собствена файлова система и живее независимо от файловата система на вашия Mac. Така че, когато се опитате да отидете до файла .bak в Azure Data Studio (в следващата стъпка), ще се окажете „заседнали“ във файловата система на контейнера Docker, без начин за достъп до .bak файла във файла на вашия Mac система. Затова първо копираме файла .bak във файловата система на контейнера, след което можем да получим достъп до него чрез Azure Data Studio.
Възстановете базата данни
Добре, сега можем да извършим действителния процес на възстановяване на базата данни.
Следващите стъпки предполагат, че вече имате работещо Azure Data Studio и вече сте се свързали със SQL Server.
- От таблото за управление на сървъра щракнете върху Възстановяване бутон
- В Възстановяване от заглавие, изберете Архивен файл от падащото меню
- На Пътят на архивния файл заглавие, щракнете върху многоточия (… )
- Отворете папката, изберете .bak файла и щракнете върху OK
- Щракнете върху Възстановяване
- Възстановяването може да отнеме минута или две. История на задачите ще покаже кога е готов
Базата данни вече е възстановена.
Проверете базата данни
Вероятно ще искате да проверите дали базата данни действително е възстановена. Един от начините да направите това е да отидете до базата данни и да изпълните бърза заявка.
- Щракнете върху Сървъри икона (горе вляво на екрана)
- Базата данни вече трябва да бъде изброена под Бази данни насочване към приложимия сървър. Ако не, щракнете с десния бутон върху Бази данни и изберете Опресняване
- Използвайте интерфейса на Azure Data Studio, за да изпълните заявка към базата данни. Например, щракнете с десния бутон върху Таблици възел (след разширяване на базата данни) и щракнете върху Изберете топ 1000 . Това автоматично изпълнява заявка към тази таблица, като избира само първите 1000 резултата