![]() |
![]() |
|
1C SQL выгрузка и загрузка большой базы ₽ |
☑ | ||
---|---|---|---|---|
0
TasStas
22.02.07
✎
19:27
|
Помоги решить проблему.
Стоит windows 2000 server, SQL 2000, база разрослась до невероятных размеров. В ней имеются и удаленные объекты и прочее разное. Для наведения порядка и сжатия базы посоветовали произвести выгрузку базы а потом ее загрузить в чистую конфигурацию. При проведении выгрузки было замечено что 1сv25 создает временный файл в каталоге базы данных который называется 1Cv77.dat. Размер этого файла растет в процессе выгрузки и достигает перед ее окончанием 9.2 гига. После этого получаем в указанном каталоге зипованный файл размером 164 метра. В котором содержатся файлы 1Cv7.md, Users.usr, 1Cv77.dat. Но размер файла 1Cv77.dat в этом случае составляет 1,4 гига. При попытке произвести загрузку получаем сообщение типа "Ощибка базы данных". Думаю что это проблема встроенного в 1С zipa - не хочет работать с файлами размером больше 2 гига. Но как изменить встроенный зиповщик не знаю. Может кто встречался с такими проблемами то помогите пожалуйста. Заранее благодарен. |
|||
2
mikecool
22.02.07
✎
19:29
|
(0) может выполнить следующее:
1) сделать копию 2) удалить все помеченные 3) обрезать базу |
|||
3
Мулька
22.02.07
✎
19:33
|
(0) это и есть проблема встроенного зиповщика. См.(1). А архивы - только СКЛ-бэкап + каталог базы и РАРить
|
|||
4
TasStas
22.02.07
✎
20:14
|
Все что вы говорите это хорошо. Только база составляет 100 гиг и любые действия приводят к времени 1-2суток, и это в лучшем случае. Удаление тоже хорошая операция - скорость удаления 80 доков в минуту и это в лучшем случае. Но смысл вот в чем. Пробовали удалять документы но при этом MDF файл не изменяется даже после проведения операций типа Shrink. Идея состояла в том чтобы 1С сама выгрузила данные и потом их загрузить. (Были на различных форумах разговоры по поводу что 1с не дает создать файл 1Сv77.dat то это вероятно больше вопрос Fat32)Выгружает 1С в файл 1Сv77.dat вроде нормально. Но вот поймать тот момент когда 1С уже закончила выгружать данные но еще не начала их архивировать не могу. Потом при выполнении операции загрузки будет возможность подменить файл 1Сv77.dat на оригинальный т.е. не урезанный архиватором.
|
|||
5
mikecool
22.02.07
✎
20:17
|
(4) если средствами 1С бушь сворачивать, то твои объемы за неделю и то врядли свернутся... резать надо "наживую" скулем и не допускать до таких размеров...
у нас при подрастании к 30Г уже ощущаются тормоза(конфига правда корявая).. |
|||
6
TasStas
22.02.07
✎
20:21
|
Конфа у меня конечно кривая и очень дутая. Но это было до меня, а я имею такой подарок.Вот.
|
|||
7
TasStas
22.02.07
✎
20:23
|
По поводу недели то это не так. Выгружает чуть больше суток. И как я уже писал объем получается 9.2 гига.
|
|||
8
Lyopik
22.02.07
✎
21:48
|
(0)"Ощибка базы данных" - может свободного места на винте не хватает?
а вообще, табе пора делать архивирование периода |
|||
9
DeiMos
22.02.07
✎
22:01
|
А в чём проблемы?
Закрывайте фирму на пол-годика, наводите порядок в ИТ, потом с новыми силами открывайте... Это по-любому дешевле, чем содержать нормального администратора 1С + нормального Программиста 1С 2-3 года ДО возникновения этой проблемы... На месте владельца этого бизнеса, - я бы так и поступил... Уехал бы на пол-года на Канары, закрыв фирму... Вернулся бы когда - у меня уже всё в шоколаде было бы... |
|||
10
Скользящий
22.02.07
✎
22:06
|
(9) Добряк.
|
|||
11
Stas_S
22.02.07
✎
22:49
|
Тут только скулем надо выкручиваться
а на будущее не допускать разрастания более 10гигов |
|||
12
Zaval
22.02.07
✎
23:46
|
(0) Подумай вот о чем. Сделать пустую, перенести туда справочники, остатки на 1.01.07, доки за январь и февраль. Старую оставить для справок. Между идентичными базами не очень геморно...
|
|||
13
Lyopik
23.02.07
✎
00:00
|
(12) это и есть архивирование периода. Только не на 1.01.07, а на 31.12.06
|
|||
14
Zaval
23.02.07
✎
00:04
|
Сам-то понял, что написал? Архивирование периода - нечто другое, остатки нужны именно на 1.01, но вносятся они 31.12. Не путай.
|
|||
15
romix
23.02.07
✎
00:04
|
(0) Посмотри закрываются ли регистры остатков (они должны закрываться).
Свертка базы как (12) тоже рулит. Я вот думаю а не пропатчить ли 1С-ку чтобы зип/анзип не делался при выгрузке-загрузке... |
|||
16
romix
23.02.07
✎
00:07
|
Или при закрытии файла dat MessageBox вываливать.
Тогда можно будет руками зазиповать. |
|||
17
romix
23.02.07
✎
00:08
|
А при открытии dat опять же мессадж бокс. Можно будет руками подсунуть правильный dat.
|
|||
18
DeiMos
23.02.07
✎
00:11
|
(9+): Наймите бабушек-бухгалтерш.
Они за месяц вам начальные остатки заколотят в пустую базу. ИМХО, нормальный вариант (по-любому дешевле, чем пригласить нормального 1С-SQL-специалиста на решение возникшей /накопившейся/ вашей проблемы...). |
|||
19
Lyopik
23.02.07
✎
00:12
|
(15) тебе и карты в руки, думаю, многие будут благодарны!
|
|||
20
romix
23.02.07
✎
00:12
|
Короче я могу такую патчилку замутить если кому-то надо (мне не на чем проверять, но сделать относительно легко).
|
|||
21
romix
23.02.07
✎
00:14
|
Автор ветки хорошо описал проблему, щас попробую патчер сделать.
|
|||
22
Zaval
23.02.07
✎
00:14
|
(16) Неплохо бы. Я когда-то пробовал переносить без архивации, но дат уже корявый получался (может кривые руки были:))
|
|||
23
Lyopik
23.02.07
✎
00:27
|
(20) все в ожидании
|
|||
24
ShoGUN
23.02.07
✎
00:57
|
(21) Так Орефков вроде менял стандартную dll-ку на другую, работающую с архивами больше 2 гигов... Надо тему поискать...
|
|||
25
romix
23.02.07
✎
01:04
|
кажется получилось... Надо проверить...
|
|||
26
romix
23.02.07
✎
01:07
|
Не скажу что у меня круче чем у Орефкова... Заменять зиповалку правильнее конечно.
|
|||
27
romix
23.02.07
✎
01:17
|
http://x-romix.narod.ru/Unload_Dat_Fix.rar
Скачивать Левой кнопкой мыши. Подключать как плагин при помощи Книга знаний: Перехват API-вызовов и альтернативные плагины для 1С:Предприятие |
|||
28
romix
23.02.07
✎
01:20
|
(24) Че-то поиск не находит эту разработку...
|
|||
29
romix
23.02.07
✎
01:26
|
Порядок установки:
положить Hook_1C.dll в BIN положить туда же patch_Hook_1C.exe, запустить (при закрытой 1С). создать папку Plugins, в нее кинуть содержимое http://x-romix.narod.ru/Unload_Dat_Fix.rar , чтобы получилось bin\plugins\Unload_Dat_Fix\plugin_unload_dat_fix.dll Создать файл Hook_1c.ini в папке Plugins вида |
|||
30
ShoGUN
23.02.07
✎
01:27
|
(28) Пардон, я сглючил. Это он предлагал так проблему решать вот здесь
v7: Самый раздражающий недостаток 7.7 А решение есть аналогичное твоему: http://www.1cpp.ru/wiki/?wakka=DownloadAll&v=47v |
|||
31
romix
23.02.07
✎
01:29
|
Снос - закомментировать в ini загрузку dll (символ ; - начало комментария).
Или восстановить seven.dll из seven.dll.bak. |
|||
32
ASV
23.02.07
✎
03:07
|
p:=pos('.dat',s);
думаю лучше заменить на 1Cv77.dat, иначе месадж достанет |
|||
33
ASV
23.02.07
✎
03:13
|
||||
34
ASV
23.02.07
✎
03:14
|
только грузить нужно в непустую базу
|
|||
35
TasStas
23.02.07
✎
11:36
|
Огромное спасибо Всем за советы, попробую применить их на практике. О результатах доложу.
|
|||
36
romix
23.02.07
✎
11:51
|
(30) Я так понял что это кусок функции, которую нашли отладчиком. А как это запустить?...
|
|||
37
romix
23.02.07
✎
11:52
|
(32) Точно.
(35) Стучись в аську если будут вопросы... |
|||
38
romix
23.02.07
✎
12:35
|
Не срабатывает при загрузке... Поправлю...
|
|||
39
romix
23.02.07
✎
12:50
|
Ну все, кажется получилось.
|
|||
40
romix
23.02.07
✎
16:04
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |