в общем суть такая: допустим есть 5к БД мускул есть скрипт, суть его такая - 1. он берет лист всех БД, доступных пользователя. 2. в цикле перебирает БД и достает оттуда таблицы. 3. из таблиц достает поля. Потом в цикле их перебирает. если есть соответствие в названии поля , то выводит результат. ну это так, для общего ознакомления. так вот, все работает замечательно при небольшом кол-во БД. но если их много - жопа полная. пробовал снизить нагрузку слипом - но и тут проблема. поставить маленький - смысла 0, поставить большой - до 2 пришествия будем ждать. кто решал подобные проблемы.. можно ли как?
ты не пробовал обрабатывать отдельно каждую таблицу? while() { работа только с одной таблицей и ее данными и только в этом цикле.....или я тя не правильно понял } или проблема не в этом?или это бред)
Т.е ищем конкретное называние поля и надо на выходе получить название базы и таблицы в ней? или вывести все значения совпавшего поля из всех таблиц и баз в один список? Так?
если поле совпало, то мне нужно название таблицы, бд и самого поля. это то ерунда.. у меня проблема с тем, что она виснет на большом кол-во бд. наверное единственное возможное - после перебора 200-400 бд усыплять скрипт на чуть-чуть.
Имхо, чтоб не висло (не было dos) запросами к базам их надо предварительно сдампить в текстовые файлы и осуществлять поиск нужного поля в них...
Смысл усыплять скрипт, если идет последовательный перебор, а не распределенный? В чем выражается зависание?
Если ты запускаешь скрипт непосредственно на сервере и там много места, можно получить названия баз и каждую сдампить в цикле целиком(такой скрипт давно написан), а в файле уже искать и вынимать, имхо херня, ибо бд могут быть больших объёмов, а так же вхождение заданого текста будет и данных которые лежат в таблице. Так что тот вариант который ты предложил вначале лучший, как ни крути. Кстати, если мускл ветки с Information_schema, то можно заселектить название всех баз и потом делать общий селект всех таблиц, полей и схем из HTML: INFORMATION_SCHEMA.STATISTICS