MS SQL настройка бэкапов на NAS: различия между версиями
Перейти к навигации
Перейти к поиску
Admin (обсуждение | вклад) Нет описания правки |
R.klimov (обсуждение | вклад) мНет описания правки |
||
| Строка 8: | Строка 8: | ||
* Выполняйте перезапуск службы '''в период минимальной нагрузки''' (например, в обеденное время). | * Выполняйте перезапуск службы '''в период минимальной нагрузки''' (например, в обеденное время). | ||
== | == Настройка учетной записи службы SQL Server == | ||
# Откройте <code>Службы</code> [WIN+R выполнить services.msc] | # Откройте <code>Службы</code> [WIN+R выполнить services.msc] | ||
| Строка 19: | Строка 19: | ||
# Нажмите '''Применить'''. | # Нажмите '''Применить'''. | ||
== | == Перезапуск службы == | ||
После изменения учетной записи с правами на запуск необходимо: | После изменения учетной записи с правами на запуск необходимо: | ||
| Строка 27: | Строка 27: | ||
#* или в окно обслуживания | #* или в окно обслуживания | ||
== | == Включение xp_cmdshell == | ||
Подключитесь к серверу через '''SQL Server Management Studio (SSMS)''' | Подключитесь к серверу через '''SQL Server Management Studio (SSMS)''' | ||
[[Файл:MS SQL BACKUP NAS 2.png|без|мини|897x897пкс]] | [[Файл:MS SQL BACKUP NAS 2.png|без|мини|897x897пкс]] | ||
| Строка 54: | Строка 54: | ||
* отключать после настройки (если не требуется постоянно). | * отключать после настройки (если не требуется постоянно). | ||
== | == Монтирование сетевого диска == | ||
В SSMS выполните: | В SSMS выполните: | ||
[[Файл:MS SQL BACKUP NAS 3.png|без|мини|933x933пкс]] | [[Файл:MS SQL BACKUP NAS 3.png|без|мини|933x933пкс]] | ||
| Строка 67: | Строка 67: | ||
* <code>naspassword</code> — пароль | * <code>naspassword</code> — пароль | ||
== | == Проверка подключения == | ||
Можно проверить, что диск смонтирован:<syntaxhighlight lang="tsql"> | Можно проверить, что диск смонтирован:<syntaxhighlight lang="tsql"> | ||
EXEC xp_cmdshell 'net use' | EXEC xp_cmdshell 'net use' | ||
| Строка 73: | Строка 73: | ||
[[Файл:MS SQL BACKUP NAS 4.png|без|мини|611x611пкс]] | [[Файл:MS SQL BACKUP NAS 4.png|без|мини|611x611пкс]] | ||
== | == Использование в бэкапах == | ||
После монтирования диск будет доступен: | После монтирования диск будет доступен: | ||
| Строка 83: | Строка 83: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== | == Размонтирование диска (при необходимости) == | ||
Данная команда может понадобится при сетевом сбое во время загрузки бэкапов. | Данная команда может понадобится при сетевом сбое во время загрузки бэкапов. | ||
Текущая версия от 07:22, 27 марта 2026
Цель - обеспечить возможность SQL Server выполнять бэкапы на сетевое хранилище (NAS), к которому по умолчанию нет доступа у виртуальной учетной записи службы.
Важные замечания перед началом
- Виртуальная учетная запись
MSSQLSERVERне имеет доступа к сетевым ресурсам. - Для работы с NAS необходимо указать реальную учетную запись Windows.
- ❗ Не рекомендуется выдавать этой учетной записи административные права — достаточно прав на доступ к нужной сетевой папке.
- Выполняйте перезапуск службы в период минимальной нагрузки (например, в обеденное время).
Настройка учетной записи службы SQL Server
- Откройте
Службы[WIN+R выполнить services.msc] - Найдите службу: SQL Server (MSSQLSERVER)
- Откройте свойства службы → вкладка "Вход в систему" (С учётной записью)

- Укажите учетную запись, которая:
- имеет доступ к NAS (сетевой папке),
- Не имеет прав администратора.
- Нажмите Применить.
Перезапуск службы
После изменения учетной записи с правами на запуск необходимо:
- Перезапустите службу
SQL Server (MSSQLSERVER). - Рекомендуется это делать:
- в обеденное время
- или в окно обслуживания
Включение xp_cmdshell
Подключитесь к серверу через SQL Server Management Studio (SSMS)

И выполните:
EXEC sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
EXEC sp_configure 'xp_cmdshell',1
GO
RECONFIGURE
GO
📌 Что это делает:
- Включает расширенные настройки сервера
- Разрешает использование
xp_cmdshell, что позволяет SQL Server выполнять команды ОС (в том числе монтировать сетевые диски)
⚠️ Безопасность
xp_cmdshell— потенциально опасная функция.- Используйте только при необходимости. Желательно ограничить доступ к её выполнению.
- отключать после настройки (если не требуется постоянно).
Монтирование сетевого диска
В SSMS выполните:

EXEC xp_cmdshell 'net use Z: \\192.168.1.83\_backups /user:nasuser naspassword'
Пояснения:
Z:— буква диска (можно выбрать любую свободную)\\192.168.1.83\_backups— путь к сетевой папкеnasuser— пользователь NAS- для домена:
domain\username naspassword— пароль
Проверка подключения
Можно проверить, что диск смонтирован:
EXEC xp_cmdshell 'net use'

Использование в бэкапах
После монтирования диск будет доступен:
- В GUI SQL Server (при выборе пути для бэкапа)
- В T-SQL:
BACKUP DATABASE [ИмяБД]
TO DISK = 'Z:\backup.bak'
Размонтирование диска (при необходимости)
Данная команда может понадобится при сетевом сбое во время загрузки бэкапов.
При выполнении задачи может появится ошибка в ms sql "данный сетевой путь недоступен" данная команда как раз решит нашу проблему с зависшим бэкапом
EXEC xp_cmdshell 'net use Z: /delete'