- Втрата даних є поширеною проблемою, але ми покажемо вам, як відновити пошкоджену базу даних у SQL Server.
- Ця проблема може виникнути від простого перезапису або випадкового видалення файлу, зараження вірусами та неправильної конфігурації.
- Несправність накопичувача також може призвести до пошкодження файлів, зокрема вашої бази даних SQL.
Звичайно, зі зрозумілих причин прикро виявити пошкоджену базу даних на вашому SQL Server. Ви не можете отримати доступ до інформації, і ваша робота зупиняється.
Однак існує багато способів виправити цю проблему за допомогою ручних рішень або за допомогою розумного спеціального інструменту стороннього розробника, який називається Панель інструментів відновлення для SQL Server.
Але перш ніж розпочати усунення несправностей, давайте розберемося та трохи дослідимо, чому взагалі виникає ця проблема.
Що таке SQL Server і як ми можемо ідентифікувати базу даних?
SQL Server — це система баз даних, розроблена компанією Microsoft, яка використовується для керування, зберігання та отримання даних іншими програмами.
Існує три типи файлів для зберігання та керування даними в SQL Server: первинні файли (з розширенням .MDF), вторинні файли (з розширенням .NDF) і файли журналів (з розширенням .LDF).
Нас особливо цікавлять ці файли MDF, оскільки саме вони забезпечують зберігання бази даних.
Чому база даних пошкоджується на SQL Server?
Існує багато можливих причин, чому ваша база даних SQL-сервера може бути пошкоджена: від простого перезапису або випадкового видалення файлу до зараження вірусами та неправильної конфігурації.
Давайте розглянемо деякі з найбільш поширених причин цієї проблеми:
- Перезапис файлу – Якщо ви помилково пишете поверх існуючого файлу MDF, ви ризикуєте пошкодити базу даних
- Спроба розблокувати базу даних SQL - Якщо ти забув пароль SQL і введіть його неправильно занадто багато разів, це може призвести до пошкодження SQL Server
- Помилка вашого накопичувача – Само собою зрозуміло, що несправність диска може призвести до пошкодження файлів, у тому числі бази даних
- Проблеми з конфігурацією бази даних SQL – Якщо конфігурація SQL зміниться, це може вимкнути доступ до файлів MDF
- Вірусна інфекція – Це поширена проблема для будь-якого пошкодження файлів, не тільки файлів бази даних SQL, і навіть якщо ви видалите вірус за допомогою найкращих антивірусів, на жаль, ви все одно можете втратити деякі дані
- Внутрішні помилки SQL – Хоча це сильне рішення, воно все ще може мати свої помилки, які можуть спричинити пошкодження файлів MDF
З огляду на це, дотримуйтесь нашого покрокового посібника, щоб дізнатися, як відновити файл бази даних SQL на сервері SQL.
Як я можу відновити пошкоджену базу даних у SQL Server?
ПРИМІТКА
Примітка: Перш ніж щось починати, створіть резервну копію бібліотеки SQL.
1. Перезапустіть SQL Server
- Відкрийте термінал і введіть таку команду, щоб зупинити SQL Server:
systemctl mysql стоп
- Щоб перевірити стан SQL Server, введіть таку команду та натисніть Введіть:
статус mysql.service
- Тепер перезапустіть SQL Server, виконавши таку команду в терміналі:
перезапустіть mysql.service
Іноді проблему можна вирішити, просто перезапустивши SQL Server. Звичайно, це працює не кожен раз, але це настільки легко виконати, що не завадило б виконати.
2. Відремонтувати пошкоджений стіл
- Запустіть SQL Server.
- Введіть таку команду та натисніть Введіть щоб запустити його:
CHECK TABLE name_of_the_table;
- Якщо він виявить якісь проблеми з таблицею, введіть таку команду та натисніть Введіть:
ТАБЛИЦЯ РЕМОНТУ ім'я_таблиці;
REPAIR TABLE допоможе вам відновити таблицю, і ви можете зробити те ж саме для будь-яких інших пошкоджених, але таким чином ви можете втратити деякі дані з таблиці.
3. Використовуйте команду mysqlcheck
- Відкрийте термінал і введіть або вставте таку команду, щоб перейти до папки бази даних, і натисніть Введіть:
CD /var/lib/mysql
- Тепер введіть таку команду, щоб перевірити таблицю, і натисніть Введіть. Обов’язково замініть і з реальними назвами:
mysqlcheck
- Якщо ви отримуєте повідомлення про те, що таблиця пошкоджена, введіть таку команду, щоб виправити її, і натисніть Введіть:
mysqlcheck -r
4. Використовуйте команди ALTER TABLE
- Введіть таку команду, щоб перевірити тип вашої таблиці (у нашому випадку це таблиця MyISAM):
ПОКАЗАТИ СТВОРИТИ ТАБЛИЦЮ
;
- Щоб перебудувати таблицю, введіть таку команду та натисніть Введіть:
ALTER TABLE
ДВИГУН = MyISAM;
- Якщо у вас є база даних InnoDB, замість цього введіть таку команду:
ALTER TABLE
ENGINE = InnoDB;
- Завантажте та встановіть Microsoft SQL Server 2019
- Найкраще програмне забезпечення для резервного копіювання сервера SQL [безкоштовно та платно]
- Як захистити базу даних SQL-сервера
5. Відновіть базу даних за допомогою Recovery Toolbox for SQL Server
- Перейдіть на спеціальну сторінку Recovery Toolbox for SQL Server і натисніть кнопку Завантажити кнопку.
- Встановіть програму, вибравши мову та прийнявши ліцензійну угоду.
- Натисніть Закінчити щоб запустити інструмент відновлення MDF SQL Server.
- Виберіть пошкоджене *.mdf файлу, клацнувши піктограму вихідної папки.
- Вибравши його, натисніть кнопку Далі кнопку.
- Тепер ви зможете попередньо переглянути дані, які можна отримати з пошкодженої бази даних Microsoft SQL Server. Натисніть Далі у вікні інструмента відновлення Microsoft SQL MDF, щоб почати процес.
- Тепер вам залишається лише вибрати метод експорту даних. Ви можете зберегти його як Скрипти SQL на диск і навіть виконати сценарій SQL безпосередньо в базі даних.
- Нарешті, виберіть, які дані зберегти, і натисніть на них Почніть відновлення.
Отже, це як відновити файли бази даних SQL-сервера за допомогою цього простого та ефективного засобу. Як бачите, це дозволить виконати роботу набагато швидше.
The Інструмент відновлення сервера MS SQL також допоможе вам, якщо ви зіткнулися з такими проблемами з базою даних MDF:
- Помилка Microsoft SQL Server 5172 – Властивість FILE SIZE неправильна
- SQL Server виявив помилку введення-виведення на основі логічної узгодженості – Це неправильна контрольна сума, інакше відома як помилка 824 у SQL Server
- На сторінку Index Allocation Map (IAM) вказує наступний покажчик сторінки IAM – Це досить поширена проблема
- Помилка введення-виведення, неправильний ідентифікатор сторінки, виявлено під час читання зі зміщенням 0x###### у файлі FileName.mdf – Здається, це не часто, але ви все одно можете виправити це за допомогою цього маленького інструменту
- Схоже, файл був усічений через помилку операційної системи – Швидше за все, через проблему конфігурації
- Сталася помилка під ідентифікатором запису журналу – Це відбувається під час повторного виконання зареєстрованої операції в базі даних
Насправді, за допомогою Recovery Toolbox для SQL Server відновлюються всі об’єкти пошкоджених файлів .mdf, включаючи типи даних, таблиці дані клітинки, представлення даних, збережені процедури, користувацькі функції, тригери, індекси, первинні та зовнішні ключі, обмеження та інші.
І велика перевага полягає в тому, що ви можете легко експортувати відремонтовані дані безпосередньо в Microsoft SQL Server з програми.
Ось воно! Тепер ви знаєте, як відновити базу даних SQL Server вручну або за допомогою спеціального інструменту.
Якщо ви знаєте додаткові методи або маєте запитання, ми чекаємо їх у розділі коментарів нижче.