Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Если завис комп... [D5, IB6.x]


Страницы:   1 2

harismatik ©   (2002-09-16 18:37:00) 

Господа. Столкнулся с таким траблом: Работает моя программа и вдруг зависает комп (по различным причинам), ну или вдруг пропадает напряжение (комп без упса). После перезагрузки к этой базе больше невозможно доступиться. Кто знает, как решить такую проблему?
Да, я понимаю, что можно предварительно создать бекап и потом из него восстановить базу, но такой вариант меня не очень то устраивает, так как пропадет стратегически важная информация, которая была записана в базу после создания бекапа (база постоянно дополняется в процессе работы программы).


Mike Kouzmine   (2002-09-17 18:30:00) [1]

Так разговор об этом и идет, что данные теряются при внезапном отключении питания, и эта опция не поможет их сохранить, если они не были физически записаны на диск.


Romkin   (2002-09-17 18:24:00) [2]

Так, конечно, кеш всегда есть, просто при forced writes возврата из транзакции не происходит, пока страницы физически не записаны на диск, и если этого не произошло, остаются неутвержденные страницы, которые просто отбрасываются при следующем запуске сервера. Этот процесс занимает обычно несколько секунд, в отличие, например, от MS SQL, на котором производится откат по transaction log.
Фактически, IB при включенных forced writes может повредить базу тольково время sweep, поэтому sweep interval тоже надо убирать


Mike Kouzmine   (2002-09-17 18:20:00) [3]

Romkin © -> Железо так устроено, что оно физически не может выполнять запись на диск (один) сразу все, что ты его просишь. То, что надо записать на диск, но не может быть записано в данный момент, записывается в кеш (вернее все в кеш, а потом на диск), который по мере возможности сбрасывается на диск. Сервер считает, что он записал, но физически этого не происходит. Этот кеш находится в оперативной памяти, при нештатном отключении он теряется. Грубое описание, но, примерно, происходит так, хотя, может, я и ошибаюсь.


Romkin   (2002-09-17 17:13:00) [4]

В IBConsole - в свойствах базы, когда к ней есть коннект, на вкладке General должно быть Forced Writes Enabled


harismatik   (2002-09-17 17:10:00) [5]

А где это ставится? Что то не пойму.


Romkin   (2002-09-17 16:50:00) [6]

Что значит Forced Writes неважно? Ставить обязательно в ON, и база будет в порядке, как над питанием ни издевайся


harismatik   (2002-09-17 16:50:00) [7]

Где-где??? Да где угодно! И в IBConsole, и в DBExplorer, и в BDEAdministrator - нигде не пускает. :( (хотя ДО аварии пускало)


Johnmen   (2002-09-17 16:41:00) [8]

Где вводятся имя и пароль ?
(Не заставляй меня тащить из тебя клещами дополнительные необходимые данные :-))))))))


harismatik   (2002-09-17 16:38:00) [9]

2 Johnmen Вот так и выражается: ввожу пароль и имя, а сервер говорит, что такой базы вообще нет и прароль и имя не принимает. Причем никакие имена и пароли не принимает (хотя до падения принимал)


Johnmen   (2002-09-17 16:21:00) [10]

А в чем выражается "не могу доступиться" ?


harismatik   (2002-09-17 16:03:00) [11]

Ну ладно, с сервером будем считать разобрались. А что мне делать с моей базой, к которой я теперь не могу доступиться после зависания сервера?


Mike Kouzmine   (2002-09-17 11:21:00) [12]

Это не важно. Если запросов на запись много, он поставит этот форс в очередь, но записать не успеет.


Павел2   (2002-09-17 11:12:00) [13]

Поставь Force write в On


harismatik   (2002-09-16 19:45:00) [14]

2 Anatoly - понятно
2 Mike - ИБсервер и клиент работают на разных машинах


Anatoly Podgoretsky   (2002-09-16 19:34:00) [15]

Нда, сервер не должен падать и обязательно использование UPS с автоматическим, нормальным выключением компьютера, а то создается впечатление, что данные не имеют ни какой ценности.


Mike Kouzmine   (2002-09-16 19:32:00) [16]

Нет, ИБ и клиент работают на одной машине? Если по сетке, то сервак надо делать надежным, я думаю другого совета не будет, хотя, я могу ошибаться.


harismatik   (2002-09-16 19:30:00) [17]

Что ты имеешь ввиду? Как к нему подключаются клиенты? По локальной сетке.


Mike Kouzmine   (2002-09-16 19:17:00) [18]

А у тебя ИБ локальный?


harismatik   (2002-09-16 19:16:00) [19]

И что прикажешь делать, если такое случится у пользователя моей программы?


Mike Kouzmine   (2002-09-16 19:06:00) [20]

Тут проблемы на уровне ввода/вывода оп системы.


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо