Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Автоматическое копирование рабочей базы в копию (скрипт)  [new]
bvb4
Member

Откуда:
Сообщений: 28
Просьба не ругать за вопрос дилетанта...

Как скприптом выгрузить рабочую базу в архив.
А затем восстановить этот архив в базу копию.

После восстановления я как понимаю также нужно поменять логическое имя базы копии на исходное (до восстановления)


Отдельный вопрос :
Можно ли использовать для данной цели Agent и
где почитать хорошую статью про Agent ?
24 дек 15, 10:42    [18603044]     Ответить | Цитировать Сообщить модератору
 Re: Автоматическое копирование рабочей базы в копию (скрипт)  [new]
abrashka
Member

Откуда:
Сообщений: 517
bvb4,
не совсем понял вопрос, Вам только схему нужно или базу вместе с данными?
24 дек 15, 11:06    [18603173]     Ответить | Цитировать Сообщить модератору
 Re: Автоматическое копирование рабочей базы в копию (скрипт)  [new]
WarAnt
Member

Откуда: Питер
Сообщений: 2421
bvb4,

backup database -> restore database
24 дек 15, 11:33    [18603341]     Ответить | Цитировать Сообщить модератору
 Re: Автоматическое копирование рабочей базы в копию (скрипт)  [new]
Glory
Member

Откуда:
Сообщений: 104760
bvb4
Как скприптом выгрузить рабочую базу в архив.

BACKUP DATABASE ... подробности в хелпе

bvb4
А затем восстановить этот архив в базу копию.

RESTORE DATABASE ... подробности в хелпе

bvb4
После восстановления я как понимаю также нужно поменять логическое имя базы копии на исходное (до восстановления)

в хелпе даже есть именно такой пример

bvb4
Можно ли использовать для данной цели Agent и

Agent не сделает за вас скрипт
Agent может запустить написанный вами скрипт по расписанию

bvb4
где почитать хорошую статью про Agent ?

В официальном хелпе MSSQL
24 дек 15, 11:36    [18603355]     Ответить | Цитировать Сообщить модератору
 Re: Автоматическое копирование рабочей базы в копию (скрипт)  [new]
bvb4
Member

Откуда:
Сообщений: 28
А как понять что можно давать директиву Restore ?

Что бэкап уже закончился ?
24 дек 15, 16:53    [18605338]     Ответить | Цитировать Сообщить модератору
 Re: Автоматическое копирование рабочей базы в копию (скрипт)  [new]
Glory
Member

Откуда:
Сообщений: 104760
bvb4
А как понять что можно давать директиву Restore ?

Что бэкап уже закончился ?

Если команда backup завершилась, то и бэкап закончился
24 дек 15, 18:42    [18605810]     Ответить | Цитировать Сообщить модератору
 Re: Автоматическое копирование рабочей базы в копию (скрипт)  [new]
bvb4
Member

Откуда:
Сообщений: 28
А как средствами скрипта сформировать имя файла ?
Что бы он содержал имя базы дату и время.
25 дек 15, 10:02    [18607888]     Ответить | Цитировать Сообщить модератору
 Re: Автоматическое копирование рабочей базы в копию (скрипт)  [new]
mishanya3624
Member

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

@backupname = 'namedb'+convert(varchar(20),getdate(),11)
25 дек 15, 10:06    [18607912]     Ответить | Цитировать Сообщить модератору
 Re: Автоматическое копирование рабочей базы в копию (скрипт)  [new]
mishanya3624
Member

Откуда:
Сообщений: 795
формат getdate сами определите какой надо этот без времени , если че.
25 дек 15, 10:10    [18607937]     Ответить | Цитировать Сообщить модератору
 Re: Автоматическое копирование рабочей базы в копию (скрипт)  [new]
Mairos
Member

Откуда:
Сообщений: 555
bvb4,
@backupname = 'namedb'+convert(varchar(20),getdate(),120)

так со временем.
28 дек 15, 11:53    [18617569]     Ответить | Цитировать Сообщить модератору
 Re: Автоматическое копирование рабочей базы в копию (скрипт)  [new]
bvb4
Member

Откуда:
Сообщений: 28
А как поменять логическое имя базы копии ?
Чего то я примера не нашел...
13 янв 16, 13:21    [18672324]     Ответить | Цитировать Сообщить модератору
 Re: Автоматическое копирование рабочей базы в копию (скрипт)  [new]
Glory
Member

Откуда:
Сообщений: 104760
bvb4
Чего то я примера не нашел...

А вы где искали то ?
13 янв 16, 13:22    [18672340]     Ответить | Цитировать Сообщить модератору
 Re: Автоматическое копирование рабочей базы в копию (скрипт)  [new]
bvb4
Member

Откуда:
Сообщений: 28
В описании :

RESTORE (Transact-SQL)
13 янв 16, 15:47    [18673289]     Ответить | Цитировать Сообщить модератору
 Re: Автоматическое копирование рабочей базы в копию (скрипт)  [new]
Glory
Member

Откуда:
Сообщений: 104760
bvb4
В описании :

RESTORE (Transact-SQL)

Как в том анекдоте - ключ потерял за гаражами, а ищу его под фонарем, потому что тут светлее.
14 янв 16, 09:44    [18676266]     Ответить | Цитировать Сообщить модератору
 Re: Автоматическое копирование рабочей базы в копию (скрипт)  [new]
o-o
Guest
bvb4
Как скприптом выгрузить рабочую базу в архив.
А затем восстановить этот архив в базу копию.

После восстановления я как понимаю также нужно поменять логическое имя базы копии на исходное (до восстановления)

надо получить копию базы на этом же сервере
или копию этой базы на другом?
если на другом, то зачем переименовывать, восстанавливайте с именем, которое есть:
-- default instance:
create database db_test;
go

backup database db_test 
to disk = 'C:\backups\db_test_full.bak';
go

-- named instance:
restore database db_test
from disk = 'C:\backups\db_test_full.bak'
with move 'db_test' to 'C:\Program Files\Microsoft SQL Server\MSSQL10.SQL_2008_EXP\MSSQL\DATA\db_test.mdf',
     move 'db_test_log' to 'C:\Program Files\Microsoft SQL Server\MSSQL10.SQL_2008_EXP\MSSQL\DATA\db_test_log.ldf'

если на этом же, восстанавливайте с другим именем:
-- default instance:
restore database db_test_copy
from disk = 'C:\backups\db_test_full.bak'
with move 'db_test' to 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\db_test_copy.mdf',
     move 'db_test_log' to 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\db_test_copy_log.ldf'


только что теперь переименовывать-то, база с исходным именем тут же,
2 базы с одинаковыми именами на одном сервере держать не выйдет
14 янв 16, 11:21    [18676933]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить