/ / 거래 - 무엇입니까? 데이터베이스 트랜잭션

거래 - 무엇입니까? 데이터베이스 트랜잭션

트랜잭션은 정의 된 콜렉션입니다.데이터베이스에 액세스하거나 수정하기 위해 사용자 또는 프로그램이 수행하는 작업. 이해하기 전에 트랜잭션 -이 프로세스의 본질을 이해해야합니다. 이 프로세스의 핵심은 작업이 완전히 완료되거나 취소되어야한다는 것입니다.

각 트랜잭션 데이터베이스는 일관성있는 상태에서 다른 상태로 변환해야합니다. 이 과정에서 일관성이 위반되었을 수 있다고 가정합니다.

많은 사람들이 거래에 대해 궁금해합니다. 이것은 데이터베이스에서 수행되는 작업 단위입니다. 일반 알고리즘, 별도의 명령 또는 전체적으로 프로그램의 일부일 수 있습니다.

거래를 완료 할 수 없습니다.

거래가 완료되면 어떻게해야합니까?

그것을 완료하는 데는 두 가지 방법이 있습니다.

  • 트랜잭션이 성공적으로 완료되면 결과가 고정되고 데이터베이스가 새 확약 상태가됩니다.
  • 실행이 잘못 되었다면트랜잭션 오류가 발생하면 취소됩니다. 이 경우 데이터베이스는 원래 있던 상태로 복원되어야합니다. 이 상황을 "롤백"이라고합니다. 그러나 트랜잭션이? L 트된 경우에는 취소 할 수 없습니다. 조치가 올바르지 않은 것으로 판명되면 데이터베이스를 일관성있는 상태로 리턴 할 또 다른 트랜잭션을 수행해야합니다.
    거래 내용

트랜잭션 등록 정보

트랜잭션의 경계를 표시하려면 begin transaction, commit, roll back을 사용하는 것이 일반적입니다.

ACID 또는 트랜잭션 등록 정보는 다음과 같습니다.

  • 원자 또는 원 자성. 거래는 실행되거나 취소되어야하는 분할 할 수없는 단위입니다.
  • 조정 또는 일관성 거래의 의미는 데이터베이스가 합의 된 한 상태에서 다른 상태로 이동해야한다는 것입니다.
  • Insulativity 또는 격리. 실행되는 각 트랜잭션은 다른 트랜잭션에 종속되지 않습니다. 틈새에서 사용할 수있는 한 프로세스의 모든 결과는 다른 트랜잭션에서 볼 수 없어야합니다.
  • 기간 또는 기간. 성공적인 거래 중 달성 된 모든 결과는 후속 실패로 인해 없어지지 않습니다. 그것들은 영구적으로 데이터베이스에 저장됩니다.

트랜잭션은 변경 또는데이터베이스의 업데이트. 각 프로세스는 트랜잭션 관리자에 의해 규제되고 제어되며 자원은 자원 관리자에 의해 제어됩니다. 두 디스패처의 상호 작용이 작업의 결과를 결정합니다. 필요한 경우 트랜잭션이 차단됩니다.

 데이터베이스 트랜잭션

거래 단계

다음 단계가 구분됩니다.

  • 활성. 이 단계에서는 트랜잭션이 생성되고 리소스 관리자가 프로세스에 참여합니다.
  • 준비. 이 기간 동안 각 리소스 관리자는 작업 결과를 결정할 수 있습니다. 이니시에이터가 트랜잭션을 완료하라는 요청을 생성하면 단계가 시작됩니다. 자원 관리자가 준비 할 시간이 없으면 디스패처가 롤백을 보내야합니다. 자원 관리자는 모든 가용성 상태 정보를 기록하는 로그를 유지 관리합니다. 이는 편차가 발생하면 특정 장소에서 계속 작업 할 수 있도록하기 위해 필요합니다.
  • 고정. 이 단계의 시작은 모든 자원 관리자가 작업 준비가 된 시점에 발생합니다. 필요한 경우 트랜잭션 관리자가 작업을 완료 할 수 있습니다.

각 거래는 특정 대상이되어야합니다.요구 사항. 작동의 결과로 시스템을 올바른 상태로 가져와야합니다. 이 조건은 정전이 발생한 경우에 필요합니다.

트랜잭션 로그

작업 중에 트랜잭션 로그가 유지되고,모든 변경 사항이 기록됩니다. 정기적으로 잘려야합니다. 이러한 측정은 오버플로를 방지하는 데 도움이됩니다. 그러나 절단이 지연 될 수있는 몇 가지 이유가 있습니다.이 기간 동안 채우기를 모니터링하는 것이 특히 중요합니다. 로그의 크기를 줄이기 위해 최소한의 로깅으로 작업을 수행 할 수 있습니다.

실패 할 경우 로그는 중요한 구성 요소의 기능을 수행하여 데이터베이스를 일관된 상태로 만듭니다. 로그는 편집하거나 삭제할 수 없습니다.

거래 취소

트랜잭션 로그 사용의 이점

이렇게하면 다음과 같은 작업을 지원할 수 있습니다.

  • 개별 행동을 복원한다.
  • 완료되지 않은 트랜잭션을 복원합니다.
  • 실패 이전에 롤업 동작;
  • 복제 트랜잭션을 만듭니다.
    거래 오류

저널의 잘림은 어떻게 발생합니까?

절단 과정에서 파일의 공간이 해제되고,추가 레코드에 사용됩니다. 이 프로세스를 무시하면 전체 디스크 공간이 차지하게되고 많은 문제가 발생합니다. 이러한 상황을 피하기 위해 독립적 인 이유로 지연되는 경우를 제외하고 절단이 자동입니다.

은행 카드로 거래

거래 차단
지불을 위해 상점에 정산하기구매자는 구매자가 생각하고있는 것을 의미합니다. 거래 - 무엇이며, 무엇을 위해서입니까? 현금 인출, 계좌 보충 또는 송금과 같은 은행 카드와의 거래를 거래라고합니다. 이 개념은 소매점에서 지불 카드를 계산할 때도 사용됩니다.

은행 카드로 지불 할 때,각 고객은 현재 어떤 프로세스가 발생하고 있는지 생각합니다. 이 지식은 돈과 보안에 관한 것이기 때문에 매우 중요합니다.

그래서, 거래 - 상점에서 계산할 때 이것은 무엇입니까? 이 작업은 여러 단계를 나타내며 상호 관련이 있습니다.

프로세스의 주요 참여자는 은행 (발행자),지불 카드를 발급 한 은행 및 취득자 인 은행이 콘센트에 서비스를 제공합니다. 거래의 핵심은 취득자가 거래를 수행하기 위해 발행자로부터 허가를 받기를 원한다는 것입니다. 계산원은 단말기를 통해 카드를 전달하여 조작에 필요한 데이터와 함께 암호화 된 요청을 전송합니다. 모든 정보는 마그네틱 스트립에 포함되어 있습니다.

이 요청은 처리에 전송됩니다.센터의 업무는 데이터를 처리 한 다음 정보를 발급 은행으로 전달하는 것입니다. 그는 정보를 분석하고 자신의 데이터와 비교합니다. 불일치가 발생하지 않으면 발행사는 거래를 수행 할 수있는 권한을 발급합니다. 이 과정의 핵심은 개인 인증 코드를 할당하는 것입니다.

그 후에 만 ​​취득자가그 결과로 고객의 계좌에서 출구의 계좌로 자금이 이체됩니다. 오류가 발생하면 장치는 트랜잭션을 완료 할 수 없다고보고합니다.

이러한 데이터베이스 트랜잭션은 온라인으로 수행됩니다. 오프라인의 또 다른 유형의 조작이 가능하며 이는 imprinter가 카드의 각인을 만드는 방법으로 생산됩니다.

많은 사용자가 관심을 보입니다. 거래를 취소 할 수 있습니까? 필요한 경우, 은행은 특정 조작을 수행하여 그렇게 할 수 있습니다.

</ p>>
더 읽기 :