CMS/프레임워크 | XE 1.x |
---|---|
개발 언어 | PHP 7.0 |
DELETE
FROM `xe_member`
WHERE `user_name`
REGEXP '[a-z][A-Z]'
AND `nick_name`
REGEXP '[a-z][A-Z]'
약 4만건의 회원 중 3만 정도가 스패머인거같습니다.
이런쿼리로 xe_member 테이블에서 이름&닉네임이 영어로 된 회원을 삭제한다고 할때 어떤결과가 나올까요?
억울한 가입자도 일부 있겠지만 그건 무시하고
그냥 xe_member 테이블에서만 삭제하면 회원이 삭제되는 걸까요?
댓글 4
영어 뒤에 숫자도 붙어 있으니 정규식을 좀더 다듬어 보세요.^^
모두 준회원 그룹에 소속되어 있으니, 그룹 소속 내역을 관리하는 member_group_member 테이블에도 쓰레기가 엄청나게 쌓여 있을 것입니다. member 테이블만 삭제한다면 다른 쪽은 그대로 남겠죠. 회원을 삭제한 후에는 member_group_member 테이블에서 "존재하지 않는 member_srl을 참조하는" 레코드를 찾아 모두 삭제하는 쿼리도 실행해야 합니다. 포인트 내역이 남아 있다면 point 테이블도 마찬가지...
일단 xe_member 테이블에서만 먼저 삭제해도 오류가 생기거나 하진 않겠죠?
스팸은 재로그인 할 일이 거의 없기에..