извлекаем мыла из бд mySQL(ищу)

Discussion in 'PHP' started by ReduKToR, 3 Oct 2009.

  1. ReduKToR

    ReduKToR Active Member

    Joined:
    5 Jan 2009
    Messages:
    257
    Likes Received:
    179
    Reputations:
    4
    короче нужен скрипт для извлечения мыл из БД mysql
    в бд больше 100000 юзеров....какой бы скрипт не пробывал,то пишит почти везде типа:
    Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 1 bytes) in Z:\home\localhost\www\index.php on line 15



    также если у кого есть - можно чекер мыл:яху,майл,гмайл,хотмайл
     
    8 people like this.
  2. geezer.code

    geezer.code Elder - Старейшина

    Joined:
    22 Jan 2007
    Messages:
    552
    Likes Received:
    358
    Reputations:
    90
    limit вышел из моды видимо.
     
    1 person likes this.
  3. ReduKToR

    ReduKToR Active Member

    Joined:
    5 Jan 2009
    Messages:
    257
    Likes Received:
    179
    Reputations:
    4
    ща попробу игноре репортс,и тайм лимит поставить.....ступил....отпишусь
     
  4. ReduKToR

    ReduKToR Active Member

    Joined:
    5 Jan 2009
    Messages:
    257
    Likes Received:
    179
    Reputations:
    4
    geezer.code,бестолку............................
     
  5. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    если есть дамп БД то можно прогой - взять
     
  6. geezer.code

    geezer.code Elder - Старейшина

    Joined:
    22 Jan 2007
    Messages:
    552
    Likes Received:
    358
    Reputations:
    90
    я вообще вас не пойму :)
    есть дамп ?? залей его в мускул
    mysql myBase < dump sql
    дальше делаешь select email from users into outfile 'file.txt';
    Это раз.

    есть доступ к вэбшеллу?? но по какойто причине нет возможности сделать дамп?
    select * from users limit bla-bla
    тоже никто не отменил.
    чуть подробнее можешь описать что тебе нужно?
     
  7. ReduKToR

    ReduKToR Active Member

    Joined:
    5 Jan 2009
    Messages:
    257
    Likes Received:
    179
    Reputations:
    4
    geezer.code,короче моя цель такая...
    есть бд мускул...весит около 700метров
    хочу оттуда достать мыльники,и чекнуть их на валидность

    а)для спам базы
    б)глянуть невалидные мыльники(на форуме необходимо подтверждение с мыла для реги)
    так вот если невалидные есть,то откатить на них пассы и глянуть акки
     
    2 people like this.
  8. geezer.code

    geezer.code Elder - Старейшина

    Joined:
    22 Jan 2007
    Messages:
    552
    Likes Received:
    358
    Reputations:
    90
    вопрос такой в каком виде у тебя есть база (файлы бД, дампы, или еще чтото), и какой ты к ней имеешь доступ(консоль, майадмин, другое)
    если есть доступ к базе то есть ли файл_прив ?
     
  9. ReduKToR

    ReduKToR Active Member

    Joined:
    5 Jan 2009
    Messages:
    257
    Likes Received:
    179
    Reputations:
    4
    geezer.code,лежит файл бд на харде
    щас импортироавл в пхпмайадмин
     
  10. b3

    b3 Moderator

    Joined:
    5 Dec 2004
    Messages:
    2,041
    Likes Received:
    933
    Reputations:
    199
    Непонимаю чем тебе поможеш игнорирование вывода ошибок и убрать ограничение по времени, ошибка все равно будет, но теперь она выводится не будет, но факт остается фактом, а насчет время выполнения так мне кажется запрос в БД обработается быстрее чем за 30, которые даются по стандарту на выполнение скрипта. Тебе говорили за другой лимит, который используется в SQL запросах на вывод:
     
    _________________________
  11. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    если есть дамп, то зачем лимит? Зачем восстанавливать дамп? О_о

    PS: Бред, имхо. Пишется простейший парсер, прога выше
     
  12. POS_troi

    POS_troi Elder - Старейшина

    Joined:
    1 Dec 2006
    Messages:
    1,569
    Likes Received:
    466
    Reputations:
    108
    http://dump.ru/file/3518231

    запускать так EmailParsing.exe дамБазы выходнойФайл
     
  13. geezer.code

    geezer.code Elder - Старейшина

    Joined:
    22 Jan 2007
    Messages:
    552
    Likes Received:
    358
    Reputations:
    90
    восстановить дамп в сотни раз проще чем писать какуюто чудо прогу которая должна распасить 700 мб текста. но это уже оффтоп.

    2ТС ну все раз загнал в майадмин
    делай запрос
    select concat(email,0x3a,password) from users where activated=TRUE into outfile 'c:\mails.txt';
    и всего делов то
     
    3 people like this.
  14. ReduKToR

    ReduKToR Active Member

    Joined:
    5 Jan 2009
    Messages:
    257
    Likes Received:
    179
    Reputations:
    4
    решил так:
    PHP:
    <?php 
    set_time_limit
    (0)or die ("Время работы скрипта ограниченно"); 
    $file           "KI.sql";    #Файл адресами 
    $out[0]         = "mail.txt"
    $out[1]         = "yandex.txt"
    $out[2]         = "gmail.txt"
    $out[3]         = "nextmail.txt"
    $out[4]         = "rambler.txt"
    $out[5]         = "pochta.txt"
    $out[6]         = "ru.txt"
    $out[7]         = "bk.txt"
    $out[8]         = "ukr.txt"
    $out[9]         = "wp.txt"
    $out[10]        = "other.txt"
    $rep[0]         = "#([a-zA-Z0-9-_.])+@(mail.ru)#i"
    $rep[1]         = "#([a-zA-Z0-9-_.])+@(yandex.ru)#i"
    $rep[2]         = "#([a-zA-Z0-9-_.])+@(gmail.com)#i"
    $rep[3]         = "#([a-zA-Z0-9-_.])+@(nextmail.ru)#i"
    $rep[4]         = "#([a-zA-Z0-9-_.])+@(rambler.ru)#i"
    $rep[5]         = "#([a-zA-Z0-9-_.])+@(pochta.ru)#i"
    $rep[6]         = "#([a-zA-Z0-9-_.])+@(ru.ru)#i"
    $rep[7]         = "#([a-zA-Z0-9-_.])+@(bk.ru)#i"
    $rep[8]         = "#([a-zA-Z0-9-_.])+@(ukr.net)#i"
    $rep[9]         = "#([a-zA-Z0-9-_.])+@(wp.pl)#i"
    $rep[10]        = "#([a-zA-Z0-9-_.])+@([^yandex|mail|rambler|pochta|bk|ukr|gmail|wp])+([a-zA-Z0-9-.])+\.([a-zA-Z]){2,3}#i"
    $a fopen ($file,"r")or die ("Не могу прочитать файл адресами"); 
    while (!
    feof($a)): 
          
    $email fread ($a,1024); 


    for (
    $x=0;$x<=count($rep);$x++) 

        @
    preg_match_all($rep[$x],$email,$outt); 
        
    $fp fopen (@$out[$x], "a+"); 
        for (
    $xx=0;$xx<=count($outt);$xx++) 
        if(@
    $outt[0][$xx])@fputs($fp, @$outt[0][$xx]."\n"); 

    endwhile; 
    @
    fclose ($a); 
    @
    fclose ($fp); 
    ?>
    Спасибо теме полезные скрипты....
    не актуально