찾다

 >  Q&A  >  본문

mysql for update 如果事务一直没有提交会不会这表数据一直锁在那里

mysql for update 锁住了一条或多条数据,或者是整个表 如果事务一直没有提交(比如服务器挂掉了)会不会这表数据一直锁在那里

迷茫迷茫2865일 전1270

모든 응답(1)나는 대답할 것이다

  • 巴扎黑

    巴扎黑2017-04-17 16:29:28

    아니요. 클라이언트 연결이 끊어지면 잠금이 자동으로 해제됩니다.

    클라이언트 1

    으아악

    클라이언트 2

    으아악

    이때 클라이언트 2의 쿼리가 중단됩니다. 클라이언트 1 commit 또는 rollback 까지. 그러나 클라이언트 1이 직접 창을 닫고 연결을 끊으면 클라이언트 2도 직접 잠금을 얻을 수 있습니다. 클라이언트 연결이 끊어지면 잠금이 자동으로 해제됨을 나타냅니다.

    그럼 질문은 클라이언트 1이 연결을 끊은 후 자동으로 연결이 되는지입니다 rollback?

    회신하다
    0
  • 취소회신하다