테스트 사이트 - 개발 중인 베타 버전입니다

그누보드 7만개 update 쿼리 날리는데 .. 7만개면 쿼리 안들어가나요? 채택완료

요고꽁 1년 전 조회 16,224

데이터가 약 7만개 됩니다.

 

반복문으로 update 약 7만개 날립니다.

소스등 문제 없는게 확인했는데..

 

echo 로 각각 들어가는 데이터 값 별도로 찍으면 정상으로 나옵니다.

 

데이터가 DB에 특정 필드에 업데이트가 안되네요

그누보드 5.5버전대 사용중이고

PHP 7.4 사용중

MYsql 7 사용중입니다.

왜 그럴가요? ㅠㅠ 혹시 아시는분.. 있으실가요?

 

업데이트 소스코드

</p>

<p>echo $val['wr_id'] . "
";

echo "tree_data:".$tree_data."
";

echo "level:".$level."
";</p>

<p> </p>

<p>$sql = " update g5_write_plan_a set wr_9 = '$level' where wr_id = '$val[wr_id]' ";

    sql_query($sql);</p>

<p>

 

결과값

1 tree_data:67811 level:15

댓글을 작성하려면 로그인이 필요합니다.

답변 7개

7만개면 웹서버 timeout 날수도 있겠네요.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

timeout 문제같네요.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

1년 전
$sql = " update g5_write_plan_a set wr_9 = '{$level}' where wr_id = '{$val['wr_id']}' ";
    sql_query($sql);</code></pre>

<p><code>

 

코드 수정후 다시 실행해보세요. 

 

php 7.x 이면 스트링 내부에 $val[wr_id] 처럼 변수 넣을수 없습니다.

아마 오류나 경고 문구가 나올텐데,, display_errors 를 껴두신거 같네요. 켜보시면 에러가 명확하게 표시될겁니다.

 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

백업 잘 하시고 작업 하셔야되요.. 

그리고 프로시저인가 이것도 해보세요

https://mantaray.tistory.com/47

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

1년 전

디비와 php실행이 무작정 계속실행되는 것이 아니고 일정시간이 경과하면 실행이 멈추게 설정되어있습니다

7만건이면 당연히 질문처럼하면 안될 것입니다

하나씩 처리할때다 내용을 출력하는 것도 브라우저가 버벅이는 등 문제가 생길 것입니다

Ajax로 실행되게 만들고 페이지처리처럼 나누어 처리하는 방법으로 해보세요

 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

1년 전

서버 성능이나 기타 이유들로 처리할 양이 많으면 안될 수 있습니다. 한번에 안되시면 플라이님 말씀 처럼 나눠서 등록을 하셔야 할거 같습니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

플라이
1년 전

한번에 다 등록하지 마시고 중간중간 딜레이를 주며 등록시켜보세요

Db서버에 등록 제한이 있다보니 7만개를 한번에 등록시 제대로 안될수도 있습니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인