2012-10-24 3 views
4

현재 예상보다 훨씬 오래 걸리는 DELETE 쿼리를 실행하고 있습니다 (이미 10 시간!). 나는 phpmyadmin 프로세스를 통해 그것을 죽이고 싶지만 무슨 일이 생길지 염려하고있다. 롤백하면 자동으로 시간도 많이 걸립니까? 현재 쿼리 상태는 "업데이트 중"입니다.거대한 MySQL InnoDb DELETE 쿼리를 죽이면 어떻게됩니까?

+0

검색어가 현재있는 단계에 따라 다릅니다. – favoretti

+0

@favoretti "업데이트 중"단계입니다 (프로세스 상태 열에 따라) – Noam

+3

10 시간이 오래 걸리 겠지만, 지금은 커밋 된 것으로 보입니다. * –

답변

2

검색어가 현재있는 단계에 따라 다릅니다. 그러나 일반적으로 롤백에는 거의 동일한 시간이 걸리고 때로는 원래 작업보다 오래 걸립니다.

포인트 2 당 this document인데 실제로는 권장하지 않습니다.

또한

, 그것은 삭제/업데이트 쿼리와 아주 불쾌한 버그가 귀하의 MySQL 버전을 확인에 따라 몇 가지 버전으로 롤백해야 this article

다시 시작/롤백 재개로 도움이되지 않습니다 MySQL의 프로세스를 죽이고 재시작시.

+0

롤백을하지 않는 것에 대해 걱정하지 않지만 쿼리를 완료하는 데 같은 시간이 걸리지 않도록하십시오. 어떤 추천? 다시 시작하면 어떻게됩니까? – Noam

+0

내 대답 업데이트 : – favoretti

+0

롤백을 삭제할 수 없습니까? 하지만 아무것도 영원히 기다리고 있니? 그것은 무언가 붙어있는 것처럼 떨어졌습니다. ... – Noam

1

엄지 손가락의 규칙은 다음과 같습니다

그냥 자체로 롤백하고 심지어 다시 시작한 후에 다시 시작하지만 더 나쁜 것으로 DB를 를 다시 시작하는 방법에 대한 생각하지 않는다하게 당신의 DB는 한편 액세스 할 수 없습니다입니다 .

예 대용량 데이터 (수백만 행)의 롤백은 커밋 작업보다 상당히 느리고 병렬 InnoDB 커밋이 동일한 데이터베이스에서 발생하는 경우 더욱 느립니다.