Mediawiki - Removendo Spam: mudanças entre as edições
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 | 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)
)