Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   поиск полей в большом кол-ве БД (https://forum.antichat.xyz/showthread.php?t=47025)

GreenBear 18.08.2007 20:11

поиск полей в большом кол-ве БД
 
в общем суть такая: допустим есть 5к БД мускул
есть скрипт, суть его такая -
1. он берет лист всех БД, доступных пользователя.
2. в цикле перебирает БД и достает оттуда таблицы.
3. из таблиц достает поля. Потом в цикле их перебирает. если есть соответствие в названии поля , то выводит результат.

ну это так, для общего ознакомления.
так вот, все работает замечательно при небольшом кол-во БД. но если их много - жопа полная.
пробовал снизить нагрузку слипом - но и тут проблема. поставить маленький - смысла 0, поставить большой - до 2 пришествия будем ждать.

кто решал подобные проблемы.. можно ли как?

inv 18.08.2007 20:23

ты не пробовал обрабатывать отдельно каждую таблицу?
while()
{
работа только с одной таблицей и ее данными и только в этом цикле.....или я тя не правильно понял
}
или проблема не в этом?или это бред)

ZaCo 18.08.2007 20:23

>>2. в цикле перебирает БД
>>но если их много - жопа полная.
не понимаю о какой нагрузке идет речь

GreenBear 18.08.2007 20:36

сложи БД, таблицы, поля...

GreenBear 18.08.2007 20:42

Цитата:

или проблема не в этом?
они и идут в обработку по порядку. 1 таблица 1 бд, 2 таблица 1 бд,... 20 таблица 4000 бд.

-=lebed=- 18.08.2007 20:52

Цитата:

3. из таблиц достает поля. Потом в цикле их перебирает. если есть соответствие в названии поля , то выводит результат.
Т.е ищем конкретное называние поля и надо на выходе получить название базы и таблицы в ней? или вывести все значения совпавшего поля из всех таблиц и баз в один список? Так?

GreenBear 18.08.2007 20:58

если поле совпало, то мне нужно название таблицы, бд и самого поля.
это то ерунда.. у меня проблема с тем, что она виснет на большом кол-во бд.

наверное единственное возможное - после перебора 200-400 бд усыплять скрипт на чуть-чуть.

-=lebed=- 18.08.2007 21:20

Цитата:

Сообщение от GreenBear
если поле совпало, то мне нужно название таблицы, бд и самого поля.
это то ерунда.. у меня проблема с тем, что она виснет на большом кол-во бд.

наверное единственное возможное - после перебора 200-400 бд усыплять скрипт на чуть-чуть.

Имхо, чтоб не висло (не было dos) запросами к базам их надо предварительно сдампить в текстовые файлы и осуществлять поиск нужного поля в них...

GreenBear 18.08.2007 21:46

дело в том, чтобы их сдапмить - нужно сначала их получить =)

[53x]Shadow 18.08.2007 22:12

Цитата:

Сообщение от GreenBear
дело в том, чтобы их сдапмить - нужно сначала их получить =)

Смысл усыплять скрипт, если идет последовательный перебор, а не распределенный? В чем выражается зависание?


Время: 23:20