Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Заливка базы. Ошибки (

00 голосов
6
При попытке залить базу , частенько выдает ошибки на таблицы b_search_content_stem, b_sale_fuser
Подскажите за что они отвечают, и может их просто надо очищать перед заливкой?
Те кто уже имеет опыт, подскажите может еще какие таблицы есть, с какими может возникнуть трудности по заливки )
спросил 23 Окт, 13 от Storitell (340 баллов)

6 Ответы

00 голосов
Добрый день,

Цитата
Вячеслав Шабанов пишет:
При попытке залить базу , частенько выдает ошибки на таблицы b_search_content_stem, b_sale_fuser


Какие именно возникают ошибки при обращении к этим таблицам?

Цитата
Вячеслав Шабанов пишет:
Подскажите за что они отвечают, и может их просто надо очищать перед заливкой?


b_search_content_stem - отвечает за поиск контента на сайте при морфологическом поиске.
b_sale_fuser - а здесь содержится информация о пользователях интернет-магазина.
ответил 20 Ноя, 13 от JIETYHOK (2,260 баллов)
00 голосов
Цитата
Mihail Mitrofanov пишет:
b_sale_fuser - а здесь содержится информация о пользователях интернет-магазина.

А нельзя поточнее. Что за пользователи?
У меня, например, эта таблица уже содержит больше миллиона строк - нет у меня столько пользователей. Почти у всех USER_ID = NULL. И это проблема. Вечно не хватает памяти и рушится именно эта таблица. Вопрос: если очистить её, что будет? Подозрение, что это поисковики ходят по ссылочке "купить".
ответил 28 Фев, 14 от COH9l (100 баллов)
00 голосов
b_sale_fuser - а здесь содержится информация о пользователях интернет-магазина.

следовательно поле USER_ID - это ID пользователя сайта. NULL - значит он удален)

предположение

записи остаються возможно из за того чтобы хранить историю заказов. Кем был куплен , что куплено и прочее)
ответил 20 Июнь, 14 от Storitell (340 баллов)
00 голосов
Цитата
Вячеслав Шабанов пишет:
следовательно поле USER_ID - это ID пользователя сайта. NULL - значит он удален)

Восхитительная логика.

Таблица b_sale_user содержит идентификатор для привязки корзины к пользователю. Большое обилие записей с USER_ID = NULL означает, что у Вас на сайте шарилась куча неавторизованного народа (когда USER_ID не определен). Вы можете ее очистить (убрать записи с USER_ID = NULL), только если в таблице b_sale_basket нет привязок к соотв. записям из таблицы b_sale_user. А лучше написать в ТП и попросить совета.
ответил 19 Окт, 14 от Pomnep (13,960 баллов)
00 голосов
То есть можно просто сделать так:
Код
DELETE FROM b_sale_fuser WHERE ID NOT IN (SELECT FUSER_ID FROM b_sale_basket)
ответил 18 Фев, 15 от natali (100 баллов)
00 голосов
Штатно уменьшить количество записей в b_sale_fuser можно следующим образом:
1. Значительно уменьшить значение поля "Сохранять корзину (дней):" в настройках модуля "Интернет магазин".
2. Отредактировать агент CSaleUser::DeleteOldAgent и установить ему периодичность запуска 10-20 сек.

В результате у Вас начнут быстрее удаляться записи старых корзин (если такое имеются). После уменьшения размера b_sale_fuser рекомендуем оставить в поле "Сохранять корзину (дней)" корректное значение дней, потому, что 30 дней для хранения корзины, честно говоря, много.
ответил 29 Май, 15 от JIETYHOK (2,260 баллов)

Похожие вопросы

0 голосов
3 ответов
спросил 08 Март, 14 от Lapulay (100 баллов)
0 голосов
3 ответов
спросил 02 Март, 14 от Kenta (100 баллов)
0 голосов
4 ответов
0 голосов
2 ответов
0 голосов
4 ответов