![]() |
이제는 H2용 big integer/시간대 데이터베이스 마이그레이션 스크립트가 지원되지 않습니다. 이러한 마이그레이션 스크립트는 지원되는 다른 데이터베이스에 대해 자세히 설명되어 있습니다. 기존 H2 데이터베이스가 있고 시간대를 수정해야 하는 경우 PostgreSQL 또는 MS SQL과 같은 지원되는 데이터베이스로 마이그레이션해야 합니다. 시간대를 수정하지 않고 응용 프로그램이 작동하는 경우 H2의 최신 ThingWorx 버전으로 업그레이드할 수 있습니다. 설명한 대로 ThingWorx 서버 시간대 설정 단원을 건너뜁니다.
|
![]() | ThingWorx 9.1은 RHEL 8.2에서만 지원됩니다. |
![]() | 현재 사용자에게 쓰기 권한이 있는 폴더에서 ThingWorx 콘텐츠를 다운로드하고 추출합니다. 업데이트 스크립트가 프로세스의 일부 파일을 생성하기 때문에 쓰기 권한이 필요합니다. |
![]() | Java 버전을 업그레이드해야 하는 경우 Java를 업그레이드하기 전에 ThingWorx 업그레이드를 수행합니다. |
![]() | 그렇게 하지 않으면 업그레이드가 실패하고 이전 버전을 다시 배포해야 하며(스키마 업데이트가 수행된 경우 데이터베이스를 롤백/복원해야 함) 누락된 색인 값을 추가하거나 데이터 테이블에서 사용자 정의 색인을 제거한 다음 업그레이드를 수행해야 합니다. |
![]() | 이 단원의 단계는 ThingWorx의 InfluxDB 1.7.x(ThingWorx 8.5.x 또는 9.0.x의 경우)를 InfluxDB 1.8.x(ThingWorx 9.1.x 또는 9.2.x의 경우)로 업그레이드하는 경우에만 필요합니다. |
![]() | ThingWorx를 시작할 때 validation.properties 파일이 작성됩니다. 수행한 변경 사항을 유지하려면 파일을 ThingworxStorage 디렉터리 외부에 저장한 다음 계속해서 esapi 디렉터리를 제거합니다. ThingWorx를 시작할 때 파일이 재작성되며 자동으로 생성된 validation.properties 파일에 사용자 정의 regex를 다시 추가할 수 있습니다. 자세한 내용은 이 항목을 참조하십시오. |
![]() | 이 단원의 1단계만 모든 업그레이드에 필요합니다. ThingWorx 8.4.x 또는 8.5.x --> 9.0.x, 9.1.x 또는 9.2.x에서 업그레이드하는 경우 이 단원의 나머지 부분에 나오는 단계를 수행합니다. ThingWorx 9.0.x 또는 9.1.x --> 9.1.x 또는 9.2.x에서 업그레이드 하는 경우 이 단원의 나머지 단계를 건너뜁니다. |
![]() | 9.1에는 스키마 업데이트가 없으므로 thingworxPostgresSchemaUpdate9.0-to-9.1.sh 스크립트를 실행할 필요가 없습니다. 완결성을 위해 이 스크립트가 update 폴더에 포함되어 있지만 이 스크립트는 비어 있으며 자동 업그레이드 프로세스를 사용하는 사용자만을 위한 것입니다. |
![]() | 이 단원의 나머지 단계는 ThingWorx 8.4.x 또는 8.5.x에서 9.0.x, 9.1.x 또는 9.2.x로 업그레이드하는 경우에만 수행해야 합니다. ThingWorx 9.0.x에서 9.1.x 또는 9.2.x로 업그레이드 하는 경우 이 단원의 나머지 단계를 건너뜁니다. |
![]() | 이미 UTC에서 ThingWorx를 실행 중인 경우에도 big integer 변경을 위해 마이그레이션을 실행해야 하지만 sourceTZ 및 targetTZ 매개 변수(아래 단계에 나오는 일부 스크립트에서 사용 가능)에 모두 UTC 값을 제공할 수 있습니다. |
![]() | 아래의 데이터 마이그레이션 스크립트에 대해 시간대를 지정할 때 지정된 시간대 이름은 pg_timezone_names() 스크립트로 표시되는 공식 이름 중 하나와 정확히 일치해야 합니다. |
![]() | 스크립트를 실행하기 전에 해당 스크립트를 텍스트 편집기에서 열어 해당 기본 환경 값(예: 서버, 포트, 시간대 등)이 올바르며 사용자의 환경에 적합한지 확인합니다. 스크립트 내에 정의된 기본값이 사용자 환경에 적절하지 않은 것으로 보이는 경우 하나 이상의 명령줄 인수를 지정하여 스크립트를 실행할 때 기본값을 무시합니다. |
![]() | 사용법: thingworxPostgresModelTablesDataUpdate.sh [-h <server>] [-p <port>] [-d <Thingworx database name>] [-u <thingworx database username>] [-r <password>] [-m <azure managed instance name>] [-sourceTZ <source timezone>] [-targetTZ <target timezone>] 예: thingworxPostgresModelTablesDataUpdate.sh -sourceTZ US/Eastern -targetTZ Etc/UTC |
![]() | 성능 상의 이유로 이러한 스크립트는 테이블에 원래 데이터의 복사본을 만들지 않습니다. 대신 기존 테이블의 이름을 "<원래 테이블 이름>"에서 "<원래 테이블 이름>_backup"으로 바꿉니다. 이를 통해 데이터를 실제로 복사하는 긴 시간이 걸리는 프로세스가 사라집니다. 기존 테이블의 이름이 바뀌고 백업 테이블이 되면 원래 이름을 사용하여 새 테이블이 작성됩니다. 새 테이블은 비어 있으며 원래 테이블과 이름이 같기 때문에 원래 테이블과 동일한 용도로 사용됩니다. 새 테이블은 이후 단계에서 마이그레이션된 데이터로 채워집니다. |
![]() | 스크립트를 실행하기 전에 해당 스크립트를 텍스트 편집기에서 열어 해당 기본 환경 값(예: 서버, 포트, 시간대 등)이 올바르며 사용자의 환경에 적합한지 확인합니다. 스크립트 내에 정의된 기본값이 사용자 환경에 적절하지 않은 것으로 보이는 경우 하나 이상의 명령줄 인수를 지정하여 스크립트를 실행할 때 기본값을 무시합니다. |
![]() | 사용법: thingworxPostgresDataTableDataUpdate.sh [-h <server>] [-p <port>] [-d <thingworx database name>] [-u <thingworx database username>] [-r <password>] [-m <azure managed instance name>] [-sourceTZ <source timezone>] [-targetTZ <target timezone>] [-chunkSize <chunk size>] 예: thingworxPostgresDataTablesDataUpdate.sh -sourceTZ US/Eastern -targetTZ Etc/UTC |
![]() | 스크립트를 실행하기 전에 해당 스크립트를 텍스트 편집기에서 열어 해당 기본 환경 값(예: 서버, 포트, 시간대 등)이 올바르며 사용자의 환경에 적합한지 확인합니다. 스크립트 내에 정의된 기본값이 사용자 환경에 적절하지 않은 것으로 보이는 경우 하나 이상의 명령줄 인수를 지정하여 스크립트를 실행할 때 기본값을 무시합니다. |
![]() | 사용법: thingworxPostgresStreamDataUpdate.sh [-h <server>] [-p <port>] [-d <thingworx database name>] [-u <thingworx database username>] [-r <password>] [-m <azure managed instance name>] [-sourceTZ <source timezone>] [-targetTZ <target timezone>] [-chunkSize <chunk size>] thingworxPostgresValueStreamDataUpdate.sh [-h <server>] [-p <port>] [-d <thingworx database name>] [-u <thingworx database username>] [-r <password>] [-m <azure managed instance name>] [-sourceTZ <source timezone>] [-targetTZ <target timezone>] [-chunkSize <chunk size>] 예: thingworxPostgresStreamDataUpdate.sh -sourceTz US/Eastern -targetTZ Etc/UTC -chunkSize 5000 thingworxPostgresValueStreamDataUpdate.sh -sourceTz US/Eastern -targetTZ Etc/UTC -chunkSize 5000 |
![]() | 이 스크립트는 업그레이드 프로세스 중 생성된 임시 데이터베이스 객체에 대한 정리를 수행하지만 이전 단계에서 작성된 백업 테이블을 삭제하거나 백업 테이블의 데이터를 수정하지 *않습니다*. 이는 의도된 동작이며 데이터를 실수로 삭제할 수 없도록 합니다. 백업 테이블을 삭제하려면 수동으로 삭제해야 합니다. |
![]() | ThingWorx 데이터베이스에 대해 다음 명령을 실행해야 합니다. |
![]() | 이 단원의 1단계만 모든 업그레이드에 필요합니다. ThingWorx 8.4.x 또는 8.5.x --> 9.0.x, 9.1.x 또는 9.2.x에서 업그레이드하는 경우 이 단원의 나머지 부분에 나오는 단계를 수행합니다. ThingWorx 9.0.x 또는 9.1.x --> 9.1.x 또는 9.2.x에서 업그레이드 하는 경우 이 단원의 나머지 단계를 건너뜁니다. |
![]() | 9.1에는 스키마 변경 사항이 없으므로 thingworxMssqlSchemaUpdate9.0-to-9.1.sh 스크립트를 실행할 필요가 없습니다. 완결성을 위해 이 스크립트가 update 폴더에 포함되어 있지만 이 스크립트는 비어 있으며 자동 업그레이드 프로세스를 사용하는 사용자만을 위한 것입니다. |
![]() | 이 단원의 나머지 단계는 ThingWorx 8.4.x 또는 8.5.x에서 9.0.x, 9.1.x 또는 9.2.x로 업그레이드하는 경우에만 수행해야 합니다. ThingWorx 9.0.x에서 9.1.x 또는 9.2.x로 업그레이드 하는 경우 이 단원의 나머지 단계를 건너뜁니다. |
![]() | 이미 UTC에서 ThingWorx를 실행 중인 경우에도 big integer 변경을 위해 마이그레이션을 실행해야 하지만 sourceTZ 및 targetTZ 매개 변수(아래 단계에 나오는 일부 스크립트에서 사용 가능)에 모두 UTC 값을 제공할 수 있습니다. |
![]() | 스크립트를 실행하기 전에 해당 스크립트를 텍스트 편집기에서 열어 해당 기본 환경 값(예: 서버, 포트, 시간대 등)이 올바르며 사용자의 환경에 적합한지 확인합니다. 스크립트 내에 정의된 기본값이 사용자 환경에 적절하지 않은 것으로 보이는 경우 하나 이상의 명령줄 인수를 지정하여 스크립트를 실행할 때 기본값을 무시합니다. |
![]() | 사용법: thingworxMssqlModelTablesDataUpdate.sh [-h <server>] [-i <server-instance>] [-p <port>] [-r <password>] [-l <login-name>] [-d <thingworx-database-name>] [-sourceTZ <source-timezone>] [-targetTZ <target-timezone>] 예: thingworxMssqlModelTablesDataUpdate.sh -sourceTZ "Eastern Standard Time" -targetTZ UTC |
![]() | 성능 상의 이유로 이러한 스크립트는 테이블에 원래 데이터의 복사본을 만들지 않습니다. 대신 기존 테이블의 이름을 "<원래 테이블 이름>"에서 "<원래 테이블 이름>_backup"으로 바꿉니다. 이를 통해 데이터를 실제로 복사하는 긴 시간이 걸리는 프로세스가 사라집니다. 기존 테이블의 이름이 바뀌고 백업 테이블이 되면 원래 이름을 사용하여 새 테이블이 작성됩니다. 새 테이블은 비어 있으며 원래 테이블과 이름이 같기 때문에 원래 테이블과 동일한 용도로 사용됩니다. 새 테이블은 이후 단계에서 마이그레이션된 데이터로 채워집니다. |
![]() | 스크립트를 실행하기 전에 해당 스크립트를 텍스트 편집기에서 열어 해당 기본 환경 값(예: 서버, 포트, 시간대 등)이 올바르며 사용자의 환경에 적합한지 확인합니다. 스크립트 내에 정의된 기본값이 사용자 환경에 적절하지 않은 것으로 보이는 경우 하나 이상의 명령줄 인수를 지정하여 스크립트를 실행할 때 기본값을 무시합니다. |
![]() | 사용법: thingworxMssqlDataTableDataUpdate.sh [-h <server>] [-i <server-instance>] [-p <port>] [-r <password>] [-l <login-name>] [-d <thingworx-database-name>] [-sourceTZ <source-timezone>] [-targetTZ <target-timezone>] [-chunkSize <chunk-size>] 예: thingworxMssqlDataTableDataUpdate.sh -sourceTZ "Eastern Standard Time" -targetTZ UTC -chunkSize 5000 |
![]() | 스크립트를 실행하기 전에 해당 스크립트를 텍스트 편집기에서 열어 해당 기본 환경 값(예: 서버, 포트, 시간대 등)이 올바르며 사용자의 환경에 적합한지 확인합니다. 스크립트 내에 정의된 기본값이 사용자 환경에 적절하지 않은 것으로 보이는 경우 하나 이상의 명령줄 인수를 지정하여 스크립트를 실행할 때 기본값을 무시합니다. |
![]() | 사용법: thingworxMssqlStreamDataUpdate.sh [-h <server>] [-i <server-instance>] [-p <port>] [-r <password>] [-l <login-name>] [-d <thingworx-database-name>] [-sourceTZ <source-timezone>] [-targetTZ <target-timezone>] [-chunkSize <chunk-size>] thingworxMssqlValueStreamDataUpdate.sh [-h <server>] [-i <server-instance>] [-p <port>] [-r <password>] [-l <login-name>] [-d <thingworx-database-name>] [-sourceTZ <source-timezone>] [-targetTZ <target-timezone>] [-chunkSize <chunk-size>] 예: thingworxMssqlStreamDataUpdate.sh -sourceTZ "Eastern Standard Time" -targetTZ UTC -chunkSize 5000 thingworxMssqlValueStreamDataUpdate.sh -sourceTZ "Eastern Standard Time" -targetTZ UTC -chunkSize 5000 |
![]() | 이 스크립트는 업그레이드 프로세스 중 생성된 임시 데이터베이스 객체에 대한 정리를 수행하지만 이전 단계에서 작성된 백업 테이블을 삭제하거나 백업 테이블의 데이터를 수정하지 *않습니다*. 이는 의도된 동작이며 데이터를 실수로 삭제할 수 없도록 합니다. 백업 테이블을 삭제하려면 수동으로 삭제해야 합니다. |
![]() | 이 단원의 1단계만 모든 업그레이드에 필요합니다. ThingWorx 8.4.x 또는 8.5.x --> 9.0.x, 9.1.x 또는 9.2.x에서 업그레이드하는 경우 이 단원의 나머지 부분에 나오는 단계를 수행합니다. ThingWorx 9.0.x 또는 9.1.x --> 9.1.x 또는 9.2.x에서 업그레이드 하는 경우 이 단원의 나머지 단계를 건너뜁니다. |
![]() | 플랫폼에 존재하는 권한 수는 업그레이드 완료 시간에 영향을 줄 수 있습니다. 권한이 많을수록 업그레이드 완료 시간이 늘어날 수 있습니다. |
![]() | 9.1에는 스키마 업데이트가 없으므로 thingworxAzureSchemaUpdate9.0-to-9.1.sh 스크립트를 실행할 필요가 없습니다. 완결성을 위해 이 스크립트가 update 폴더에 포함되어 있지만 이 스크립트는 비어 있으며 자동 업그레이드 프로세스를 사용하는 사용자만을 위한 것입니다. |
![]() | 사용법: ./thingworxAzureSchemaUpdate8.4-to-8.5.sh -d ^database^ -h ^server^ -l ^username^ [-i ^serverInstance^] [-p ^port^] [-o ^option^] 예: ./thingworxAzureSchemaUpdate8.4-to-8.5.sh -d thingworx -h test.sqldatabase.net -l sqlAdmin |
![]() | 이미 UTC에서 ThingWorx를 실행 중인 경우에도 big integer 변경을 위해 마이그레이션을 실행해야 하지만 sourceTZ 및 targetTZ 매개 변수(아래 단계에 나오는 일부 스크립트에서 사용 가능)에 모두 UTC 값을 제공할 수 있습니다. |
![]() | 스크립트를 실행하기 전에 해당 스크립트를 텍스트 편집기에서 열어 해당 기본 환경 값(예: 서버, 포트, 시간대 등)이 올바르며 사용자의 환경에 적합한지 확인합니다. 스크립트 내에 정의된 기본값이 사용자 환경에 적절하지 않은 것으로 보이는 경우 하나 이상의 명령줄 인수를 지정하여 스크립트를 실행할 때 기본값을 무시합니다. |
![]() | 사용법: thingworxAzureModelTablesDataUpdate.sh [-d database] [-h server] [-l loginname] [-i serverinstance] [-r password] [-p port] [-sourceTZ source-timezone] [-targetTZ target-timezone] [-chunkSize chunk-size] 예: thingworxAzureModelTablesDataUpdate.sh -sourceTZ "Eastern Standard Time" -targetTZ UTC -chunkSize 5000 |
![]() | 성능 상의 이유로 이러한 스크립트는 테이블에 원래 데이터의 복사본을 만들지 않습니다. 대신 기존 테이블의 이름을 "<원래 테이블 이름>"에서 "<원래 테이블 이름>_backup"으로 바꿉니다. 이를 통해 데이터를 실제로 복사하는 긴 시간이 걸리는 프로세스가 사라집니다. 기존 테이블의 이름이 바뀌고 백업 테이블이 되면 원래 이름을 사용하여 새 테이블이 작성됩니다. 새 테이블은 비어 있으며 원래 테이블과 이름이 같기 때문에 원래 테이블과 동일한 용도로 사용됩니다. 새 테이블은 이후 단계에서 마이그레이션된 데이터로 채워집니다. |
![]() | 데이터 테이블 스크립트를 실행하면 다음과 같은 예상 경고가 표시됩니다. Warning! The maximum key length for a clustered index is 900 bytes. The index 'data_table_indexes_pkey' has maximum length of 902 bytes. For some combination of large values, the insert/update operation will fail. |
![]() | 스크립트를 실행하기 전에 해당 스크립트를 텍스트 편집기에서 열어 해당 기본 환경 값(예: 서버, 포트, 시간대 등)이 올바르며 사용자의 환경에 적합한지 확인합니다. 스크립트 내에 정의된 기본값이 사용자 환경에 적절하지 않은 것으로 보이는 경우 하나 이상의 명령줄 인수를 지정하여 스크립트를 실행할 때 기본값을 무시합니다. |
![]() | 사용법: thingworxAzureDataTableDataUpdate.sh [-d database] [-h server] [-l loginname] [-i serverinstance] [-r password] [-p port] [-sourceTZ source-timezone] [-targetTZ target-timezone] [-chunkSize chunk-size] 예: thingworxAzureDataTableDataUpdate.sh -sourceTZ "Eastern Standard Time" -targetTZ UTC -chunkSize 5000 |
![]() | 스크립트를 실행하기 전에 해당 스크립트를 텍스트 편집기에서 열어 해당 기본 환경 값(예: 서버, 포트, 시간대 등)이 올바르며 사용자의 환경에 적합한지 확인합니다. 스크립트 내에 정의된 기본값이 사용자 환경에 적절하지 않은 것으로 보이는 경우 하나 이상의 명령줄 인수를 지정하여 스크립트를 실행할 때 기본값을 무시합니다. |
![]() | 사용법: thingworxAzureStreamDataUpdate.sh [-d database] [-h server] [-l loginname] [-i serverinstance] [-r password] [-p port] [-sourceTZ source-timezone] [-targetTZ target-timezone] [-chunkSize chunk-size] thingworxAzureValueStreamDataUpdate.sh [-d database] [-h server] [-l loginname] [-i serverinstance] [-r password] [-p port] [-sourceTZ source-timezone] [-targetTZ target-timezone] [-chunkSize chunk-size] 예: thingworxAzureStreamDataUpdate.sh -sourceTZ "Eastern Standard Time" -targetTZ UTC -chunkSize 5000 thingworxAzureValueStreamDataUpdate.sh -sourceTZ "Eastern Standard Time" -targetTZ UTC -chunkSize 5000 |
![]() | 이 스크립트는 업그레이드 프로세스 중 생성된 임시 데이터베이스 객체에 대한 정리를 수행하지만 이전 단계에서 작성된 백업 테이블을 삭제하거나 백업 테이블의 데이터를 수정하지 *않습니다*. 이는 의도된 동작이며 데이터를 실수로 삭제할 수 없도록 합니다. 백업 테이블을 삭제하려면 수동으로 삭제해야 합니다. |
![]() | Java 11은 ThingWorx 9.2.0 이상에 필요합니다. 자세한 내용은 시스템 요구사항을 참조하십시오. |
![]() | 이 단원의 단계는 ThingWorx의 InfluxDB 1.7.x(ThingWorx 8.5.x 또는 9.0.x의 경우)를 InfluxDB 1.8.x(ThingWorx 9.1.x 또는 9.2.x의 경우)로 업그레이드하는 경우에만 필요합니다. |
응용 프로그램 로그 오류 | 해결 방법 |
---|---|
Error in copying permissions: Problems migrating database | 이 마이그레이션 오류는 MSSQL 업그레이드에 대해 볼 수 있으며, 런타임 권한이 구성된 마이그레이션된 서비스, 속성 또는 이벤트 이름이 있으며 해당 이름이 256자를 초과하는 경우에 표시됩니다. 이 오류를 해결하려면 모든 서비스, 속성 및 이벤트 이름을 256자 미만으로 제한합니다. |
[L: ERROR] [O: c.t.p.m.BaseReportingMigrator] [I: ] [U: SuperUser] [S: ] [T: localhost-startStop-1] Thing: <Name of Thing>, has a property which conflicts with one of the following system properties: isReporting,reportingLastChange,reportingLastEvaluation. Please refer to the ThingWorx Platform 8.4 documentation on how to resolve this problem. | ThingWorx Platform 8.4에 추가된 사물 존재 기능의 일부로, 다음 속성이 보고 가능 사물 형태에 추가되었으며 이 형태를 구현하는 사물에 대한 현재 상태 평가의 일부로 사용됩니다. • isReporting • reportingLastChange • reportingLastEvaluation 위의 속성 이름 중 하나가 사물, 사물 템플릿 또는 사물 형태에 이전에 있었던 경우 플랫폼을 시작할 때 응용 프로그램 로그에 다음 오류가 표시됩니다. 이 문제를 해결하려면 영향을 받는 각 엔티티에 대해 충돌하는 속성을 제거하고 연결된 엔티티를 이 변경 사항에 맞게 업데이트해야 합니다(예: 매쉬업 또는 서비스). 이 업데이트가 없으면 연결된 사물이 보고 상태를 올바르게 표시할 수 없으며 업데이트/저장될 수 없습니다. 이러한 엔티티가 올바르게 업데이트되면 플랫폼 관련 보고 속성이 표시되고 장치가 연결되고 통신 중인지 여부를 평가하는 데 사용됩니다. |
[L: ERROR] [O: c.t.p.m.BaseReportingMigrator] [I: ] [U: SuperUser] [S: ] [T: localhost-startStop-1] ThingTempate: <Name of ThingTemplate>, has a property which conflicts with one of the following system properties: isReporting,reportingLastChange,reportingLastEvaluation. Please refer to the ThingWorx Platform 8.4 documentation on how to resolve this problem. | |
[L: ERROR] [O: c.t.p.m.BaseReportingMigrator] [I: ] [U: SuperUser] [S: ] [T: localhost-startStop-1] ThingShape: <Name of ThingShape>, has a property which conflicts with one of the following system properties: isReporting,reportingLastChange,reportingLastEvaluation. Please refer to the ThingWorx Platform 8.4 documentation on how to resolve this problem. |