powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Околонаучная фантастика
7 сообщений из 7, страница 1 из 1
Околонаучная фантастика
    #32011867
Alexanders
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемые! Возможно ли такое в принципе.
Есть БД, SQL2000.
У меня есть полный BCP на дату + BCP of transaction log
Я восстанавливаю полный BCP на дату. Далее....
В BCP of transaction log лежат транзакции 2 пользователей.
Один пользователь делает правильные транзакции, другой- нет.
Я хочу, чтобы транзакции одного пользователя восстановились, а другого- нет.

Другими словами, я хочу задать некое условие, кроме времени транзакции, для того чтобы определить, восстанавливать ее или нет. Возможно ли это?

Может быть, есть некий продукт который может просмотреть BCP of transaction log
и "вымарать" оттуда то, что не требуется восстанавливать?
...
Рейтинг: 0 / 0
Околонаучная фантастика
    #32011882
Фотография Garya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Транзакции - это не просто модификация данных. Это последовательно выполняемые действия, которые изменяют состояние базы данных. Последовательность их выполнения может иметь существенное значение. Посему журнал транзакций можно восстанавливать только сплошняком - без пропусков. Начиная от ближайшей полной копии базы данных и заканчивая либо конкретным временем транзакции, либо помеченным специально критичным местом (создается специально, чтобы можно было прервать восстановление архива на этой точке), либо просто до конца всего бэкапа лога. Но делать пропуски при восстановлении лога НЕЛЬЗЯ.
...
Рейтинг: 0 / 0
Околонаучная фантастика
    #32011892
Alexanders
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нельзя, потому что предполагается, что нечто может заглючить на логическом уровне?
Для меня это не страшно, я представляю что делается в БД в каждый момент времени.
В моем понимании (может оно неправильное)- лог это последовательность SQL операторов. Или нечто, что можно интерпретировать как такую последовательность. В логе НЕТ информации о текущем состоянии базы.
Возле каждого SQL-оператора стоят некие признаки (точно есть признак "время").
В случае, если есть и другие признаки (имя пользователя, номер сессии), мне кажется, что теоретически возможно написать продукт, который бы удалял не нужные транзакции.
Может, он уже написан.
Далее, берем обработанный лог и восстанавливаем стандартными средствами. Под нашу ответственность.
...
Рейтинг: 0 / 0
Околонаучная фантастика
    #32011920
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть такой продукт "Log Explorer"
http://www.lumigent.com/
Вроде-бы он может...
...
Рейтинг: 0 / 0
Околонаучная фантастика
    #32011960
Фотография Garya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>В моем понимании (может оно неправильное)- лог это последовательность SQL операторов...
Нет, это не просто последовательность операторов. Если бы это было так, то не было бы никакой речи ни о транзакциях, ни об уровнях изоляции, ни о возможностях подтверждения/отката транзакций. В логе размещается информация о том, какие страницы БД во время выполнения транзакции модифицируются, а также информация о том, на какие страницы они модифицируются. После подтверждения транзакции модифицированные страницы переписываются из лога в БД, а в логе они помечаются как подтвержденные. При откате транзакции переписывания страниц из лога в БД не происходит. Так что это не просто скрипт команд - это сами данные в процессе их модификации.
...
Рейтинг: 0 / 0
Околонаучная фантастика
    #32012044
Alexanders
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2Garya: Спасибо за информацию. Дело становится сложнее, чем я думал вначале.
Поэтому, наверное, так мало продуктов по анализу лога.

log ORACLE,видимо, устроен несколько иначе. При прямом просмотре мне попадались там слова insert, select и т. п.

Но все таки log explorer попробую. Вдруг окажется полезен. О результатах эксперимента сообщу, скорее всего, на следующей неделе.

Уважаемые! Интересно мнение тех, кто уже мучал данный продукт.
Решается ли при помощи его задачка типа "воспроизвести все изменения кроме тех, что были с 17:15 до 17:20"?
...
Рейтинг: 0 / 0
Околонаучная фантастика
    #32012051
> Решается ли при помощи его задачка типа "воспроизвести все изменения кроме тех, что были с 17:15 до 17:20"?

В частных случаях решается. Посмотри, например, www.gvu.newmail.ru. Там немножко не то (речь идет об UNDO), но те же идеи можно воплотить и для решения чисто твоей задачи.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Околонаучная фантастика
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]