Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Реализация бекапа БД в MS SQL 2012 Express  [new]
Nezhnayka
Member

Откуда:
Сообщений: 43
Добрый день.

Из консоли пытаюсь вызвать команды резервного копирования БД, так:

SQLCMD -S "WIN-PHAD\SQLEXPRESS" -E -Q "BACKUP DATABASE 1c_unf TO DISK = 'Z:\1c_unf_monday.bak' WITH INIT, NOFORMAT, SKIP, NOUNLOAD"

и так:

SQLCMD -S "WIN-PHAD\SQLEXPRESS" -U sa -P "pass@word" -Q "BACKUP DATABASE 1c_unf TO DISK = 'Z:\1c_unf_monday.bak' WITH INIT, NOFORMAT, SKIP, NOUNLOAD"

в обоих случаях получаю:

Сообщение 102, уровень 15, состояние 1, сервер WIN-PHAD\SQLEXPRESS, строка 1
Неправильный синтаксис около конструкции "1".


Что я делаю не так?
12 мар 18, 15:47    [21250126]     Ответить | Цитировать Сообщить модератору
 Re: Реализация бекапа БД в MS SQL 2012 Express  [new]
Shakill
Member

Откуда: мск
Сообщений: 1880
Nezhnayka,

у вас имя базы с цифры начинается. оберните имя в квадратные скобки
12 мар 18, 15:51    [21250147]     Ответить | Цитировать Сообщить модератору
 Re: Реализация бекапа БД в MS SQL 2012 Express  [new]
Nezhnayka
Member

Откуда:
Сообщений: 43
SQLCMD -S "WIN-PHAD\SQLEXPRESS" -E -Q "BACKUP DATABASE `1c_unf` TO DISK = 'Z:\1c_unf_monday.bak' WITH INIT, NOFORMAT, SKIP, NOUNLOAD"

Попытался вот так обернуть, выдает ту же ошибку. В двойные кавычки непонятно как обернуть, ведь сама строка запроса завернута в двойные кавычки.

В одинарные завернул:

SQLCMD -S "WIN-PHAD\SQLEXPRESS" -E -Q "BACKUP DATABASE '1c_unf' TO DISK = 'Z:\1c_unf_monday.bak' WITH INIT, NOFORMAT, SKIP, NOUNLOAD"

другая ошибка:

Неправильный синтаксис около конструкции "1c_unf".
12 мар 18, 16:39    [21250365]     Ответить | Цитировать Сообщить модератору
 Re: Реализация бекапа БД в MS SQL 2012 Express  [new]
Yasha123
Member

Откуда:
Сообщений: 1833
SQLCMD -S "WIN-PHAD\SQLEXPRESS" -E -Q "BACKUP DATABASE [1c_unf] TO DISK = 'Z:\1c_unf_monday.bak' WITH INIT, NOFORMAT, SKIP, NOUNLOAD"
12 мар 18, 16:50    [21250418]     Ответить | Цитировать Сообщить модератору
 Re: Реализация бекапа БД в MS SQL 2012 Express  [new]
Nezhnayka
Member

Откуда:
Сообщений: 43
Сойри, уже чего-то с этим сервером так замучался, что читаю между строк, квадратные скобки воспринял как двойные.

Сделал, теперь вот такую ошибку выдает:

Невозможно открыть устройство резервного копирования 'Z:\1c_unf_monday.bak'. Ошибка операционной системы 3(The system cannot find the path specified.).

С чем может быть связана эта ошибка? Понимаю, что наверное с правами, получается SQL сервер должен стартовать от пользователя с Админ правами? При установке и после установки ничего не менял, все установилось по дефолту.
12 мар 18, 17:20    [21250521]     Ответить | Цитировать Сообщить модератору
 Re: Реализация бекапа БД в MS SQL 2012 Express  [new]
Konst_One
Member

Откуда:
Сообщений: 11517
Z - это физический диск на сервере базы данных?
12 мар 18, 17:22    [21250528]     Ответить | Цитировать Сообщить модератору
 Re: Реализация бекапа БД в MS SQL 2012 Express  [new]
Nezhnayka
Member

Откуда:
Сообщений: 43
Konst_One,

Сетевой, но пробовал вместо Z: поставить C: (физический), ничего не меняется, та же ошибка
12 мар 18, 17:26    [21250537]     Ответить | Цитировать Сообщить модератору
 Re: Реализация бекапа БД в MS SQL 2012 Express  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7757
Nezhnayka,

В корень С: нельзя писать.
12 мар 18, 17:27    [21250539]     Ответить | Цитировать Сообщить модератору
 Re: Реализация бекапа БД в MS SQL 2012 Express  [new]
Yasha123
Member

Откуда:
Сообщений: 1833
Nezhnayka
Konst_One,

Сетевой, но пробовал вместо Z: поставить C: (физический), ничего не меняется, та же ошибка

xp_fixeddrives какие диски выдает?
12 мар 18, 17:30    [21250548]     Ответить | Цитировать Сообщить модератору
 Re: Реализация бекапа БД в MS SQL 2012 Express  [new]
Yasha123
Member

Откуда:
Сообщений: 1833
Владислав Колосов
Nezhnayka,

В корень С: нельзя писать.

нельзя писать все же access denied,
а у него вообще путь не видит.
и у кого это и с чего это нельзя в корень писать?
12 мар 18, 17:32    [21250557]     Ответить | Цитировать Сообщить модератору
 Re: Реализация бекапа БД в MS SQL 2012 Express  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36970
Диски мапить надо командой map
12 мар 18, 17:40    [21250606]     Ответить | Цитировать Сообщить модератору
 Re: Реализация бекапа БД в MS SQL 2012 Express  [new]
Александр Спелицин
Member

Откуда: Из ближайшего подмосковья.
Сообщений: 2496
Nezhnayka
Сетевой, но пробовал вместо Z: поставить C: (физический), ничего не меняется, та же ошибка

1. Вы подключили сетевой диск для своей учетной записи, а SQL Server, работая под своей, об этом может ничего и не знать.
2. Даже если и узнает, то он туда будет "лезть" под своими правами, а не под Вашими. А они могут существенно различаться.

Делайте бекап в отдельную директорию локального диска с полным доступом для учетной записи, из-под которой запущен ваш MSSQL. А файл затем копируйте средствами ОС.
12 мар 18, 17:45    [21250632]     Ответить | Цитировать Сообщить модератору
 Re: Реализация бекапа БД в MS SQL 2012 Express  [new]
Nezhnayka
Member

Откуда:
Сообщений: 43
Поменял путь в общие документы C:\Users\Public\Documents\, все получилось. Большое спасибо всем!
12 мар 18, 17:57    [21250685]     Ответить | Цитировать Сообщить модератору
 Re: Реализация бекапа БД в MS SQL 2012 Express  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7757
Yasha123,

Винда неадмину не дает в корень системного диска писать.
12 мар 18, 18:35    [21250803]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить