Простейший способ очистить базу данных от мусора и исправить ошибки

Администрирование - Чистка базы

Столкнулся с ситуацией: все проводки (бухгалтерия) удвоены! во всех отчётах, при этом проводки по документам верны. КРАЙ! заготовок на такой случай нет... Скопировал на флешку, а потом сделал вот такие шаманские действия:

Открыл БД в Конфигураторе.

1. Выгрузил данные в архив вот таким образом: Конфигуратор-Администрирование-Выгрузить данные... (не путать с "Сохранить данные...").

2. Создал АБСОЛЮТНО пустую БД, зашёл в неё через Конфигуратор, загрузил этот архив (Конфигуратор-Администрирование-Загрузить данные... (не путать с "Восстановить данные...").), перенёс в эту БД все прибабахи типа ExtForms и пр.

Вот и всё! Это помогло, проводки исправились, БД сократилась почти в 3 раза.

P.S.: Это - единичный случай, но, может, это Вам поможет. Хуже точно не будет. А вообще, в таких ситуациях у меня есть привычка пользоваться Лисичкой (FoxPro), эта штука БД наизнанку вывернет, лишь бы потом хватило ума собрать правильно...

См. также

Комментарии
1. syncmas (syncmas) 15.12.10 09:12 Сейчас в теме
Думаю, что обычное тестирование и исправление со всеми включенными опциями помогло бы решить эту проблему. При загрузке данных делается почти все тоже самое: упаковка таблиц, переиндексация (вот про пересчет итогов не помню, скорее всего тоже).
2. Владислав Чинючин (vcv) 84 15.12.10 09:18 Сейчас в теме
(1) Выгрузка/загрузка лечит большее количество проблем, чем тестирование/исправление. Давно известный народу старым адынэсникам факт. А для новых полезное знание. :-)
3. bulpi bulpi (bulpi) 113 15.12.10 11:39 Сейчас в теме
Баян, однако :)
Alav; bav; Рязанский; Сирёга; GIS; +5 Ответить 1
4. Александр Булейко (big60) 31 15.12.10 13:14 Сейчас в теме
(3) Судя по тому, что данный пост появился, знают не все. Лишнее подтверждение тому, что новое - это хорошо забытое старое.
(0) При удалении помеченных объектов они физически не удаляются, а маркируются специальным маркером. При помощи dbf-редактора можно их восстановить. А при выгрузке данных эти записи не выгружаются. Происходит действие, аналогичное упаковке таблиц БД. Поэтому при загрузке база получается меньше, иногда существенно. Кроме того, при загрузке происходит переиндексация и пересчёт итогов. Это очень хорошо подлечивает базу.
5. Сергей Антропов (ASA1970) 15.12.10 13:25 Сейчас в теме
согласен с big60
потому плюсанул
6. Ёпрст (Ёпрст) 1021 15.12.10 14:23 Сейчас в теме
Автор сделал как минимум, несколько ошибок:
1.баянище
2.не указал что такой способ годен только для дбф (для скуля он на.. не нужен, там все делается средствами самого скуля.
3.архивную копию через сохранить данные (в случае дбф), ибо полученная выгрузка не всегда может загрузиться в случае ошибок в ИБ.
4.По уму-загружать нужно в туже базу, ничего не удаляя в ней при этом, тем самым не надо ничего копировать и переносить.
aigar; zuza; IgorS; Spartan; artbear; bav; +6 Ответить 1
7. gks 15.12.10 14:59 Сейчас в теме
Это обычный прием, которым пользуются при исправлении базы.
И работает быстрее, чем тестирование и исправление.
Не знал, что можно столько плюсов набрать, упустил...
8. Alex Bah (bav) 19 15.12.10 16:16 Сейчас в теме
И правда баян. Вот к чему ведет погоня за публикациями.
С нетерпением ждем статей:
1) Добавление новых баз в список баз.
2) Установка 1с-двигателя и 1с-конфигураций с дистрибутива.
3) Как правильно втыкать ключ.
4) Как правильно распаковывать желтую коробку.
ZOMI; eleka; zuza; sevushka; IgorS; Maxis; +6 Ответить 1
9. Ийон Тихий (cool.vlad4) 41 15.12.10 16:20 Сейчас в теме
(8) :D а разве их еще не было? ...(скрываюсь в погоне за публикациями) .
ЗЫ По моему нужна песочница, в которую надо как грязных и некрасивых спартанцев сбрасывать такие публикации. Не, песочница все же нужна.
ЗЫ Черт, а сколько ведь плюсов, может и вправду..."Создание и запуск информационных баз"
Зы Давайте объявим конкурс на лучшую бестолковую работу. "Выращивание кактуса как средство очистки информационных баз бухгалтера"
10. Альтаир (Altair777) 639 15.12.10 17:36 Сейчас в теме
11. Артур Аюханов (artbear) 881 15.12.10 17:50 Сейчас в теме
Баян, выше об этом хорошо сказали.
Минусую.
12. Аркадий Кучер (Abadonna) 3687 15.12.10 18:00 Сейчас в теме
Зы Давайте объявим конкурс на лучшую бестолковую работу.

Чур я! ;) Предлагаю вот эту
http://infostart.ru/public/79340/
13. anry mc (AnryMc) 714 15.12.10 20:26 Сейчас в теме
Один мой знакомый потерял так работу:
Фирма. Периодически база ВЫГРУЖАЛАСЬ. Случилось горе. База упала…
Её восстановили из ранее выгруженной (за день до падения). И тут оказалось, что не идут итоги не только на начало месяца, но и на начало квартала и даже года.
Оказалось, что База сбойнула пару лет назад. Никто не обратил внимания. И ошибка тянулась …
А при выгрузке автоматически «тестировалась». А при загрузке получилось, такое что совершенно не соответствовало официальному учету за пару лет.
Мораль – ребята не забывайте периодически тестировать базу и пересчитывать итоги.
14. Ийон Тихий (cool.vlad4) 41 15.12.10 21:09 Сейчас в теме
(13) мораль сей истории также такова, что нужно делать бэкапы (т.е. точные копии), а не только dt
15. Andry Boris (AndryBoris) 15.12.10 23:56 Сейчас в теме
+ за простату и старание
+ к дню Святого Николая :D
16. Аркадий Кучер (Abadonna) 3687 16.12.10 03:29 Сейчас в теме
(15) За простАту? ну да... он же мужик, у него простАта есть :D
Но плюс за это более логичен бы от женщины был
17. Vasily Kushnir (vasilykushnir) 62 16.12.10 08:35 Сейчас в теме
(4) Упаковка ДБФ делается и без выгрузки/загрузки. Кроме того упаковать сам МД - лучше , чем загрузить самого на себя как измененную конфигурацию, по-моему еще не придумали (не считая спрециальных приблуд, которые заточены на упаковку компаундов).
18. Vasily Kushnir (vasilykushnir) 62 16.12.10 08:38 Сейчас в теме
+ к 17 А представьте: полуфабрикат (начинающий проггер, два раза видящий 1С) применит этот метод на слегка прибитой базе (за копию он даже и не догадается). Автор компенсирует ему затраты на клизму?
19. Алексей Коробов (WiseSnake) 1735 16.12.10 10:48 Сейчас в теме
Баян.
Просто человек решил похвастаться успехом, сам удивился наверно что что то получилось ))
ИМХО нормальная схема (все в базе никуда не копируем):
1. Бекапим
2. Тестирование/исправление
3. Исправляем выявленные ошибки
4. Выгружаем/загружаем (она же очистка от мусора)
20. Аркадий Кучер (Abadonna) 3687 16.12.10 10:57 Сейчас в теме
(19)Схема нормальная, сам юзал. Но вот
решил похвастаться успехом, сам удивился наверно что что то получилось

это точно!
А еще более плюсовальщики удивляют - кого на работе держат? :(
21. Александр Рытов (Арчибальд) 2660 16.12.10 11:01 Сейчас в теме
(20) Кого приняли, того и держат :|
22. Аркадий Кучер (Abadonna) 3687 16.12.10 11:03 Сейчас в теме
(21) Тогда вопрос меняю ;) Кого приняли? :(
23. Александр Рытов (Арчибальд) 2660 16.12.10 11:11 Сейчас в теме
24. Алексей Коробов (WiseSnake) 1735 16.12.10 11:11 Сейчас в теме
(22) Кто пришел того и приняли :D
25. Anatolii Karasev (KapasMordorov) 408 16.12.10 11:20 Сейчас в теме
Кто рукавОдить не помешает, того и взяли.
26. Влад Кацманевич (cool.clo) 16.12.10 11:24 Сейчас в теме
:D (23) (25)ребят вы от него заразились?http://infostart.ru/public/79340/
Арчибальд; Abadonna; +2 Ответить 1
27. Александр Рытов (Арчибальд) 2660 16.12.10 11:36 Сейчас в теме
28. Алексей Коробов (WiseSnake) 1735 16.12.10 14:18 Сейчас в теме
(6) Кстати, о птичках!
На счет скуля я вот пока не согласен (я во всяком случае не нашел как такое можно в скуле сделать, если кто подскажет буду примного благодарен!).
Ситуация такая:
Скульный сервер был старый и на диске с базой было всего 60 гигов.
Лог файл за год вырос до 20 гигов(казалось бы нормуль пока), но вот незадача, при очередном тестировании и исправлении он вырастает до 60 гигов и место заканчивается(не спрашивайте меня почему, сам не знаю... ошибки там были, но не сильно много, это я потом тестировал)
Место заканчивается и скуль встает колом! Восстановить базу не дает. Понятное дело надо чистить лог файл, но я не нашел стандартных средств это сделать. Нашел самописные скрипты, которые с моими знаниями скуля ой как боязно использовать.
Вот тут и пригодился способ выгрузить/загрузить (архивную копию я ясное дело сделал перед тестом, поэтому от способа осталось только загрузить)...
То бишь сносим нафиг скульную базу и разворачиваем заново с теми же параметрами (база вместе с логами скуля уже 3 гига).

P.S. Любителей русского языка приношу извинения, просьба не обращать внимания на ошибки и сленг. ;)
29. Аркадий Кучер (Abadonna) 3687 16.12.10 14:27 Сейчас в теме
(28)
На счет скуля я вот пока не согласен

Согласен, что не согласен :D Помню, задурковала база (а вот что именно - не помню), я скуль так-сяк знаю, мой проггер один вообще его в совершенстве знал.
Мы даже мудрствовать не стали: выгрузили/загрузили. База была не шибко большая, со всякими скриптами просто больше бы провозились, и то неизвестно, как бы оно получилось
30. Ёпрст (Ёпрст) 1021 16.12.10 17:38 Сейчас в теме
(28) это всё от недостатка знаний.
ЗЫ: да и то, только мелкие базёнки выгрузятся, что побольше - болт.
А "лечить" базу средствами скуля - быстрее и проще.
31. Алексей Коробов (WiseSnake) 1735 16.12.10 18:38 Сейчас в теме
(30) Возможно, но от вас я этих знаний тоже не услышал.
Покажите мне такую базу. Ну 6 Гигов выгрузка 1са выгружается... сколько там было на скуле я не помню... Ну по правде сказать заморочки какие то с этим тоже были.
32. Аркадий Кучер (Abadonna) 3687 16.12.10 18:39 Сейчас в теме
13-ти гиговую со скуля аккурат сегодня выгружал где-то с час. Оно мне под dbf понадобилось
34. Brother Big (BigBrother) 26.01.11 15:24 Сейчас в теме
Пробовал на 1с торговле. База весит 1 406 587 992 байт.
Скопировал, удалил из копии все cdx и dbf. После описанных действий (выгрузка-загрузка, запуск 1с) - 1 510 693 709 байт. Выигрыша никакого.
35. Аркадий Кучер (Abadonna) 3687 26.01.11 15:41 Сейчас в теме
(34) А какой особый выигрыш ты хотел поиметь? Базы на dbf хранят "наглухо удаленные" в 1С объекты как помеченные на удаление, НО не как "нисся трогать", а как места для новых записей. Если база активно используется, то у тебя таких якобы удаленных и немного на самом деле.
Проверить это просто даже средствами 1С: посмотреть насколько урежется файл dbf после команды Сжать() (объект Xbase)
36. Brother Big (BigBrother) 26.01.11 15:49 Сейчас в теме
База используется каждый день, с 2002 года. Тема была "Простейший способ очитить БД от мусора ....." Мусора не оказалось ... в моей безе.
37. Аркадий Кучер (Abadonna) 3687 26.01.11 15:53 Сейчас в теме
(36) Его там и принципиально быть не может. Аналогично удалению файлов: на самом деле не удаляются, просто убиваются ссылки в FAT, и на эти места потом пишутся другие файлы (хотя физически на момент записи удаленные еще были там).
Мусор можно получить, например, нагло замочив весь справочник номенклатуры и больше ничего с номенклатурой не делая. Или занеся туда 100 позиций вместо бывших 10 000
38. Brother Big (BigBrother) 26.01.11 15:58 Сейчас в теме
Принято. Мерси. Спасибо за участие.
39. Виктор Рыков (Мастер1С) 760 15.11.11 16:44 Сейчас в теме
Оставьте свое сообщение