InfoGrab DocsInfoGrab Docs

Mattermost 업그레이드 준비

Mattermost 업그레이드 준비 — 버전별 데이터베이스 스키마 변경 사항 및 업그레이드 전 권장 사항 안내

대부분의 경우 Mattermost 서버 업그레이드 는 몇 분 내에 완료할 수 있습니다. 그러나 설치 크기와 복잡성, 업그레이드하는 버전 등 여러 요소에 따라 업그레이드에 더 많은 시간이 걸릴 수 있습니다. 업그레이드를 계획할 때 현재 데이터베이스 및 운영 체제 버전이 여전히 지원되는지 확인하는 것이 좋습니다. 자세한 내용은 소프트웨어 및 하드웨어 요구 사항 페이지를 참조하세요. 업그레이드 모범 사례 # Mattermost는 일반적으로 잠금이 없고 하위 호환성이 있는 마이그레이션을 목표로 합니다. 이 하위 호환성 보증은 마지막 ESR 버전에만 적용됩니다. 예를 들어 ESR1, ESR2, ESR3 세 가지 ESR 버전이 있는 경우 ESR1에서 ESR2로, ESR2에서 ESR3으로 업그레이드하면 하위 호환성이 보장되지만 ESR1에서 ESR3으로 직접 업그레이드하는 경우는 보장되지 않습니다. 업그레이드가 지연된 경우 가장 가까운 ESR 버전으로 먼저 업그레이드한 다음 다음 ESR로 업그레이드하는 것을 권장합니다. 최신 버전으로 직접 업그레이드하려 하지 마세요. 업그레이드 중에 클러스터의 이전 노드와의 하위 호환성이 깨질 수 있습니다. Mattermost v7.1로 업그레이드 # Mattermost v7.1은 새 컬럼과 인덱스 형태의 스키마 변경을 도입합니다. 스키마 변경에 대한 테스트 결과는 다음과 같습니다: PostgreSQL 1,200만 게시물, 250만 반응 - ~1분 18초 (인스턴스: db.r5.2xlarge) Reactions 테이블에 잠금을 획득하는 업그레이드 전에 다음 SQL 쿼리를 실행할 수 있습니다. 이 시간 동안 사용자가 게시한 반응은 마이그레이션이 완료될 때까지 데이터베이스에 반영되지 않습니다. 이는 완전히 하위 호환됩니다. 연결 콜레이션과 테이블 콜레이션이 다른 경우 `Illegal mix of collations` 오류가 발생할 수 있습니다. 이 오류를 해결하려면 연결과 테이블에 동일한 콜레이션을 설정하세요. 연결, 데이터베이스, 테이블, 컬럼 등 여러 수준에서 다른 콜레이션이 있으며 데이터베이스 관리자는 객체마다 다른 콜레이션 수준을 설정할 수 있습니다. ALTER TABLE reactions ADD COLUMN IF NOT EXISTS channelid varchar(26) NOT NULL DEFAULT ''; UPDATE reactions SET channelid = COALESCE((select channelid from posts where posts.id = reactions.postid), '') WHERE channelid=''; CREATE INDEX CONCURRENTLY IF NOT EXISTS idx_reactions_channel_id on reactions (channelid); Mattermost v6.7로 업그레이드 # Mattermost v6.7은 새 인덱스 형태의 스키마 변경을 도입합니다. 스키마 변경에 대한 테스트 결과는 다음과 같습니다: Postgres 700만 게시물 - ~9초 (인