start_transaction 명령-이중 제어 트랜잭션 기록 시작
AC 환경의 UNIX 호스트에 해당
cminder12901kr
AC 환경의 UNIX 호스트에 해당
start_transaction 및 end_transaction 명령은 하나 이상의 명령을 사용하여 이중 제어 PMDB 프로세스에 대해 처리되지 않은 트랜잭션을 포함하는 파일을 만듭니다. 트랜잭션에서 명령을 입력한 관리자(ADMIN 특성을 가진 사용자)를 Maker라고 부릅니다. PMDB에서 명령을 실행하기 전에 Checker(Maker가
아닌
관리자)가 명령을 허가해야 합니다.트랜잭션을 처리할 수 있으려면 그 전에 Checker가 트랜잭션을 잠가야 합니다. Checker에 의해 트랜잭션이 잠기기 전까지 Marker는 트랜잭션을 검색하거나, 명령을 변경하거나, 트랜잭션을 삭제할 수 있습니다. 자세한 내용은
참조 안내서
의 sepmd 유틸리티를 참조하십시오. Maker가 end_transaction 명령을 입력하면 트랜잭션은 고유한 id 번호를 수신합니다. Maker가 나중에 이 트랜잭션을 편집하거나 검색할 경우 start_transaction 명령에서 트랜잭션 이름 다음에 이 식별 번호를 붙여야 합니다. Maker가 트랜잭션을 수신할 때 Maker의 이름, 트랜잭션의 ID 번호 및 간단한 설명이 표시됩니다(Maker가 transactionName
매개 변수에 설명을 입력한 경우).Maker는 다른 Maker의 트랜잭션을 변경할 수 없습니다. 트랜잭션에 사용된 개체는 명령이 처리될 때까지 다른 트랜잭션에서 다른 Maker가 사용할 수 없습니다.
처리되지 않은 각 트랜잭션은 Checker가 처리할 때까지 별개의 파일에 유지됩니다. Checker는 트랜잭션을 허가하거나 거부할 수 있습니다. 트랜잭션이 인증되는 경우 명령이 실행되고 PMDB는 이에 따라 변경됩니다. Checker가 트랜잭션을 거부하는 경우 명령은 삭제되고 PMDB는 변경되지 않습니다.
Maker의 작업 끝에 end_transaction 명령을 입력하면 트랜잭션의 숫자 id가 표시됩니다. 명령은 다음과 같은 이유로 인해 실패할 수 있습니다.
- 명령이 아직 처리되지 않은 다른 트랜잭션에 사용된 개체를 참조하는 경우
- 명령이 Maker와 관련된 경우(자기 자신을 변경할 수 없음)
- 명령에 잘못된 구문이 포함된 경우
- 명령이 존재하지 않는 개체를 참조할 경우(이 경우 경고 메시지가 나타남)
- ADMIN 특성을 가진 경우 start_transaction 및 end_transaction 명령을 실행할 수 있습니다.
- start_transaction 및 end_transaction 명령을 호출하기 전에 hosts 명령을 실행해야 하므로 hosts 명령을 사용할 수 있는 권한이 있어야 합니다.
참고:
이중 제어에 대한 자세한 내용은 UNIX용 끝점 관리 안내서
를 참조하십시오.참고:
- start_transaction 및 end_transaction 명령을 호출하기 전에 hosts 명령을 실행해야 하며 PMDB의 이름은 maker여야 합니다.
- start_transaction 명령과 end_transaction 명령이 실행되려면 pmd.ini 파일과 seos.ini 파일의 [pmd] 섹션에 있는 is_maker_checker 토큰이 yes로 설정되어야 합니다.
이 명령의 형식은 다음과 같습니다.
start_transaction transactionName [transactionId] . . . end_transaction
- transactionName트랜잭션의 이름 또는 설명을 지정합니다. 최대 256자의 영숫자를 입력할 수 있습니다.
- transactionId트랜잭션을 만들 때 부여되는 고유한 번호를 지정합니다. 이 숫자 ID는 트랜잭션을 만들 때 자동으로 표시됩니다. 동일한 트랜잭션을 업데이트할 때 이 ID 번호를 지정해야 합니다.
예
- Maker Sally가 사용자 Anne을 PMDB에 추가하고 시스템 액세스를 주중 오전 8:00부터 오후 8:00 사이로 제한하려고 합니다. 그런 다음 Sally는 tty30 터미널에 대한 기본 액세스 권한을 읽기 전용으로 변경하려고 합니다. Sally는 이 트랜잭션 이름을 general로 지정합니다.
- Maker는 ADMIN 특성을 가집니다.
Sally가 end_transaction 명령을 입력하면 ID 번호(예: 7)가 트랜잭션에 할당됩니다.hosts maker@ start_transaction general newusr anne (days(weekdays)time(0800:2000)) chres TERMINAL tty30 defaccess(read) end_transaction - Maker Sally는 FINANCIAL 범주를 사용자 Anne에 추가하려고 합니다. Sally는 같은 날짜에 사용자 Anne 레코드를 먼저 추가했으며 명령은 아직까지 PDDB에서 처리 또는 구현되지 않습니다.
- Maker는 ADMIN 특성을 가집니다.
hosts maker@ start_transaction general 7 chusr anne category(FINANCIAL) end_transaction