SVL_MULTI_STATEMENT_VIOLATIONS
트랜잭션 블록 제한을 위반하는 시스템에서 실행되는 모든 SQL 명령의 전체 레코드를 가져오려면 SVL_MULTI_STATEMENT_VIOLATIONS 뷰를 사용합니다.
Amazon Redshift가 트랜잭션 블록 또는 다중 문 요청 내에서 제한하는 다음 SQL 명령을 실행할 때 위반이 발생합니다.
DROP EXTERNAL TABLE
RENAME EXTERNAL TABLE
ALTER EXTERNAL TABLE
CREATE TABLESPACE
DROP TABLESPACE
REBUILDCAT
INDEXCAT
REINDEX DATABASE
참고
이 뷰에 항목이 있으면 해당 애플리케이션과 SQL 스크립트를 변경합니다. 이러한 제한된 SQL 명령의 사용을 트랜잭션 블록 외부로 이동하도록 애플리케이션 코드를 변경하는 것이 좋습니다. 추가 지원이 필요한 경우 AWS Support에 문의하세요.
SVL_MULTI_STATEMENT_VIOLATIONS는 모든 사용자에게 표시됩니다. 수퍼유저는 모든 행을 볼 수 있지만 일반 사용자는 자체 데이터만 볼 수 있습니다. 자세한 내용은 시스템 테이블 및 뷰에 있는 데이터의 가시성 단원을 참조하십시오.
이 테이블의 데이터 중 일부 또는 전부는 SYS 모니터링 뷰인 SYS_QUERY_HISTORY에서도 찾아볼 수 있습니다. SYS 모니터링 뷰의 데이터는 사용 및 이해가 더 쉽도록 형식이 지정되어 있습니다. 쿼리에 SYS 모니터링 뷰를 사용하는 것이 좋습니다.
테이블 열
열 명칭 | 데이터 유형 | 설명 |
---|---|---|
userid | 정수 | 위반을 일으킨 사용자의 ID입니다. |
데이터베이스 | character(32) | 사용자가 연결된 데이터베이스의 이름입니다. |
cmdname | character(20) | 트랜잭션 블록 또는 다중 문 요청 내에서 실행할 수 없는 명령의 이름입니다. 예를 들면 CREATE DATABASE, DROP DATABASE, ALTER TABLE APPEND, CREATE EXTERNAL TABLE, DROP EXTERNAL TABLE, RENAME EXTERNAL TABLE, ALTER EXTERNAL TABLE, CREATE LIBRARY, DROP LIBRARY, REBUILDCAT, INDEXCAT, REINDEX DATABASE, VACUUM, GRANT(외부 리소스 대상), CLUSTER, COPY, CREATE TABLESPACE 및 DROP TABLESPACE입니다. |
xid | bigint | 문과 연결된 트랜잭션 ID |
pid | 정수 | 문의 프로세스 ID입니다. |
레이블 | character(320) | 쿼리 실행에 사용되는 파일의 이름 또는 SET QUERY_GROUP 명령을 사용하여 정의되는 레이블. 쿼리가 파일 기반이 아니거나 QUERY_GROUP 파라미터가 설정되지 않은 경우, 이 필드의 값은 공백입니다. |
starttime | 타임스탬프 | 문 실행이 시작된 정확한 시간으로 초의 소수점 이하 자릿수는 6자리입니다(예: 2009-06-12 11:29:19.131358 ). |
endtime | 타임스탬프 | 문 실행이 끝난 정확한 시간으로 초의 소수점 이하 자릿수는 6자리입니다(예: 2009-06-12 11:29:19.193640 ). |
SEQUENCE | 정수 | 단일 문에 200자 이상이 포함된 경우, 해당 문에 대해 추가 행이 기록됩니다. 시퀀스 0이 첫 번째 행이고 1이 두 번째 행이 되는 방식입니다. |
type | varchar(10) | SQL 문의 형식: QUERY , DDL 또는 UTILITY . |
텍스트 | character(200) | 200자씩 증가하는 SQL 텍스트. 이 필드에는 백슬래시(\\ ) 및 줄 바꿈(\n ) 등의 특수 문자가 포함될 수 있습니다. |
샘플 쿼리
다음 쿼리는 위반이 있는 여러 문을 반환합니다.
select * from svl_multi_statement_violations order by starttime asc; userid | database | cmdname | xid | pid | label | starttime | endtime | sequence | type | text ============================================================================================================================== 1 | dev | CREATE DATABASE | 1034 | 5729 |label1 | ********* | ******* | 0 | DDL | create table c(b int); 1 | dev | CREATE DATABASE | 1034 | 5729 |label1 | ********* | ******* | 0 | UTILITY | create database b; 1 | dev | CREATE DATABASE | 1034 | 5729 |label1 | ********* | ******* | 0 | UTILITY | COMMIT ...