PDA

Просмотр полной версии : Выручайте, а не то пристрелюсь.



M1_Ng
18.08.2015, 10:49
История вот в чем.

Работали, все было хорошо, потом склад выдал ошибку о том, что ему кэша мало. Не успели разобраться с кэшем, как ни с того ни с сего перестал запускаться сервер...

22.08.2015 9:26:51- Server started
version=1.27
subkey=SDBSERV
def working set size min=204800, max=1413120
max cache memory=1024 pages (4096 K)
22.08.2015 9:26:51- Loading datafile: D:\SHBase\dbfile.sdb (datalog=D:\SHBase\dblog.sdl)
22.08.2015 9:26:52- Error- Code=43, Win32 error=8, Info=0.
22.08.2015 9:26:53- Database not loaded due to error(s).
22.08.2015 9:30:43- Server stopped

На этом и застряли. Слёзно молю о помощи!

sibgaba
18.08.2015, 12:37
Размер базы какой?
В SdbsConf.exe для сервера какой cache прописан?
Еще вариант, поднять вчерашний бекап и сразу увеличить страницы

M1_Ng
18.08.2015, 12:55
Размер базы какой?
В смысле сколько на ж/д занимает?

Каш не прописан пустые поля, но какое значение не выставлял бы та же самая ошибка.

Суть в том что вообще сервак не поднимает, я может чего-то не допонимаю, но при попытке бекапа он все равно к серваку обращается, а там опять по кругу нет связи с сервером.

Как я понял сервак должен запускаться не смотря на параметры кэша, а уже SH будет в него упираться, или я ошибаюсь?

PS Еще забыл уточнить что в службах сервак не запускается ошибка 8

alkon132
18.08.2015, 13:12
В смысле сколько на ж/д занимает?
Именно. Возможно, перепутали кэш с кол-вом страниц в базе и сделали базу более, чем 1,8 Гб.

Как я понял сервак должен запускаться не смотря на параметры кэша, а уже SH будет в него упираться, или я ошибаюсь?
Нет. Если указать слишком много - не включится.

M1_Ng
18.08.2015, 13:20
Файл dbfile.sdb весит больше 1.8 Гб, если в нем дело подскажите пожалуйста как уменьшить?

alkon132
18.08.2015, 13:25
2 варианта:
1) Правильный. Восстановить последний работоспособный бэкап.
2) HEX-редактором открыть файл и отрезать нули в конце файла. Не всегда работает, имеет смысл только если бэкапа нет.

M1_Ng
18.08.2015, 16:56
2 варианта:
1) Правильный. Восстановить последний работоспособный бэкап.

Все вроде бы стало получатся но на последнем этапе восстановления вылезает ошибка "Ошибка создания файла данных. Размер создаваемого фала в байтах 0 Ошибка win32 = 80. Файл существует."

Решить бы эту проблему и думаю на этом закончим.

Leon44
18.08.2015, 17:04
файлы в database (ну или откуда их сервер берет, sdbconf утилита - там все видно) перенесите в другое место, чтобы в нем было пусто, можно конечно и удалить.

M1_Ng
18.08.2015, 17:14
файлы в database (ну или откуда их сервер берет, sdbconf утилита - там все видно) перенесите в другое место, чтобы в нем было пусто, можно конечно и удалить.
Как в инструкции написано пути к базе и логу обновлений в sdbconf не указаны, но при восстановлении требует же указать путь к этим фалам, что я не так понимаю? к каким файлам указывать путь при восстановлении?

---------- Добавлено в 16:14 ---------- Предыдущее сообщение было размещено в 16:09 ----------

Мда, ну я и тормоз, нужно было просто указать путь в любую свободную директорию!

Всем огромное спасибо за участие!

Leon44
18.08.2015, 17:25
Это на будущее.
Обновление версии осуществляется с помощью Backup\Restore


1. Запустить SDBMan.exe


2. Выбрать "Обслуживание\Резервное копирование" Запомнить имя файла bkp.


3. Запомнить размер базы. Можно посмотреть "Обслуживание\размер файла базы данных"


4. С помощью SDBConf.exe посмотреть и запомнить путь к DataBase file и DataBase log
5. Остановить сервер SDBServ.


6. Сохранить где-нибудь в другом месте файл базы и логфайл
7. С помощью SDBConf.exe очистить поля DataBase file, DataBase log


8. Обновить все exe,dll, bpl


9. Запустить сервер SDBServ.


10. Запустить SDBMan.exe. При логине нажать "Отмена".


11. Выбрать "Прочее\восстановить резервную копию...".
Заполнить поля:
Сервер - имя сервера ( можно посмотреть с помощью SHSetup.exe )
Файл резервной копии (см.п.2)
Файл данных - имя файла базы данных (см.п.4)
Минимальный размер файла данных... (см.п.3)
Файл журнала обновлений - имя лог файла (см.п.4))
....
Библиотека - путь с именем файла SH_CTRDB.dll
Параметры - пусто


12. Запустить склад и проверить что работает.

В вашем случае пункт восемь не делать.