Backup windows server with linux

Backup and restore SQL Server databases on Linux

Applies to: SQL Server (all supported versions) — Linux

You can take backups of databases from SQL Server 2017 on Linux with many different options. On a Linux server, you can use sqlcmd to connect to the SQL Server and take backups. From Windows, you can connect to SQL Server on Linux and take backups with the user interface. The backup functionality is the same across platforms. For example, you can backup databases locally, to remote drives, or to Microsoft Azure Blob storage service.

SQL Server on Linux only supports backing up to Azure Blob storage using block blobs. Using a storage key for backup and restore will result in a page blog being used, which isn’t supported. Use a Shared Access Signature instead. For information on block blogs versus page blogs, see Backup to block blob vs. page blob.

Backup a database

In the following example sqlcmd connects to the local SQL Server instance and takes a full backup of a user database called demodb .

When you run the command, SQL Server will prompt for a password. After you enter the password, the shell will return the results of the backup progress. For example:

Backup the transaction log

If your database is in the full recovery model, you can also make transaction log backups for more granular restore options. In the following example, sqlcmd connects to the local SQL Server instance and takes a transaction log backup.

Restore a database

In the following example sqlcmd connects to the local instance of SQL Server and restores the demodb database. Note that the NORECOVERY option is used to allow for additional restores of log file backups. If you do not plan to restore additional log files, remove the NORECOVERY option.

If you accidentally use NORECOVERY but do not have additional log file backups, run the command RESTORE DATABASE demodb with no additional parameters. This finishes the restore and leaves your database operational.

Restore the transaction log

The following command restores the previous transaction log backup.

Backup and Restore with SQL Server Management Studio (SSMS)

You can use SSMS from a Windows computer to connect to a Linux database and take a backup through the user-interface.

Use the latest version of SSMS to connect to SQL Server. To download and install the latest version, see Download SSMS. For more information on how to use SSMS, see Use SSMS to Manage SQL Server on Linux.

The following steps walk through taking a backup with SSMS.

Start SSMS and connect to your server in SQL Server 2017 on Linux.

In Object Explorer, right-click on your database, Click Tasks, and then click Back Up. .

In the Backup Up Database dialog, verify the parameters and options, and click OK.

SQL Server completes the database backup.

Restore with SQL Server Management Studio (SSMS)

The following steps walk you through restoring a database with SSMS.

In SSMS right-click Databases and click Restore Databases. .

Under Source click Device: and then click the ellipses (. ).

Locate your database backup file and click OK.

Under Restore plan, verify the backup file and settings. Click OK.

Information Security Squad

stay tune stay secure

  • Home
  • 2019
  • Ноябрь
  • 19
  • 5 лучших инструментов для резервного копирования серверов для Linux

5 лучших инструментов для резервного копирования серверов для Linux

Давайте опять рассмотрим тему резервного копирования.

Думаю не лишним будет упомянуть, что вы можете потерять все свои данные от простого скачка электроэнергии, даже если вы используете бесперебойное оборудование, к примеру omadapro.ru

Я уже говорил о некоторых удобных приложениях резервного копирования для декстопов Linux:

Однако не все, кто использует Linux, используют его в качестве персонального компьютера, поэтому я подумал, что составлю другой список, который охватит лучшие инструменты резервного копирования для серверов Linux.

Вот пять инструментов, которые вы можете попробовать.

Читайте также:  Volume licensing windows server

1. Amanda

Amanda – «самое популярное в мире программное обеспечение для резервного копирования и восстановления с открытым исходным кодом», по крайней мере, по словам разработчика.

На самом деле, это один из наиболее часто используемых инструментов резервного копирования в Linux, а также в Windows, и в первую очередь он предназначен для системных администраторов, «упрощая» всю систему резервного копирования.

Средство резервного копирования Amanda является отличным выбором, учитывая тот факт, что оно может значительно уменьшить головную боль, когда речь идет об управлении несколькими серверами Linux и сложных операциях системного администрирования.

Известные особенности

  • Amanda может создавать резервные копии ваших данных различными способами, включая «хранилище», резервное копирование на ленту, NAS, SAN, iSCSI и даже облачное хранилище.
  • Система резервного копирования Amanda поддерживает сжатие и шифрование.
  • Поддерживает централизованное полное и инкрементное резервное копирование.
  • Аманда имеет надежный график резервного копирования, который идеально подходит для тех, кто хочет автоматизировать процесс.

2. Bakula

Bakula – это инструмент резервного копирования с открытым исходным кодом, предназначенный для предприятий, который позволяет пользователям легко создавать безопасные резервные копии данных.

Это очень продвинутый инструмент, и многим он нравится, потому что им легко пользоваться, а также благодаря множеству полезных функций.

Средство резервного копирования Bakula в основном используется графически, хотя оно также имеет “звездный” консольный интерфейс, который идеально подходит, если вы большую часть времени живете в терминале Linux.

Известные особенности

  • Bakula позволяет пользователям шифровать свои резервные копии данных в целях безопасности. Кроме того, он поддерживает хеширование MD5, что упрощает проверку целостности данных.
  • Bakula выполняет сжатие данных на стороне клиента, что помогает снизить пропускную способность сети.
  • Bakula имеет кроссплатформенное клиентское приложение, которое позволяет синхронизировать ваши резервные копии практически с любой операционной системой.

3. Clonezilla

Clonezilla в первую очередь предназначена для резервного копирования рабочих станций и персональных компьютеров Linux, однако это довольно мощный и простой в использовании инструмент, который делает его идеальным и для сервера Linux.

Как и многие приложения из этого списка, Clonezilla может создавать и восстанавливать резервные копии различными способами.

Его наиболее надежные функции – это невероятно удобный пользовательский интерфейс и простые меню, а также способность создавать образы, создавать резервные копии и шифровать (если вы того пожелаете) весь диск по сети и даже через Интернет через SSH.

Известные особенности

  • Clonezilla работает на компьютерах с BIOS и UEFI.
  • Ваши резервные копии настраиваются, и он даже предлагает шифрование (AES-256).
  • Может делать резервные копии через Интернет, через SSH или другие типы соединений.
  • Несколько вариантов резервного копирования, включая сохранение всего диска, резервное копирование разделов и восстановление.

4. Rsnapshot

Rsnapshot – это инструмент для создания снимков файловой системы, основанный на печально известном приложении Rsync.

С его помощью пользователи могут создавать резервные копии рабочих столов или серверов Linux локально или удаленно по сети через SSH.

Наиболее убедительным аргументом в пользу Rsnapshot является то, что он эффективен и экономит много места.

Фактически, с каждым снимком программа не выполняет повторное резервное копирование ваших данных.

Наиболее убедительным аргументом в пользу Rsnapshot является то, что он эффективен и экономит много места.

Фактически, с каждым снимком программа не выполняет повторное резервное копирование ваших данных.

Вместо этого он очень усердно работает, используя «жесткие ссылки», которые намного более эффективны и экономят место.

Известные особенности

  • Rsnapshot делает инкрементное резервное копирование, а не выполняет многократное резервное копирование файлов и данных. Этот стиль резервного копирования позволяет пользователям экономить место на жестком диске и создавать более эффективные резервные копии.
  • Rsnapshot может выполнять резервное копирование через локальные сети или Интернет благодаря функции SSH.
  • Поскольку Rsnapshot – это утилита командной строки, ее можно легко автоматизировать с помощью Cron для быстрого создания инкрементных резервных копий.

5. Mondo Rescue

Mondo Recovery – это не просто инструмент для резервного копирования;

Это полноценное приложение аварийного восстановления, которое можно использовать в случае краха данных, позволяя пользователям сохранять свои файлы и папки различными способами.

Давайте проясним ситуацию: Mondo Rescue не ориентирован на сервер, хотя, если честно, большинство инструментов резервного копирования (по крайней мере, хороших) ориентированы только на сервер.

Тем не менее, Mondo идеально подходит для сервера Linux, потому что он поддерживает практически все текущие операционные системы Linux и может выполнять резервное копирование на ленту, сеть, оптические носители и все остальное между ними!

Известные особенности

  • Поддержка резервного копирования и восстановления файловых систем RAID. Можно также перенести устройства без RAID на RAID.
  • Реструктуризация, сжатие и изменение размера разделов файловой системы

Заключение

Резервное копирование сервера Linux – это утомительная и тяжелая работа, особенно если у вас много данных.

Читайте также:  Удаленный рабочий стол chrome mac os

Тем не менее, проблема того стоит, и в долгосрочной перспективе она избавит вас от многих головных болей.

Если вам нужно хорошее приложение для резервного копирования для вашего сервера, проверьте одно из приложений в этом списке.

У вас есть любимый инструмент резервного копирования Linux-сервера, который не был упомянут?

Бэкап файлов Windows-сервера своими руками

Здесь мы рассмотрим, как сделать систему дифференциального бэкапа «из коробки» (ну почти), с привлечением минимального количества внешних модулей, в лучших традициях UNIX-way.
Будем использовать 7za.exe \ 7z, а также UNIX-like утилиту pdate.exe, чтобы со временем нам было работать также удобно, как и в ламповом *NIX, а заменой bash нам будет «простонародный» BAT. Предыстория и подробности — под катом.

Предыстория

Все началось с истории про невнимательного и бесстрашного пользователя, открывающего приходящие по личной почте файлы откройменя.exe на рабочем компьютере. К сожалению, это оказалось не какой-нибудь посредственной малварью, а вполне обычным шифратором. Но, помимо файлов юзера, которые, конечно же, восстановлению не подлежат, оказалась задета одна крошечная, но важная шара, доступ к которой был у всех.

Взглянув на сие зашифрованное непотребство, я с благодарностью вспомнил про то, что каждый день у меня делается бэкап этой (и не только этой) шары встроенными средствами Windows Server 2003 SP2 x64. Но, полистав этот бэкап, я понял, что в плане резервного копирования средствами самой Windows не все так радужно. Во-первых, полный бэкап оказался недоступен, а значит восстановить cold-data (файлы, которые меняются очень редко) вряд ли получится. Во-вторых, восстановление из созданного инкрементального бэкапа оказалось задачей нетривиальной — за каждый шаг получалось восстановить только данные, которые были изменены, и ничего более. Получается, чтобы восстановить хотя бы все измененные данные (раз полный бэкап оказался утерян), то пришлось бы перебирать по очереди все бэкапы — не совсем то, что я ожидал от инкрементального бэкапа в таком случае.

Кто то из вас может сказать — надо было проверять работоспособность бэкапа, и да, так оно и есть. Но тот из вас, кто работает в торговле, может понять, куда может уходить время админа — да-да, они самые, онлайн-кассы.

Крепко задумавшись, я вспомнил свое первое знакомство с системой инкрементального копирования fsbackup за авторством Максима Чиркова www.opennet.ru/dev/fsbackup — гибкость, простота, в то же время обилие возможностей и открытый формат хранения архивов (tar). Жаль, что система разработана под *NIX / Linux. Google также не ответил на мой вопрос про подобную систему под Windows. Самое полезное, что я нашел — это краткий гайд хабровчанина antip0d и пример скрипта для резервного копирования. Именно материал по последней ссылке я и использовал для своего скрипта.

Собираем систему

В первую очередь, скачиваем последнюю стабильную версию. На момент написания это 16.04. Наш бэкап будем хранить в 7z архиве: поддержка многопоточности, шифрованных/многотомных архивов, а скорость извлечения из 7z выше скорости упаковки в 10-20 раз!
UPD: Спасибо хаброжителю Taciturn за поправку — вы также можете использовать 7z.exe, уже установленный в вашей системе. Функциональных различий между 7z и 7za я не выявил.

Нас интересуют:
7za.exe — автономная версия 7-Zip.
7za.dll — библиотека для работы с архивами 7z
7zxa.dll — библиотека для распаковки 7z архивов.
Для 64-битных ОС используем те же файлы из каталога x64.
К сожалению, ссылка из используемого мной материала на утилиту pdate никуда не ведет, единственная найденная мной версия

pdate v1.1 build 2007.12.06
© 2005-2007 Pavel Malakhov 24pm@mail.ru

К счастью, на том же ресурсе есть краткая статья по этой программе, там же ее можно скачать.

Мной была использована следующая структура каталогов:
D:\winfsbackup — корневая директория скрипта и связанных файлов
D:\winfsbackup\7z — библиотеки и исполняемый файл 7za
D:\winfsbackup\backup — место хранения бэкапов (можно переназначить путем правки переменных, как и любые другие используемые файлы)
D:\winfsbackup\lists — списки включаемых и исключаемых файлов. О них расскажу чуть позже
D:\winfsbackup\log — логи
D:\winfsbackup\pdate
D:\winfsbackup\tmp — устанавливает рабочий каталог для временного базового архива
D:\winfsbackup\winfsbackup.bat — сам скрипт.

Логика работы

250 Гб. Для моего файлообменника в 550 Гб с преобладанием мелких файлов скорость бэкапа оказалась неудовлетворительна (почти 55 часов). Справедливости ради стоит сказать, что это не может служить сколь нибудь достоверным замером производительности — в процессе бэкапа выяснилось, что некоторые файлы недоступны (привет chkdsk), а бэкап складывался в раздел удаленного сервера, который тоже был занят операциями дискового ввода-вывода.

Первые 2 условия включены по-умолчанию, и описывают полный бэкап раз месяц + дифференциальные бэкапы. Остальные условия альтернативны, то есть при включении одного нужно выключить другое, или изменить логику работы на свой вкус.

Переменные

dm, dw, wn — соответственно день месяца, день недели и номер недели (в численном выражении).
verboseLevel — режим «говорливости», выдает информацию о том, куда будет записываться архив, и прочее. Полезно, когда вносишь в структуру скрипта серьезные изменения.
tmpDir — место сохранения временного файла. По умолчанию, 7-Zip строит новый базовый файл архива в том же самом каталоге, где и старый базовый файл архива. Определяя этот ключ, вы можете установить рабочий каталог, где будет построен временный базовый файл архива. После того, как временный базовый файл архива построен, он копируется поверх первоначального; затем временный файл удаляется.

Читайте также:  Как посмотреть пароль сети mac os

Дифференциальный бэкап

По умолчанию, в дифференциальный бэкап помещаются файлы, которых нет в базовом архиве, а также более новые файлы. При желании, это поведение можно изменить. Описания ключей есть в стандартном файле справки 7z.

У такого подхода есть свои плюсы (которые я уже успел оценить) — быстрота разворачивания из бэкапа. В случае полного восстановления разворачиваем последний (или любой другой) имеющийся дифференциальный бэкап, а затем — полный архив, отказываясь от перезаписи имеющихся файлов.

Некоторые опции командной строки

-bsp2 — выводит строку с прогрессом выполнения в STDERR. STDOUT 7z перенаправлен в лог, прогресс, естественно, туда не пишется. Эта команда выводит его в STDERR, для большей информативности.

-ssw — упаковывает файлы, открытые для записи другим приложением. Если этот ключ не установлен, 7-Zip не включает такие файлы в архив.

-slp — крайне полезная опция. Режим больших страниц увеличивает скорость сжатия. Однако, есть пауза в начале сжатия, в то время когда 7-Zip распределяет большие страницы в памяти. Если 7-Zip не может разместить большие страницы, он размещает обычные маленькие страницы. Кроме того, Диспетчер задач не показывает реальное использование памяти программами, если 7-Zip использует большие страницы. Эта особенность работает только на Windows 2003 / XP x64. Также нужно иметь права администратора для вашей системы. Рекомендованный размер оперативной памяти для этой особенности — 3 Гб или больше. если вы используете режим -slp, ваша система Windows может зависнуть на несколько секунд, когда 7-Zip выделяет блоки памяти. Когда Windows пытается выделить большие страницы из оперативной памяти для 7-Zip, Windows может подвесить другие задачи на это время. Это может выглядеть как полное зависание системы, но затем ее работа восстанавливается, и, если распределение прошло успешно, 7-Zip работает быстрее. Не используйте режим -slp, если вы не хотите, чтобы другие задачи быть «подвешены». Кроме того, бессмысленно использовать режим -slp для сжатия небольших наборов данных (менее 100 МБ). Но если вы сжимаете большие наборы данных (300 Мб или более) методом LZMA с большим словарем, вы можете получить увеличение скорости на 5% -10% в режиме -slp.
-mmt=on — устанавливает режим многопоточности. Если у вас многопроцессорная / многоядерная система, вы можете получить увеличение скорости с этим ключом. 7-Zip поддерживает режим многопоточности только для сжатия LZMA/LZMA2 и сжатия/распаковки BZip2.

-ms=off — отключает создание solid-архивов. Качество сжатия при этом, конечно же, падает, однако есть весьма весомые плюсы — вы можете периодически обновлять данные базового архива чтобы уменьшить размер дифференциальный бэкапов, и так как архив не является целостным, не нужно будет его дополнительно «пережимать». Non-solid архив более стоек к повреждениям, и время извлечения из него происходит заметно быстрее.

Include / exclude листы
По умолчанию определено 2 типа списка — список включаемых файлов / директорий (include_general.txt), и 2 списка исключений (exclude_general.txt, exclude_regexp.txt).

Список включения также поддерживает UNC-пути. Для того, чтобы поместить файл / директорию в исключения, путь должен быть относительным.

Например, если директория для бэкапа E:\foo\bar, и мы хотим исключить вложенную директорию E:\foo\bar\somefolder, то в exclude_general.txt мы должны добавить bar\somefolder или bar\somefolder\

Путь без слэша в конце может относиться как к файлу, так и к директории.
В exclude_regexp.txt вносятся исключаемые по regexp файлы, которые просматриваются рекурсивно. * — последовательность произвольных символов,? — любой символ.
7-Zip не использует системный синтаксический анализатор подстановочных знаков, поэтому «любой файл» для 7 Zip это ‘*’, а ‘*.*’ — файл, имеющий расширение.

Ну и наконец, скрипт целиком:

Вместо окончания

Всегда есть люди, которые против подобных решений, и всеми руками-ногами «за» использование всяких акронисов и прочего «махрового энтерпрайза».

Я же считаю, что решение должно быть соразмерно поставленной задаче, а в моем случае задача — иметь в укромном месте резервную копию файлопомойки, которую можно быстро развернуть — именно этим меня и разочаровал ntbackup.

Собранный пример можно посмотреть на YandexDisk.

Там же — zip-архив для скачивания.
Конструктивная критика, советы, и тем более, тестирование — welcome!
Спасибо за внимание! Всем долгого аптайма, стабильного линка, и конечно, бэкапов под рукой.

Оцените статью