MicroStrategy ONE
MicroStrategy 저장소 업그레이드 지침 및 문제 해결
저장소 업그레이드 소개
MicroStrategy 패키지의 지속적인 보안과 안정성을 보장하기 위해 2021 업데이트 10에서 MicroStrategy Repository는 PostgreSQL을 버전 14.7로 업그레이드합니다.
이 업그레이드:
-
이전 버전의 PostgreSQL의 알려진 보안 취약점에 대한 해결 방법 제공
-
사용자에게 제품 중단 발생 방지
-
사용자가 최신 PostgreSQL 릴리스의 추가 기능 및 향상된 성능을 활용할 수 있도록 합니다.
원격 저장소가 아닌 로컬에 설치된 MicroStrategy의 PostgreSQL만 이 업그레이드 워크플로우에서 다큐먼트합니다.
업그레이드에는 두 부분이 포함되어 있습니다.
-
PostgreSQL 서버 바이너리 업데이트
-
데이터 마이그레이션
업그레이드가 기본 PostgreSQL 폴더 구조를 변경하지 않으므로 PostgreSQL을 사용하는 모든 구성 요소가 영향을 받지 않습니다.
바로 사용할 수 있는 MicroStrategy 리포지토리를 백업하는 데 사용할 수 있는 몇 가지 유틸리티/ 도구가 있습니다.
-
pg_dump, pg_dumpall -
MicroStrategy PostgreSQL 백업 및 복원 유틸리티
mstr_pg_dump, mstr_pg_dumpall
MicroStrategy 저장소의 데이터베이스
Windows 및 Linux에 새로 설치된 환경의 경우 다음 데이터베이스가 즉시 사용 가능한 MicroStrategy 리포지토리에 설치됩니다.
| 데이터베이스 이름 | Windows 빠른 설치 | Windows 사용자 정의 설치 | Linux | 해당 MicroStrategy 구성 요소 |
|---|---|---|---|---|
advdw_wh
|
ü | MicroStrategy 자습서 프로젝트에 사용됩니다. | ||
mstr_collab
|
ü | ü | ü | MicroStrategy Collaboration Server |
mstr_library
|
ü | ü | ü | MicroStrategy Library Server |
operationaldm_wh
|
ü | MicroStrategy 자습서 프로젝트에 사용됩니다. | ||
platform_analytics_wh
|
ü | ü | ü | Platform Analytics 프로젝트 |
poc_metadata
|
ü | 자습서 메타데이터 | ||
tutorial_wh
|
ü | 자습서 웨어하우스 |
Linux 설치 및 Windows 사용자 정의 설치의 경우 선택한 구성 요소의 해당 웨어하우스만 MicroStrategy Repository에 설치됩니다. 예를 들어, Platform Analytics 구성 요소를 설치하지 않으면 platform_analytics_wh MicroStrategy 저장소에 없습니다.
MicroStrategy 저장소 관리 도구
MicroStrategy 저장소 관리 도구는 MicroStrategy 사용자에게 의 데이터베이스 정보를 기반으로 데이터베이스를 백업, 복원 및 정리할 수 있는 명령줄 인터페이스를 제공합니다. DBAdminConfig.yaml.
MicroStrategy 저장소 관리 도구에 대한 자세한 내용은 을(를) 참조하십시오. 저장소 관리.
MicroStrategy 저장소 관리 도구의 백업 작업은 의 데이터베이스 정보를 기반으로 합니다. DBAdminConfig.yaml. MicroStrategy 저장소의 모든 데이터베이스를 백업하려면 데이터베이스 이름을 다음에 추가합니다. DBAdminConfig.yaml. 데이터베이스 이름만 에 나열됨 DBAdminConfig.yaml 이 도구로 백업됩니다.
기본적으로 이 도구로 데이터베이스에 액세스하는 데 mstr 데이터베이스 사용자와 암호화된 암호가 사용됩니다. 다음에서 찾을 수 있음 DBAdminConfig.yaml. 암호가 수정되면 도구가 예상대로 작동하지 않을 수 있습니다.
고유 PostgreSQL 백업 및 복원 유틸리티
기본 PostgreSQL 백업 및 복원 유틸리티를 사용하여 MicroStrategy Repository를 백업 및 복원할 수 있습니다. MicroStrategy Repository와 함께 즉시 제공됩니다.
-
pg_dump단일 데이터베이스를 덤프합니다.예:
복사# To dump a database called mydb into an SQL-script file:
pg_dump mydb > db.sql -
pg_dumpall지정된 클러스터의 모든 데이터베이스를 백업하고 역할 및 테이블 공간 정의와 같은 클러스터 수준의 데이터도 유지합니다.예:
복사# To dump all databases
pg_dumpall > db.out -
복원하려면 다음을 사용하십시오.
psql또는pg_restore.예:
복사# To reload pg_dump file into a (freshly created) database named newdb
psql -d newdb -f db.sql
# To restore pg_dumpall file db.out
psql -f db.out postgres
백업 옵션에 대한 덤프 매개 변수가 많으므로 필요에 따라 사용하도록 선택할 수 있습니다.
매개 변수 목록 및 사용 예는 을(를) 참조하십시오. pg_dump ,pg_dumpall, 및 pg_restore.
Windows
기본 경로: C:\Program Files (x86)\Common Files\MicroStrategy\Repository\pgsql\bin
예:
#dump mstr_collab
pg_dump -d mstr_collab -Umstr > mstr_collab.sql
#dump the whole postgres cluster
pg_dumpall -Umstr > postgres.sql
Linux
기본 경로: /opt/mstr/MicroStrategy/install/Repository/postgres11/bin
Linux에서 유틸리티를 실행하기 전에 다음을 수행해야 합니다.
-
소싱
setenv.sh아래의 파일/opt/mstr/MicroStrategy/install/Repository/bin.가져오지 않으면 다음 오류가 발생합니다.
공유 라이브러리를 로드하는 중 오류 발생: libpQ.so.5: 공유 개체 파일을 열 수 없음: 해당 파일 또는 디렉터리가 없습니다.
-
을(를) 사용할 Unix 도메인 소켓을 정의
/tmp경로, 고유 PostgreSQL 백 유틸리티를 사용하기 때문에/var/run/postgresql/기본 경로입니다.경로가 정의되지 않으면 다음 오류가 발생합니다.
pg_damp: [아카이버 (DB)] 데이터베이스 "mstr"에 대한 연결 실패: 서버에 연결할 수 없습니다. 해당 파일 또는 디렉터리가 없습니다. 서버가 로컬로 실행 중이며 Unix 도메인 소켓 "/vari/Run/ PostgreSQL/.s.CGSQL.5432"에서 연결을 허용하고 있습니까?
예:
#source setenv.sh
source /opt/mstr/MicroStrategy/install/Repository/bin/setenv.sh
#declare unix-domain socket and use pg_dump to dump metadata
cd /opt/mstr/MicroStrategy/install/Repository/postgres11/bin
./pg_dump -h /tmp -d poc_metadata -Umstr > md.dump
#dump the whole postgres cluster
./pg_dumpall -h /tmp -Umstr > postgres.dump
MicroStrategy PostgreSQL 백업 및 복원 유틸리티
또한 MicroStrategy Linux에서 '브랜드' 백업 및 복원 유틸리티를 제공합니다. 이 유틸리티는 기본 PostgreSQL 백업 및 복원 유틸리티를 기반으로 작성되었습니다. 소싱할 필요가 없습니다. setenv.sh 이 도구로 Unix 도메인 소켓을 신고합니다.
이 유틸리티가 고유 PostgreSQL 백업/복원 유틸리티를 기반으로 구축되었으므로 고유 PostgreSQL 백업/복원 유틸리티와 함께 사용되는 매개 변수도 사용할 수 있습니다.
기본 경로: /opt/mstr/MicroStrategy/install/Repository/bin
예:
#dump metadata
cd /opt/mstr/MicroStrategy/install/Repository/bin
./mstr_pg_dump -d poc_metadata -Umstr > md.dump
#dump the whole postgres cluster
./mstr_pg_dumpall -Umstr > postgres.dump
플랫폼 설치 관리자를 통해 MicroStrategy 저장소 업그레이드
Linux
-
설치 관리자를 시작하고 선택합니다. 업그레이드로컬 MicroStrategy 버전을 2021 업데이트 10으로 업그레이드하십시오.
-
경우 MicroStrategy 플랫폼 분석이(가) 이전 설치에서 선택되었지만, 에서 자동으로 선택됩니다. 구성 요소 선택 . 업그레이드할 구성 요소를 확인하고 을(를) 클릭합니다. 다음 .
-
마지막 설치 이후 MicroStrategy 저장소에 대한 연결 정보가 변경된 경우 데이터베이스 로그인 사용자 이름, 암호 및 포트를 제공하라는 프롬프트가 표시됩니다. 필드를 완료하고다음 .
-
진행하기 전에 저장소를 백업하라는 메시지가 표시됩니다. 검토위 섹션저장소 백업 및 복원에 대한 자세한 내용은 을(를) 참조하십시오. 업그레이드를 계속하려면 다음을 입력하여 저장소를 백업했는지 확인해야 합니다. 업그레이드 . 다음을 클릭합니다
-
설치 관리자는 시스템에 사용 가능한 디스크 공간이 충분한지 확인합니다. 그렇지 않은 경우 누락된 요구 사항이 나열되고 업그레이드가 중단됩니다.
-
디스크 공간이 충분한 경우 저장소 및 다른 MicroStrategy 구성 요소에 대한 업그레이드 프로세스가 계속됩니다. 그러나 저장소 업그레이드에 실패하면 전체 업그레이드가 중단되고 다음 화면이 나타납니다.
루트 원인을 분석하고 문제 해결하는 방법에 대한 자세한 단계를 보려면 링크를 클릭하십시오. 문제가 해결되면 설치를 다시 실행하여 업그레이드를 완료하십시오.
확인 install.log 에서 logs 폴더(예: /var/log/MicroStrategy/)을 통해 아래 표시된 PostgreSQL 업그레이드 로그가 포함되어 있는지 확인합니다. 포함되어 있으면 업그레이드가 성공한 것입니다.
PostgreSQL 업그레이드 로그 예:
12 Apr 2023, 07:29:41 AM:INFO: Configuring pg_hba.conf file completed
12 Apr 2023, 07:29:49 AM:INFO: Successfully stopped MicroStrategy Repository Administration.
12 Apr 2023, 07:29:49 AM:INFO: Successfully stopped PostgreSQL.
12 Apr 2023, 07:29:49 AM:INFO: Backing up PostgreSQL bin files.
12 Apr 2023, 07:29:49 AM:INFO: Backing up pgdata files.
12 Apr 2023, 07:29:49 AM:INFO: Backing up Repository Administration Tool files.
12 Apr 2023, 07:29:49 AM:INFO: MicroStrategy Repository bin files and pgdata backup completed.
12 Apr 2023, 07:29:49 AM:INFO: Extracting new postgres binary files.
12 Apr 2023, 07:29:50 AM:INFO: Installing Repository files...
12 Apr 2023, 07:29:50 AM:INFO: Copying fileset RepositoryLinuxRepositoryInstallPath files...
12 Apr 2023, 07:29:56 AM:INFO: Initializing PostgreSQL
12 Apr 2023, 07:29:57 AM:INFO: Configuring postgresql.conf file.
12 Apr 2023, 07:29:57 AM:FINE: Using port 54302 temporarily for PostgreSQL upgrade.
12 Apr 2023, 07:29:57 AM:INFO: Configuring postgresql.conf file completed
12 Apr 2023, 07:29:57 AM:INFO: Checking postgres upgrade compatibility.
12 Apr 2023, 07:29:58 AM:INFO: Upgrade compatibility check has been passed.
12 Apr 2023, 07:29:58 AM:INFO: Starting PostgreSQL upgrade.
12 Apr 2023, 07:30:04 AM:INFO: PostgreSQL upgrade completed.
12 Apr 2023, 07:30:04 AM:INFO: Restoring old cluster's configuration files.
12 Apr 2023, 07:30:04 AM:INFO: Restoring pg_hba.conf file.
12 Apr 2023, 07:30:04 AM:INFO: Restoring pg_hba.conf file completed.
12 Apr 2023, 07:30:04 AM:INFO: Restoring postgresql.conf file.
12 Apr 2023, 07:30:04 AM:INFO: Restoring postgresql.conf file completed.
12 Apr 2023, 07:30:04 AM:INFO: Checking MicroStrategy Repository status
12 Apr 2023, 07:30:05 AM:INFO: Started PostgreSQL.
12 Apr 2023, 07:30:05 AM:INFO: Cleaning up files under Repository.
Windows
-
설치 관리자를 시작하여 로컬 MicroStrategy 버전을 2021 업데이트 10으로 업그레이드합니다.
-
경우 MicroStrategy 저장소이(가) 이전 설치에서 선택되었지만, 에서 자동으로 선택됩니다. 구성 요소 선택 . 업그레이드할 구성 요소를 확인하고 을(를) 클릭합니다. 다음 .
-
마지막 설치 이후 MicroStrategy 저장소에 대한 연결 정보가 변경된 경우 데이터베이스 로그인 사용자 이름, 암호 및 포트를 제공하라는 프롬프트가 표시됩니다. 필드를 완료하고다음 .
-
진행하기 전에 저장소를 백업하라는 메시지가 표시됩니다. 검토위 섹션저장소 백업 및 복원에 대한 자세한 내용은 을(를) 참조하십시오. 업그레이드를 계속하려면 다음을 입력하여 저장소를 백업했는지 확인해야 합니다. 업그레이드 . 다음을 클릭합니다
-
설치 관리자는 시스템에 사용 가능한 디스크 공간이 충분한지 확인합니다. 없는 경우 공간 요구 사항이 나열되고 업그레이드가 중단됩니다.
-
디스크 공간이 충분한 경우 저장소 및 다른 MicroStrategy 구성 요소에 대한 업그레이드 프로세스가 계속됩니다. 그러나 저장소 업그레이드에 실패하면 전체 업그레이드가 중단되고 다음 화면이 나타납니다.
루트 원인을 분석하고 문제 해결하는 방법에 대한 자세한 단계를 보려면 링크를 클릭하십시오. 문제가 해결되면 설치를 다시 실행하여 업그레이드를 완료하십시오.
확인 install.log MicroStrategy 설치 폴더에(예: C:\Program Files (x86)\Common Files\MicroStrategy)을 통해 아래 표시된 PostgreSQL 업그레이드 로그가 포함되어 있는지 확인합니다. 포함되어 있으면 업그레이드가 성공한 것입니다.
PostgreSQL 업그레이드 로그 예:
Performing Consistency Checks
-----------------------------
Checking cluster versions ok
Checking database user is the install user ok
Checking database connection settings ok
Checking for prepared transactions ok
Checking for reg* data types in user tables ok
Checking for contrib/isn with bigint-passing mismatch ok
Checking for tables WITH OIDS ok
Checking for invalid "sql_identifier" user columns ok
Creating dump of global objects ok
Creating dump of database schemas
ok
Checking for presence of required libraries ok
Checking database user is the install user ok
Checking for prepared transactions ok
If pg_upgrade fails after this point, you must re-initdb the
new cluster before continuing.
Performing Upgrade
------------------
Analyzing all rows in the new cluster ok
Freezing all rows in the new cluster ok
Deleting files from new pg_xact ok
Copying old pg_xact to new server ok
Setting next transaction ID and epoch for new cluster ok
Deleting files from new pg_multixact/offsets ok
Copying old pg_multixact/offsets to new server ok
Deleting files from new pg_multixact/members ok
Copying old pg_multixact/members to new server ok
Setting next multixact ID and offset for new cluster ok
Resetting WAL archives ok
Setting frozenxid and minmxid counters in new cluster ok
Restoring global objects in the new cluster ok
Restoring database schemas in the new cluster
ok
Adding ".old" suffix to old global/pg_control ok
If you want to start the old cluster, you will need to remove
the ".old" suffix from C:/Program Files (x86)/Common Files/MicroStrategy/Repository/pgsql/PGDATA/global/pg_control.old.
Because "link" mode was used, the old cluster cannot be safely
started once the new cluster has been started.
Linking user relation files
ok
Setting next OID for new cluster ok
Sync data directory to disk ok
Creating script to analyze new cluster ok
Creating script to delete old cluster ok
Upgrade Complete
----------------
Optimizer statistics are not transferred by pg_upgrade so,
once you start the new server, consider running:
analyze_new_cluster.bat
Running this script will delete the old cluster's data files:
delete_old_cluster.bat
PostgreSQL 업그레이드 실패 문제 해결
PostgreSQL 업그레이드가 실패하면 다음을 확인하십시오. install.log 합니다.
PostgreSQL 업그레이드의 몇 가지 일반적인 실패 시나리오는 다음과 같습니다.
디스크 공간 부족
저장소를 업그레이드하려면 백업, PostgreSQL 바이너리 및 데이터베이스 마이그레이션을 위한 추가 디스크 공간이 필요합니다.
설치 관리자는 시스템에 사용 가능한 디스크 공간이 충분한지 확인합니다. 그렇지 않으면 업그레이드 프로세스가 중단됩니다. 다음 경고가 나타납니다.
이 시스템은 디스크 공간이 충분하지 않기 때문에 업그레이드를 진행할 수 없습니다.
암호 불일치
MicroStrategy 설치 관리자는 초기 PostgreSQL 설치를 수행한 상위 사용자를 사용하여 이전 PostgreSQL 저장소를 연결해야 합니다. 변경되었으며 업그레이드 중에 암호를 올바르게 입력하지 않으면 업그레이드 프로세스가 실패할 수 있습니다.
이전 PostgreSQL 데이터베이스에 연결하려면 올바른 하이퍼 사용자 암호를 입력해야 합니다.
액세스 권한 문제
업그레이드를 수행하는 사용자가 업그레이드에 필요한 특정 파일 또는 디렉터리에 액세스하는 데 필요한 권한이 없을 수 있습니다.
MicroStrategy 설치 및 저장소의 업그레이드를 실행하는 올바른 사용자는 상위 사용자입니다.
잘못된 구성 설정
업그레이드 프로세스 중에 PostgreSQL에 대한 구성 설정을 업데이트해야 할 수 있습니다. 설정이 올바르지 않으면 업그레이드 프로세스가 실패할 수 있습니다.
구성 파일에 잘못된 설정이 포함되어 있어서 유효하지 않음을 나타내는 오류 메시지가 기록됩니다. 잘못된 구성을 수정하고 설치를 다시 실행해야 합니다.
데이터 손상
마이그레이션하는 데이터에 오류나 문제가 있는 경우 업그레이드 프로세스 중에 데이터가 손상될 수 있습니다.
데이터베이스에 대한 데이터 파일이 손상됨을 나타내는 오류 메시지가 기록됩니다. 백업에서 데이터를 복원하고 설치를 다시 실행하여 데이터 오류를 수정해야 합니다.
페일오버 시나리오 및 복원
업그레이드 중에 PostgreSQL 데이터 파일이 중단되는 경우 업그레이드를 시작하기 전에 수행된 백업에서 데이터베이스를 복원해야 할 수 있습니다.
-
MicroStrategy 저장소 관리 도구를 사용하여 백업을 수행한 경우 동일한 도구를 사용하여 복원해야 합니다. 의 단계를 따릅니다. 저장소 관리을(를) 클릭하여 복원을 수행합니다.
-
기본 PostgreSQL 백업 유틸리티를 사용하여 백업을 수행한 경우, MicroStrategy 기본 PostgreSQL 복원 유틸리티를 사용하여 복원을 수행할 것을 권장합니다.
Windows
기본 경로: C:\Program Files (x86)\Common Files\MicroStrategy\Repository\pgsql\bin
예:
# To restore platform_analytics_wh from dump file with creating same database name
pg_restore -d postgres -Umstr --clean --create platform_analytics_wh.dump
# To restore mstr_collab to the new created database from dump file
psql -Umstr -d mstr_collab < mstr_collab.sql
# To restore pg_dumpall file all_dbs.out
psql -Umstr -f all_dbs.out postgres
Linux
기본 경로: /opt/mstr/MicroStrategy/install/Repository/bin
Linux에서 복원 유틸리티를 실행하기 전에 다음을 수행해야 합니다.
-
소싱
setenv.sh아래의 파일/opt/mstr/MicroStrategy/install/Repository/bin.가져오지 않으면 다음 오류가 발생합니다.
공유 라이브러리를 로드하는 중 오류 발생: libpQ.so.5: 공유 개체 파일을 열 수 없음: 해당 파일 또는 디렉터리가 없습니다.
-
을(를) 사용할 Unix 도메인 소켓을 정의
/tmp경로, 고유 PostgreSQL 백 유틸리티를 사용하기 때문에/var/run/postgresql/기본 경로입니다.경로가 정의되지 않으면 다음 오류가 발생합니다.
pg_damp: [아카이버 (DB)] 데이터베이스 "mstr"에 대한 연결 실패: 서버에 연결할 수 없습니다. 해당 파일 또는 디렉터리가 없습니다. 서버가 로컬로 실행 중이며 Unix 도메인 소켓 "/vari/Run/ PostgreSQL/.s.CGSQL.5432"에서 연결을 허용하고 있습니까?
예:
# To restore database platform_analytics_wh
cd /opt/mstr/MicroStrategy/install/Repository/bin
./mstr_pg_restore -d platform_analytics_wh -Umstr < platform_analytics_wh.dump
