IBM MQ 오브젝트 이름 지정 규칙

IBM® MQ 오브젝트 이름은 최대 길이를 가지며 대소문자를 구분합니다. 모든 문자가 모든 오브젝트 유형에 대해 지원되지는 않으며, 많은 오브젝트가 이름의 고유성에 관한 규칙을 갖고 있습니다.

여러 가지 유형의 IBM MQ 오브젝트가 있으며 각 유형의 오브젝트는 별도의 오브젝트 네임스페이스에 존재하므로 모두 동일한 이름을 가질 수 있습니다. 예를 들어, 로컬 큐 및 송신자 채널은 둘 다 동일한 이름을 가질 수 있습니다. 그러나 동일한 네임스페이스에서는 한 오브젝트가 다른 오브젝트와 동일한 이름을 가질 수 없습니다. 예를 들어 로컬 큐는 모델 큐와 동일한 이름을 가질 수 없으며, 송신자 채널은 수신자 채널과 동일한 이름을 가질 수 없습니다.

다음 IBM MQ 오브젝트는 별도의 오브젝트 네임스페이스에 존재합니다.
  • 인증 정보
  • 채널
  • 클라이언트 채널
  • 리스너
  • 이름 목록
  • 프로세스
  • 서비스
  • 스토리지 클래스
  • 구독
  • 토픽

오브젝트 이름의 문자 길이

일반적으로 IBM MQ 오브젝트 이름의 길이는 최대 48자입니다. 이 규칙은 다음 오브젝트에 적용됩니다.
  • 인증 정보
  • 클러스터
  • 리스너
  • 이름 목록
  • 프로세스 정의
  • 큐 관리자
  • 서비스
  • 구독
  • 토픽
제한사항은 다음과 같습니다.
  1. [z/OS] z/OS® 시스템에서 대기열 관리자는 최대 4자 이내여야 하며 대문자와 숫자만 사용해야 합니다.
  2. 채널 오브젝트 이름 및 클라이언트 연결 채널 이름의 최대 길이는 20문자입니다. 채널에 대한 자세한 정보는 채널 정의 를 참조하십시오.
  3. 토픽 문자열은 최대 10240바이트일 수 있습니다. 모든 IBM MQ 오브젝트 이름은 대소문자를 구분합니다.
  4. 구독 이름은 최대 10240바이트일 수 있으며 공백을 포함할 수 있습니다.
  5. 스토리지 클래스 이름의 최대 길이는 8자입니다.
  6. CF 구조 이름의 최대 길이는 12자입니다.

오브젝트 이름의 문자

IBM MQ 오브젝트 이름의 올바른 문자는 다음과 같습니다.
문자 제한사항
대문자 A - Z
  • 없음
소문자 a - z
  • MQSC 스크립트에서 소문자가 포함된 이름은 작은따옴표로 묶어야 합니다. 이렇게 하면 소문자가 대문자로 변경되지 않습니다.
  • EBCDIC 카타카나를 사용하는 시스템은 오브젝트 이름에서 소문자 a- z 문자를 사용할 수 없습니다.
  • [z/OS] z/OS 시스템에서는 소문자를 사용할 때 제한이 있을 수 있습니다(예: 대기열 관리자 이름에 소문자를 포함할 수 없음).
  • [IBM i] IBM i 시스템에서 CL 명령을 사용할 때 소문자로 된 이름은 작은따옴표로 묶어야 합니다. 이렇게 하면 소문자가 대문자로 변경되지 않습니다.
숫자 0 - 9
  • 없음
마침표(.)
  • 없음
밑줄(_)
  • [UNIX, Linux, Windows, IBM i]없음
  • [z/OS]선행 또는 후행 밑줄이 있는 이름은 IBM MQ for z/OS 운영 및 제어판에서 처리할 수 없으므로 사용하지 마세요.
정방향 슬래시(/)
  • [Windows] Windows 시스템에서는 대기열 관리자 이름의 첫 번째 문자가 슬래시일 수 없습니다.
  • [IBM i] IBM i 시스템에서 CL 명령을 사용할 때 슬래시가 포함된 이름은 작은따옴표로 묶어야 합니다.
  • [z/OS]없음
퍼센트 부호(%)
  • [AIX, Linux, Windows]없음
  • [z/OS] RACF® 를 의 외부 보안 관리자로 사용하는 경우, 일반 프로파일을 사용할 때 보안 검사 대상에 포함되지 않으므로 개체 이름에 %를 사용하지 마십시오. IBM MQ for z/OS RACF
  • [IBM i] IBM i 시스템에서 CL 명령을 사용할 때 퍼센트 기호가 포함된 이름은 작은따옴표로 묶어야 합니다.
오브젝트 이름의 문자에 관한 몇 가지 규칙이 있습니다.
  1. 선두 문자 또는 임베드된 공백은 허용되지 않습니다.
  2. 자국어(NL) 문자는 허용되지 않습니다.
  3. 전체 필드 길이보다 작은 모든 이름은 오른쪽에 공백을 채울 수 있습니다. 큐 관리자가 리턴하는 모든 짧은 이름은 항상 오른쪽이 공백으로 채워집니다.

큐 이름

큐 이름은 다음 두 파트를 갖습니다.
  • 큐 관리자의 이름
  • 해당 큐 관리자에게 알려진 큐의 로컬 이름

큐 이름의 각 파트는 길이가 48자입니다.

로컬 큐를 참조하기 위해(공백 문자로 바꾸거나 선행 널 문자를 사용하여) 큐 관리자의 이름을 생략할 수 있습니다. 그러나 IBM MQ 에 의해 프로그램으로 리턴되는 모든 큐 이름은 큐 관리자의 이름을 포함합니다.

[z/OS]큐 공유 그룹의 모든 큐 관리자에게 액세스할 수 있는 공유 큐는 동일한 큐 공유 그룹에 있는 임의의 공유되지 않는 로컬 큐와 동일한 이름을 가질 수 없습니다. 이 제한은 애플리케이션이 로컬 큐를 열려고 할 때 실수로 공유 큐를 열거나 반대 상황이 발생할 가능성을 피하게 합니다. 공유 큐 및 큐 공유 그룹은 IBM MQ for z/OS에서만 사용 가능합니다.

리모트 큐를 참조하려면 프로그램이 전체 큐 이름에 큐 관리자의 이름을 포함시켜야 하거나 리모트 큐의 로컬 정의가 있어야 합니다.

애플리케이션이 큐 이름을 사용할 때 해당 이름은 로컬 큐의 이름(또는 로컬 큐에 대한 알리어스) 또는 리모트 큐의 로컬 정의의 이름일 수 있지만, 큐에서 메시지를 가져와야 하는 경우가 아니면(큐가 로컬이어야 함) 애플리케이션이 어느 것이든 알 필요는 없습니다. 애플리케이션이 큐 오브젝트를 열 때 MQOPEN 호출이 이름 해석 기능을 수행하여 후속 조작을 수행할 큐를 판별합니다. 이것의 중요성은 애플리케이션이 큐 관리자 네트워크의 특정 위치에서 정의되는 특정 큐에 대한 내장된 종속성을 갖지 않는다는 점입니다. 그러므로 시스템 관리자가 네트워크에서 큐의 위치를 변경하고 해당 정의를 변경하는 경우, 해당 큐를 사용하는 애플리케이션이 변경될 필요가 없습니다.

예약 오브젝트 이름

다음으로 시작하는 오브젝트 이름SYSTEM.큐 관리자가 정의하는 오브젝트용으로 예약됩니다. Alter, DefineReplace 명령을 사용하여 설치에 맞게 이러한 오브젝트 정의를 변경할 수 있습니다. IBM MQ 에 대해 정의된 이름은 큐 이름에 전체적으로 나열되어 있습니다.

[z/OS] IBM MQ for z/OS 에서 커플링 기능 애플리케이션 구조 이름 CSQSYSAPPL은 예약되어 있습니다.