Mediawiki - Removendo Spam: mudanças entre as edições

De Pontão Nós Digitais
Ir para navegaçãoIr para pesquisar
Sem resumo de edição
Sem resumo de edição
Linha 13: Linha 13:
remove o conteúdo de mw_categorylinks
remove o conteúdo de mw_categorylinks
<source lang="mysql">
<source lang="mysql">
delete from mw_categorylinks  
delete
from mw_categorylinks
where cl_from in (select pg.page_id  
where cl_from in (select pg.page_id  
from mw_page pg where pg.page_id in (select rev_page from `mw_revision` where `rev_user`  
  from mw_page pg  
not in(select ug_user from mw_user_groups) and `rev_timestamp` in (select MIN(`rev_timestamp`) from `mw_revision` group by rev_page)));
  where pg.page_id in (select rev_page
  from `mw_revision`
  where `rev_user` not in(select ug_user from mw_user_groups)
  and `rev_timestamp` in (select MIN(`rev_timestamp`) from `mw_revision` group by rev_page)
  )
)
</source>
</source>


------mw_pagelinks
------mw_pagelinks
delete from mw_pagelinks where pl_from in (select pg.page_id from mw_page pg where pg.page_id in (select rev_page from `mw_revision` where `rev_user` not in(select ug_user from mw_user_groups) and `rev_timestamp` in (select MIN(`rev_timestamp`) from `mw_revision` group by rev_page)));
delete
from mw_pagelinks
where pl_from in (select pg.page_id  
from mw_page pg  
where pg.page_id in (select rev_page
  from `mw_revision`
  where `rev_user` not in(select ug_user from mw_user_groups)
  and `rev_timestamp` in (select MIN(`rev_timestamp`) from `mw_revision` group by rev_page)
  )
 
)




    
    
  ------mw_externallinks
  ------mw_externallinks
delete from mw_externallinks where el_from in (select pg.page_id from mw_page pg where pg.page_id in (select rev_page from `mw_revision` where `rev_user` not in(select ug_user from mw_user_groups) and `rev_timestamp` in (select MIN(`rev_timestamp`) from `mw_revision` group by rev_page)));
delete
from mw_externallinks
where el_from in (select pg.page_id  
from mw_page pg  
where pg.page_id in (select rev_page
  from `mw_revision`
  where `rev_user` not in(select ug_user from mw_user_groups)
  and `rev_timestamp` in (select MIN(`rev_timestamp`) from `mw_revision` group by rev_page)
  )
)
   
   
   
   
  ------mw_imagelinks
  ------mw_imagelinks
delete from mw_imagelinks where il_from in (select pg.page_id from mw_page pg where pg.page_id in(select rev_page from `mw_revision` where `rev_user` not in(select ug_user from mw_user_groups) and `rev_timestamp` in (select MIN(`rev_timestamp`) from `mw_revision` group by rev_page)));
delete
from mw_imagelinks
where il_from in (select pg.page_id  
from mw_page pg  
where pg.page_id in (select rev_page
  from `mw_revision`
  where `rev_user` not in(select ug_user from mw_user_groups)
  and `rev_timestamp` in (select MIN(`rev_timestamp`) from `mw_revision` group by rev_page)
  )
)




-----mw_user
-----mw_user
delete from mw_user where user_id not in(select ug_user from mw_user_groups);
delete
from mw_user  
where user_id not in(select ug_user from mw_user_groups)
 




-----mw_recentchanges
-----mw_recentchanges
delete from mw_recentchanges where rc_user not in(select ug_user from mw_user_groups);
delete
from mw_recentchanges  
where rc_user not in(select ug_user from mw_user_groups)




-----mw_oldimage
-----mw_oldimage
delete from mw_oldimage where oi_user not in(select ug_user from mw_user_groups);
delete
from mw_oldimage  
where oi_user not in(select ug_user from mw_user_groups)




-----mw_logging
-----mw_logging
delete from mw_logging where log_user not in(select ug_user from mw_user_groups);
delete
from mw_logging  
where log_user not in(select ug_user from mw_user_groups)




-----mw_image
-----mw_image
delete from mw_image where img_user not in(select ug_user from mw_user_groups);
delete
from mw_image  
where img_user not in(select ug_user from mw_user_groups)




-----mw_archive
-----mw_archive
delete from mw_archive where ar_user not in(select ug_user from mw_user_groups);
delete
from mw_archive  
where ar_user not in(select ug_user from mw_user_groups)
   
   
   
   
delete from mw_page where page_id in (select rev_page from `mw_revision` where `rev_user` not in(select ug_user from mw_user_groups) and `rev_timestamp` in (select MIN(`rev_timestamp`) from `mw_revision` group by rev_page));
delete
 
from mw_page
where page_id in (select rev_page
      from `mw_revision`
                where `rev_user` not in(select ug_user from mw_user_groups)
      and `rev_timestamp` in (select MIN(`rev_timestamp`) from `mw_revision` group by rev_page)
      )





Edição das 14h09min de 22 de agosto de 2013

O seguinte documentação funcionado da seguinte forma:

  • adicionar os usuários humanos no grupo "human"
  • Para isso vá em Páginas Especiais > Gesrior

ou pela linha de comando no MySQL

INSERT INTO mw_user_groups ( ug_user, ug_group ) VALUES ( 3, "human");

O conjunto queries usados foram:


remove o conteúdo de mw_categorylinks <source lang="mysql"> delete from mw_categorylinks where cl_from in (select pg.page_id from mw_page pg where pg.page_id in (select rev_page from `mw_revision` where `rev_user` not in(select ug_user from mw_user_groups) and `rev_timestamp` in (select MIN(`rev_timestamp`) from `mw_revision` group by rev_page) ) ) </source>



mw_pagelinks

delete from mw_pagelinks where pl_from in (select pg.page_id from mw_page pg where pg.page_id in (select rev_page from `mw_revision` where `rev_user` not in(select ug_user from mw_user_groups) and `rev_timestamp` in (select MIN(`rev_timestamp`) from `mw_revision` group by rev_page) )

)


------mw_externallinks

delete from mw_externallinks where el_from in (select pg.page_id from mw_page pg where pg.page_id in (select rev_page from `mw_revision` where `rev_user` not in(select ug_user from mw_user_groups) and `rev_timestamp` in (select MIN(`rev_timestamp`) from `mw_revision` group by rev_page) ) )


------mw_imagelinks

delete from mw_imagelinks where il_from in (select pg.page_id from mw_page pg where pg.page_id in (select rev_page from `mw_revision` where `rev_user` not in(select ug_user from mw_user_groups) and `rev_timestamp` in (select MIN(`rev_timestamp`) from `mw_revision` group by rev_page) ) )



mw_user

delete from mw_user where user_id not in(select ug_user from mw_user_groups)



mw_recentchanges

delete from mw_recentchanges where rc_user not in(select ug_user from mw_user_groups)



mw_oldimage

delete from mw_oldimage where oi_user not in(select ug_user from mw_user_groups)



mw_logging

delete from mw_logging where log_user not in(select ug_user from mw_user_groups)



mw_image

delete from mw_image where img_user not in(select ug_user from mw_user_groups)



mw_archive

delete from mw_archive where ar_user not in(select ug_user from mw_user_groups)


delete from mw_page where page_id in (select rev_page from `mw_revision` where `rev_user` not in(select ug_user from mw_user_groups) and `rev_timestamp` in (select MIN(`rev_timestamp`) from `mw_revision` group by rev_page) )


Referências