Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Серверные продукты Microsoft » Другие серверные продукты » Microsoft SQL Enterprise синхронизация баз 1с

Ответить
Настройки темы
Microsoft SQL Enterprise синхронизация баз 1с

Старожил


Сообщения: 226
Благодарности: 4

Профиль | Отправить PM | Цитировать


Добрый день.

На Windows 2003 крутится Microsoft SQL Enterprise Server, на котором работают несколько баз 1с 7.
Собственно архивация баз 1с осуществляется по следующему сценарию:

1. По расписанию запускается bat файл, который вызывает через isql.exe определённый сценарий в sql файле.

Код: Выделить весь код
isql.exe /U u /P p /E /S server /d base1c /t 0 /i c:\script\backup.sql /o d:\script\Out.txt
2. Содержимое backup.sql

Код: Выделить весь код
set nocount on
SET DATEFIRST 1
declare @OutP varchar(255)
declare @OutPD varchar(255)
declare @weekName varchar(10)
select @weekName = case
   WHEN DATEPART( weekday, GETDATE()) = 1 THEN '_Monday'
   WHEN DATEPART( weekday, GETDATE()) = 2 THEN '_Tuesday'
   WHEN DATEPART( weekday, GETDATE()) = 3 THEN '_Wednesday'
   WHEN DATEPART( weekday, GETDATE()) = 4 THEN '_Thursday'
   WHEN DATEPART( weekday, GETDATE()) = 5 THEN '_Friday'
   else
      '_Free'
   END
select @OutP = '\\backupserver\' + @weekName + '\DUMP.dat'

select @OutPD = 'del /F /Q ' + @OutP
EXEC master..xp_cmdshell @OutPD

BACKUP DATABASE base1c TO disk = @OutP WITHINIT
Всё работает. Но возникла необходимость после архивации баз 1с, синхронизировать ещё одну созданную базу для тестинга.

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

Спасибо

-------
Альтернатива Всему!


Отправлено: 22:14, 27-07-2011

 

Аватара для Delirium

Ветеран


Сообщения: 5624
Благодарности: 936

Профиль | Отправить PM | Цитировать


Ну а что мешает написать после бекапа команду
restore database base1cTest from 'путь' WITH replace ?
Источник: http://www.mssqltips.com/tutorial.asp?tutorial=121

-------

Пройденные курсы:
[Microsoft №10174 Sharepoint], [SharePoint]
Мои проекты:[CheckAdmins], [NetSend7], [System Uptime], [Remote RAdmin LogViewer],[Netdom GDI], [Holidays - напоминалка о днях рождения]

А я офис-гуру :)

Это сообщение посчитали полезным следующие участники:

Отправлено: 09:34, 28-07-2011 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Старожил


Сообщения: 226
Благодарности: 4

Профиль | Отправить PM | Цитировать


Действительно. Спасибо.

-------
Альтернатива Всему!


Отправлено: 09:46, 28-07-2011 | #3


Старожил


Сообщения: 226
Благодарности: 4

Профиль | Отправить PM | Цитировать


Вытаюсь востановить тестовую базу из сделаного backup'a рабочей базы 1С.

Код: Выделить весь код
USE master 
RESTORE DATABASE Test1CBuh FROM DISK = '\\backup\Upload\bkp1c.bak' WITH REPLACE
Но при этом SQL почему то обращается к рабочей базе а не к тестовой.... и в логах пишет что она занята....


Код: Выделить весь код
1> 2> 3> Msg 1834, Level 16, State 1, Server SERVER, Line 2
The file 'd:\msdata\MSSQL\data\1с_work_Data.MDF' cannot be overwritten.
It is being used by database '1с_work'.
Msg 3156, Level 16, State 1, Server SERVER, Line 2
File '1с_work_Data' cannot be restored to
'd:\msdata\MSSQL\data\1с_work_Data.MDF'. Use WITH MOVE to identify a
valid location for the file.
Msg 1834, Level 16, State 1, Server SERVER, Line 2
The file 'd:\msdata\MSSQL\data\1с_work_Log.LDF' cannot be overwritten.
It is being used by database '1с_work'.
Msg 3156, Level 16, State 1, Server SERVER, Line 2
File '1с_work_Log' cannot be restored to
'd:\msdata\MSSQL\data\1с_work_Log.LDF'. Use WITH MOVE to identify a
valid location for the file.
Msg 3013, Level 16, State 1, Server SERVER, Line 2
RESTORE DATABASE is terminating abnormally.
Почему же он обращается к 1c_work - рабочей базе 1с ??

-------
Альтернатива Всему!


Отправлено: 15:45, 03-08-2011 | #4


Аватара для Telepuzik

Ветеран


Сообщения: 3722
Благодарности: 747

Профиль | Отправить PM | Цитировать


Цитата bombording:
Почему же он обращается к 1c_work - рабочей базе 1с »
Ну потому что он пытается восстановить файлы базы и лога в то место откуда они были отправлены в backup, а так как файлы уже существуют и доступ к ним закрыт вы и получаете такой лог.

-------
По'DDoS'ил и бросил :-)

Это сообщение посчитали полезным следующие участники:

Отправлено: 16:06, 03-08-2011 | #5


Старожил


Сообщения: 226
Благодарности: 4

Профиль | Отправить PM | Цитировать


Telepuzik, Я так понял что нужно ставитть параметр WITH MOVE в комманду и указывать другие имена для mdf и ldf файлов.... ??

Но ведь если я укажу имена mdf и ldf от тестовой базы, то этоо приведёт опять к ошибке... ведь эти файлы тоже есть. Как быть?

-------
Альтернатива Всему!


Отправлено: 16:12, 03-08-2011 | #6


Аватара для Telepuzik

Ветеран


Сообщения: 3722
Благодарности: 747

Профиль | Отправить PM | Цитировать


Цитата bombording:
так понял что нужно ставитть параметр WITH MOVE в комманду и указывать другие имена для mdf и ldf файлов.... ?? »
Да воспользуйтесь данным параметром.
Цитата bombording:
Но ведь если я укажу имена mdf и ldf от тестовой базы, то этоо приведёт опять к ошибке... ведь эти файлы тоже есть. Как быть? »
Вот тут что то совсем не понятно, какая тестовая база? Что вам мешает дать другие имена файлам и базе, если есть база Test1, то почему нельзя назвать базу например Test2?

-------
По'DDoS'ил и бросил :-)

Это сообщение посчитали полезным следующие участники:

Отправлено: 09:18, 04-08-2011 | #7


Старожил


Сообщения: 226
Благодарности: 4

Профиль | Отправить PM | Цитировать


Telepuzik, Сработало

Код: Выделить весь код
USE master 
RESTORE DATABASE Test1CBuh FROM DISK = '\\backup\backup\1с_work.bak' WITH
 MOVE '1с_work_Data' TO 'D:\1с_workTest_Data.mdf',  MOVE '1с_work_Log' TO 'D:\1с_workTest_Log.ldf', REPLACE
А на работающую базу (с которой был сделан backup) это ни как не повлияло?

-------
Альтернатива Всему!


Отправлено: 09:44, 04-08-2011 | #8


Аватара для Telepuzik

Ветеран


Сообщения: 3722
Благодарности: 747

Профиль | Отправить PM | Цитировать


Цитата bombording:
А на работающую базу (с которой был сделан backup) это ни как не повлияло? »
Повлиять никак не должно. Новая база появилась же? Проверьте рабочую базу все ли с ней нормально.
Цитата Пример использования c сайта MSDN::
E. Make a copy of a database using BACKUP and RESTORE
This example uses both the BACKUP and RESTORE statements to make a copy of the Northwind database. The MOVE statement causes the data and log file to be restored to the specified locations. The RESTORE FILELISTONLY statement is used to determine the number and names of the files in the database being restored. The new copy of the database is named TestDB. For more information, see RESTORE FILELISTONLY.

BACKUP DATABASE Northwind
TO DISK = 'c:\Northwind.bak'
RESTORE FILELISTONLY
FROM DISK = 'c:\Northwind.bak'
RESTORE DATABASE TestDB
FROM DISK = 'c:\Northwind.bak'
WITH MOVE 'Northwind' TO 'c:\test\testdb.mdf',
MOVE 'Northwind_log' TO 'c:\test\testdb.ldf'
GO

-------
По'DDoS'ил и бросил :-)


Последний раз редактировалось Telepuzik, 04-08-2011 в 10:56.

Это сообщение посчитали полезным следующие участники:

Отправлено: 10:15, 04-08-2011 | #9



Компьютерный форум OSzone.net » Серверные продукты Microsoft » Другие серверные продукты » Microsoft SQL Enterprise синхронизация баз 1с

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
MSFT SQL Server - Где найти Microsoft SQL Server 2005 Enterprise Edition x64 sgiii Программирование и базы данных 1 29-01-2011 16:40
MSFT SQL Server - [решено] где скачать Microsoft SQL Server 2005 Enterprise Evaluation Edition? Ferum01 Программирование и базы данных 1 15-07-2010 13:18
MSFT SQL Server - Переход с SQL 2005 (Express) на SQL 2008 (Enterprise) Diesel315 Программирование и базы данных 4 13-01-2010 01:05
MSFT SQL Server - Синхронизация баз PERMYAK Программирование и базы данных 4 21-12-2009 11:20
Проблема с переносом баз MS SQL RED Bear 01 Программирование и базы данных 1 29-10-2003 20:17




 
Переход