Я так понял, что при удалении скажем инфоблока, или созданных в нем элементов, разделов, информация о них не удалается из самой базы данных mysql? Если не удаляется, то как можно безопастно почистить базу?
23.02.2011 14:22:06
«Да не могут же они!»
|
|||||
|
|
23.02.2011 15:40:50
Оптимизацию базы данных я проводил! Я почему спросил! Если к примеру в базе данных остались данные которые не удалились, и при поиске база данных пытается их найти, так-как они частично удалены, выдает ошибку! Такое может быть?
Наблюдается такая ерунда, при поиске по сайту, если ввожу например одну, две или три буквы (например ввожу "рол"), часто вылетает такая фигня, а иногда нет: если ввести "ролл", токая ерунда не вылетает, а пишет что на такой запрос ничего не найденно! на сайте нет информации, котороя начинается на "рол"! к примеру на сайте есть товар, название которого "nokia n72", тогда поиск работает нормально!!! |
|
|
|
23.02.2011 16:16:57
Какой-то неожиданный запрос.
Покажите, пожалуйста, код, который делает поиск.
«Да не могут же они!»
|
|
|
|
23.02.2011 17:35:42
Олег Сапегин, а это стандартный компонент поиска со стандартным шаблоном выдаёт ошибку?
/истина где-то рядом....
|
|
|
|
23.02.2011 18:01:54
Очень похоже на запрос генерации цепочки секций CIBlockSection::GetNavChain(), но не он: "M.ID IN ()".
Олег, запрос писался вручную, или может метод самодельный? |
|
|
|
25.02.2011 17:35:06
Запрос самодельный, но работает со стандартным компонентом! Я переустановил битрикс и поиск стал работать нормально! Возможно что-то не так было в битриксе (когда его настраивал, возможно где-то допустил ошибку).
Есть еще такие вопросы! 1) Скажите есть ли смысл в поиске ограничивать мин. количество символов для ввода? т.е. пока пользователь не введет два или три символа, поиск работать не будет! Я так понимаю это нужно для меньшей нагрузки и более точного поиска! Ведь если ввести букву "а", найдется все, что связанно с "а". 2) У битрикса есть резервное копирование (база данных, ядро итд.)! Например: я резервирую базу данных! Тех. поддержка битрикса (кто-то говорил на форуме, что обращался по данному вопросу и был такой ответ), сказала, что лучше всего дамп базы данных потом загружать не через битрикс, а например через PHPAdmin! Кто знает, это так? Получается чтобы сохранить сайт (иметь резерв), я делаю дамп базы данных и полностью копирую папку www (гду установлен битрикс)! Если что-то случается с сайтом, удаляю папку с хостинга и закачиваю полностью папку из резерва, после чего из PHPAdmin открываю файл базы данных, удаляю все таблицы и закачиваю дамп базы данных и все! Я все правильно понял, так ведь можно сделать??? И еще, кто знает, в каком файле прописывается доступ к базе (хост, логин, пароль итд)? |
|
|
|
25.02.2011 17:51:20
|
|||||||||||
|
|
25.02.2011 18:27:26
Если копировать (на хостинг с компьютера) резервный архив битрикса или папку www, например с помощью CuteFTP, то какой лучше всего использовать метод передачи данных: ASCII или BINARY? Я так понимаю, для PHP файлов нужно только BINARY! Был случай, когда копировал картинки через BINARY, а они потом не отображались на сайте, а если скопировать с помошью ASCII, стали отображаться! Также был случай, когда копировал PHP файлы через ASCII, но они не работали, а перекопировал через BINARY, заработали!
|
|
|
|
25.02.2011 21:08:00
Еще есть вопрос по базе данных MySQL! Прочитал в руководстве битрекса (Рекомендации по конфигурированию веб-систем для оптимальной работы с продуктом Версия 5.0.2 Дата: 06.06.2006), что рекомендуеся использовать формат данных InnoDB! Скажите, на битрикс 9.5.6 (особенно для интернет-магазинов) нужно использовать InnoDB (в дальнейшем интернет-магазин будет активно посещаться)? Если InnoDB, зачем при установке есть выбор, стандарт или InnoDB? Я так понимаю MySQL с InnoDB также можно оптимизировать (в битриксе), администрировать (PHPAdmin) и делать дамп для переноса сайта? Прочитал что есть стороний формат данных совместимый с InnoDB, в виде патчей (например: XtraDB). Вроде как лучше работают (быстрее, надежней)! Такие патчи приминимы в битрикс?
Заранее спасибо, за ответы! |
|
|
|
25.02.2011 22:13:47
1. Стоит использовать InnoDB
2. Сторонние маханизмы хранения использовать возможно но не рекомендую особенно если плохо себе представляете, что это за зверь. |
|
|
|
27.02.2011 17:28:21
Случайно наткнулся на эту статью (битрикс: за и против):
Неужели и правда у битрикса такие длинные запросы, долго выполняются? Получается битрикс работает только за счет кеша? А как же тогда такие крупные сайты как эльдорадо или связной, там что переписовали движок, для оптимальной работы с базой данных? Можно ли использовать битрикс для интернет-магазина (не переписовая движок) с посещаймостью 3000-8000 посетителей на хорошем хостинге (заточеном под битрикс) или физическом сервере? Вообще планирует ли битрикс устранить косяк, который описан в статье? |
|
|
|
27.02.2011 17:51:20
В статье несколько однобокий подход. Просто при разработке на Битриксе также надо включать голову, как в прочем и при разработке на другом фреймворке.
|
|
|
|
27.02.2011 18:15:14
У нас работают сайты с посещаемостью по несколько десятков тысяч хостов, и мы не переписывали ядро для этого.
Может даже и не надо человеку большего знать. Кто-то делает кирпичики, кто-то строит дома, а кто-то их проектирует. Но это не значит, что они друг друга за быдло держат. Запросы большие есть, это да.. Универсальность сказывается.. Но можно сделать так, что этот запрос будет выполнятся, например, раз в час. И это делается одной кнопочкой. Так что тут надо глубже копать. Трамваи вон тоже и рельсы требуют и провода, однако говорят, это самый дешевый и надежный транспорт
Что нам стоит, сайт построить? - Нарисуем, будет жить!
|
|||
|
|
27.02.2011 18:23:45
там кстати классно народ жгет:
Вот формула 1 - тоже фуфло. Вот бы такую машинку да по нашим дорогам да с несколькими мешками картошки и шестью человеками на заднем сиденье..
Что нам стоит, сайт построить? - Нарисуем, будет жить!
|
|||
|
|
27.02.2011 19:01:11
Вопрос немного не по теме (не сложный):
Есть каталог товаров (инфоблок тип catalog), в нем есть свойство производитель, через "привязка к элементам в виде списка" связывается с инфоблоком (тип info - производитель). на странице товара я хочу получить значение свойства производитель, с помощью такой записи: <?=$arResult['PROPERTIES']['proizv']['LINKED_ELEMENT']['NAME']?>, но ничего не выводиться! Зато с помощью такой записи: <?=$arResult['PROPERTIES']['proizv']['VALUE']?> выводится правильное ID элемента (соот. товару) инфоблока info - производитель. вопрос в следущем, как по ID элемента, вычислить его название и еще хорошо бы значения свойств (указанных в производители)? Тут наверно все просто, но уже перепробовал много, пока не получается, я пока еще плохо разбираюсь в битриксе (документацию читал)! Заранее спасибо! |
|
|
|
27.02.2011 21:12:32
Нашел такое решение, вроде все работает правильно:
<? $arIBlockElement = false; if(CModule::IncludeModule('iblock') && ($arIBlockElement = GetIBlockElement( $arResult['PROPERTIES']['proizv']['VALUE'], 'info'))) // получаю id элемента и указываю тип инфоблока { echo $arIBlockElement['NAME']; // здесь показывается имя элемента } ?> все вроде работает как надо, но вот правильный ли этот метод вывода, точно не знаю, подскажите??? |
|
|
|
28.02.2011 15:11:56
кто подскажет?
|
||||
|
|
|||