Відновлення та запобігання втраті файлів Microsoft SQL Server
Читайтеяк відновити віддалену базу MSSQL використовуючи вбудовані в додаток інструменти або сторонні програми. Розглянемо причини, через які база може бути втрачена, а також способи відновлення для кожного з них. SQL Server - це система управління реляційними базами даних (СУБД) від Microsoft, яка спочатку розроблялася компанією як конкурент набирали популярності Oracle Database і MySQL.
Основним інструментом інтерфейсу SQL Server є Microsoft SQL Server Management Studio (SSMS).

Як і більшість СУБД, Microsoft SQL Server підтримує стандарт ANSI SQL. Проте, СУБД від Microsoft також використовує свою реалізацію стандарту – T-SQL.
Файли системи Microsoft SQL Server
Файли бази SQL Server за промовчанням зберігаються на диску З комп'ютера:
C:\Program Files\Microsoft SQL Server
Причому під кожну базу створюється окрема папка із назвою. Наприклад, у разі створено дві бази даних Microsoft SQL Server: MSSQL13.SQLEXPRESS, MSSQL13.MSSQLHETMAN.

Дані будь-якої бази даних MSSQL зберігаються в робочих системних файлах, яких є три типи:
- *.mdf– це первинний файл даних бази. Цей файл містить відомості, необхідні для запуску бази, посилання на інші файли бази, дані та об'єкти користувача. У файлі .mdf фізично зберігаються дані бази.
- *.ndf– вторинні файли даних бази, які також використовуються системою зберігання даних бази.
- *.ldf– файли журналу транзакцій (лог файли).
Кожен із зазначених файлів має назву бази даних і зберігається в папці \DATA:
C:\Program Files\Microsoft SQL Server\Назва_Бази_Даних\MSSQL\DATA

Під час створення та налаштування бази даних MSSQL можна змінити папку зберігання файлів бази даних. З метою безпеки даних, а також у зв'язку з тим, що файли бази можуть мати великий обсяг, рекомендовано зберігати їх на іншому диску комп'ютера (не на С).
Причини втрати даних MSSQL
Щоб правильно підібрати способи відновлення бази даних та методи її резервування, необхідно розуміти, що може спричинити втрату таких даних. Причин може бути безліч, але основними можна назвати:
Помилки програмного забезпечення. Це зазвичай логічні помилки або збій системи. Внаслідок виникнення таких помилок система довільно здійснює аварійне завершення роботи системи, після чого не може виконати відновлення.
Збій або вихід з ладу апаратного забезпечення. Найбільш частою причиною втрати даних бази даних через апаратне забезпечення є вихід з ладу дискового накопичувача (жорсткого диска). Але втратою даних або бази Microsoft SQL Server може також обернутися вихід з ладу комп'ютера з будь-якої причини, під час роботи бази даних.
Людський фактор. Втрата даних внаслідок ненавмисних дій користувача або адміністратора системи.
Способи відновлення бази даних
Є кілька способів резервування та відновлення даних бази SQL Server. Використання кожного з них залежить від мети: планове створення бекапу бази даних або відновлення з нього при переносі бази даних на іншу машину, або необхідність відновлення даних бази MSSQL в результаті її втрати або видалення.
Створити копію бази даних для подальшого відновлення можна як за допомогою вбудованих у Microsoft SQL Server Management Studio інструментів, так івручну. Створення та відновлення бази даних із створеної вручну копії, це швидший процес ніж створення та розгортання резервної копії, але не такий надійний.
Крім того, якщо скопіювати файли бази даних вручну не зупинивши її або під час транзакції, такі файли зберігаються в неузгодженому стані, що призведе до помилок при спробі відновити систему з їх допомогою. Тому перш ніж створювати копію файлів MSSQL вручну (файлів даних та журналів транзакцій) для бекапу, базу даних необхідно відключити (перевести в offline режим).
Запустіть Менеджер конфігурації SQL Server (Sql Server Configuration Manager)

Виберіть Служби SQL Server
У правому вікні диспетчера клацніть правою кнопкою миші на базі даних, яку необхідно зупинити, і виберіть«Зупинити».

Запустити базу даних можна аналогічним чином, вибравши пункт меню«Запустити».
Також базу даних можна зупинити та запустити за допомогою команд:
- У Transact-SQL:SHUTDOWN;
- З вікна командного рядка:Net stop MSSQLHETMANNet start MSSQLHETMANДе,MSSQLHETMAN– назва бази даних
Відновлення віддаленої бази з Hetman Partition Recovery
У разі втрати або видалення бази даних SQL Server з комп'ютера її можна відновити за умови, що його диск зберіг свою працездатність. Це можна зробити за допомогою програми відновлення даних жорсткого диска Hetman Partition Recovery.
Щоб відновити втрачені файли даних бази MS SQL Server:
ЗапустітьHetman Partition Recoveryі проскануйте з її допомогою диск, на якому були збережені файли даних SQL Server

Перейдіть зза допомогою провідника програми в папку з файлами даних бази

Відновіть файли даних *.mdf, *.ndf, *.ldf

Приєднайте відновлені файли даних до бази SQL Server, використовуючи функцію«Приєднати…»

Для цього увійдіть в базу даних і клацніть правою кнопкою миші на папці «Бази даних». Виберіть меню«Приєднати…»/ кнопка«Додати», після вкажіть *.mdf файл даних відновленої бази та натисніть OK.

Однак варто зазначити, що якщо база даних була видалена або втрачена в результаті збою в роботі комп'ютера (який міг спричинити форматування диска або переустановки ОС), і на момент втрати / видалення її робота зупинена не була, то подальший запуск такої бази може бути пов'язані з виникненням помилок. Якщо відновити необхідно вручну створену копію файлів бази даних, то проблем з її відновленням і запуском не буде.
Як створити копію бази SQL Server для подальшого відновлення, імпорту або перенесення
Щоб уникнути втрати даних бази MSSQL у разі виникнення непередбачених обставин, у разі необхідності імпорту бази або її перенесення з однієї машини на іншу, в Microsoft SQL Server Management Studio (SSMS) передбачено цілу низку інструментів на різні випадки, частина з яких ми вже згадували цій статті.
Створити резервну копію… / Відновити
Щоб створити резервну копію бази даних, клацніть на папці з її назвою правою кнопкою миші та виберітьЗавдання/Створити резервну копію…

В результаті, в папці \Backup
C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLHETMAN\MSSQL\Backup
буде створено*.bakфайл зрезервна копія бази даних.

Щоб відновити резервну копію бази даних, клацніть на папці з її назвою правою кнопкою миші та виберітьЗавдання/Відновити, і вкажіть шлях до файлу резервної копії.
Імпорт даних… / Експортувати дані…
За допомогою функціїІмпорту/Експортуданих Microsoft SQL Server можна скопіювати дані з джерела у файл призначення або сервер. Ця функція підтримує такі джерела даних:
- SQL Server
- Microsoft Access
- Microsoft Excel
- Неструктуровані файли
Іншими словами, з SQL Server бази даних можна експортувати на інший SQL Server або файл Access, Excel, неструктурований файл. З цих джерел можна імпортувати дані в SQL Server.
Щоб експортувати дані бази, клацніть на папці з її назвою правою кнопкою миші та виберітьЗавдання/«Експортувати дані…».

Після цього вкажіть за допомогою Майстра імпорту та експорту SQL Server, Джерело і Куди копіювати дані.

Імпортувати дані до бази можна аналогічним чином, за допомогою менюЗавдання/«Імпорт даних…».
Від'єднати… / Приєднати…
Найкращим способом створення копії бази даних для перенесення її на іншу машину є функціяВід'єднати…/Приєднати…
Цей спосіб зручний тим, що в результаті використання не створюються додаткові файли бази даних або інших форматів. В результаті від'єднання база даних перестає відображатися в списку баз даних, а її файли даних залишаються на попередньому місці в папці \DATA.
Такі файли даних можна перенести в інше зручне для користувача місце безризику втрати даних з відповідної бази та підключити їх до SQL Server іншого комп'ютера (з версією не нижче від'єднаної).
Щоб від'єднати базу даних, клацніть на папці з її назвою правою кнопкою миші та виберітьЗавдання/«Від'єднати…»/Ok.

Щоб приєднати базу даних, клацніть на папці«Бази даних»правою кнопкою миші та виберіть«Приєднати…»/Додати, після чого вкажіть шлях до *.mdf файлу бази даних, яку необхідно приєднати.

Примітка. У разі потреби за допомогоюHetman Partition Recoveryможна відновити файл резервної копії бази даних (*.bak), Іморта/Експорту бази даних або файли від'єднаної бази (*.mdf, *.ndf ,*.ldf) з подальшим їх приєднанням або відновленням у Microsoft SQL Server.
Схожі статті
Partition Recovery™
Надійне повернення віддалених даних.
Універсальна програма для відновлення даних з жорсткого диска, картки пам'яті або флешки USB.
Internet Spy™
Перегляд історії браузерів та збережених паролів.

Сканує файли браузерів та відображає інформацію про проведений в Інтернеті час.
Office Recovery™
Відновлення віддалених офісних документів.
Безпечне відновлення документів, електронних таблиць, презентацій у покроковому режимі.