현상
참고
해당 현상은 Tibero 7.2.2 버전에서 발생했습니다.
system.vbs 수행 후 sys, syscat 계정의 비밀번호를 정상적으로 입력했음에도 불구하고, 스크립트가 더 이상 진행되지 않고 hang이 걸리는 현상이 발생합니다.
아래는 예제입니다.
C:\Tibero\tibero7\scripts>cscript //H:cscript
Microsoft (R) Windows Script Host 버전 5.812
Copyright (C) Microsoft Corporation. All rights reserved.
기본 스크립트 호스트가 이제 "cscript.exe"로 설정되었습니다.
C:\Tibero\tibero7\scripts>system.vbs
Microsoft (R) Windows Script Host 버전 5.812
Copyright (C) Microsoft Corporation. All rights reserved.
Enter SYS password:
tibero
Enter SYSCAT password:
syscat
Creating additional system index ...
Running C:\Tibero\tibero7\scripts\create_additional_system_index.sql ...
SQL
복사
그 이후 스크립트 수행을 취소한 후, 재시도할 경우 아래와 같은 오류가 발생하며 실행이 되지 않습니다.
C:\Tibero\tibero7\scripts>system.vbs(415, 9) Microsoft VBScript 런타임 오류: 사용 권한이 없습니다.
SQL
복사
원인
system.vbs 스크립트는 실행 시 %TMP% 환경변수를 참조하여 작업용 파일(tmp_log, tmp_sql)을 저장하며, 이 경로에는 %USERPROFILE%이 포함됩니다.
초기 실행 시에는 %USERPROFILE% 값을 정상적으로 인식하여 해당 경로에 파일들이 생성되지만, 사용자 폴더명이 긴 경우 (예: C:\Users\티맥스티베로기술지원팀) 내부적으로 해당 경로가 짧은 이름(예: 티맥스~1)으로 변환되어 참조됩니다.
이 과정에서 변환된 tempDir 경로를 스크립트가 제대로 인식하지 못해, SQL 파일 실행 단계에서 무한 대기 상태에 빠지게 됩니다.
같은 이유로, USERPROFILE명이 깨진 tempDir 경로에 접근하려고 하기 때문에, 재시도 시에도 Microsoft VBScript 런타임 오류: 사용 권한이 없습니다 오류가 발생하게 됩니다.
해결
system.vbs 수행 후 행이 걸린다면, tmpDir 경로에서 초기 생성된 tmp_log 파일을 확인해보고, 잘린 경로를 참조하고 있다면, %TMP% 환경 변수를 접근 가능한 경로로 변경한 후 재수행합니다.