질문/조언질답게시판
Extra Form
PHP PHP 7.2
CMS Rhymix

게시물 100만건이 있습니다.

과거에도 스팸등으로 대량 삭제를 하려면 삭제 기능이 먹통이 되던데요.

 

첨부파일 등을 생각해서 라이믹스 삭제 프로세스를 이용해서 효과적으로 삭제할 수 있는 방법이 무엇일까요?

 

지금까지 시도한 방법

 

1. 관리자 화면에서 게시판을 통채로 삭제

 

에러 1. php 메모리 에러 발생 > 128M에서 512M로 상향

에러 2. php 30초 에러 발생

  • profile
    php 로 코드를 짜서 돌려야 하지 않을까요? 최근글 100개 정도씩 삭제하는 동작의 반복이요..
  • profile

    관리자 페이지 문서 목록을 천개쯤으로 늘린 다음에 같은 작업을 100번 반복하는게 안전할 것 같습니다.

  • profile

    1000개씩 삭제하기도 힘들 걸요?

     

    DB에서 직접 쿼리를 날리면 document만 삭제되고 연결된 데이터들은 그대로 남아서 지저분한 상태가 될 수도 있습니다. 가장 좋은 방법은 PHP로 스크립트를 짜서 getController('document')->deleteDocument(문서번호); 를 반복적으로 돌리는 건데, 이것도 웹에서 실행한다면 타임아웃을 피할 수 없고요, 가상서버나 단독서버라면 ssh에서 PHP-CLI로 실행하는 것이 가장 좋습니다. (단, root 권한으로 실행하면 안됩니다.)

  • profile
    100개씩 100번 삭제해도 10000개 삭제 되네요
    10000개를 100번 삭제하면 1000000개가 삭제 되는군요 ㅎㄷㄷ
  • profile
    위에 여러 답변들 감사합니다.
    저도 예전에는 게시물 리스트 100~500개정도 늘려서 삭제를 했었는데요..
    이건 엄두가 안나서 질문을 올렸습니다.
    기진곰님 말씀처럼 하는게 맞는거 같은데.. 이래저래 php-cli라는 방법을 찾아봐야겠습니다.
    현재는 윈도우에 amp로 구성중인 테스트 서버인데 이게 먹힐지 모르겠네요.
    언제나 힌트를 잘 주시는 기진곰님 감사합니다. ㅎㅎ