가이드 제목은 [도구명] [내용]-하기 형태(ex Bitbucket Cloud 저장소 생성하기)로 입력한다.

이 문서에 대한 요약 /개요를 입력한다. (구글에서 검색되었을때 표시되는 문장)

이 문서는 Migrate SonarQube from H2 to another database 가이드를 공유하기 위해 작성되었다.


가이드에 사용되는 도구 정보를 입력한다.

도구명Sonarqube
버전9.9
OSOS명 및 버전
비고추가할 내용 있을 경우 기입




첨부한  이미지 너비는 800px 을 넘기지 않는다.

Migrate SonarQube from H2 to another database


공식적으로 해당 기능은 제공하지 않는다.

해당 가이드는 Sonarqube 9.9.6

Postgresql 13

MSSQL 2019

Oracle 19C 에서 테스트

1. 사전 준비

필수 사항

필요 도구 및 환경

다운로드: sonarH2migrate.zip

2. 대상 DB 생성

SonarQube 데이터를 이관할 DB를 생성. 이 DB는 SonarQube에서 요구하는 스키마 구조를 지원할 수 있어야 하며, 해당 테이블들이 미리 존재해야 함

예시

CREATE DATABASE sonarqube_db; CREATE USER sonarqube_user WITH PASSWORD 'your_password'; GRANT ALL PRIVILEGES ON DATABASE sonarqube_db TO sonarqube_user;



3. SonarQube 임시 실행

# sonar.properties 예시 설정
sonar.jdbc.url=jdbc:<db_type>://localhost:5432/sonarqube_db
sonar.jdbc.username=sonarqube_user
sonar.jdbc.password=your_password
./sonar.sh start

4. 임시 SonarQube 종료

DB 연결 및 설정이 올바른지 확인한 후, 임시 SonarQube를 종료

./sonar.sh stop


5. Migration Tool 준비

  1. 첨부된 폴더를 해제하여 DB migration tool을 준비
  2. OS와 database에 맞는 스크립트를 선택하여 파일의 변수를 환경에 맞게 수정

6. DB 마이그레이션 실행

  1. 기존에 사용 중인 SonarQube를 실행
  2. 수정한 스크립트를 실행하여 H2에서 선택한 DB로 데이터를 마이그레이션
  3. 스크립트 실행 후, 마지막에 success 문구가 나타나는지 확인

success 문구가 없을 경우, 스크립트를 재실행

7. SonarQube 중지 및 재기동

./sonar.sh stop
./sonar.sh start


8. 마이그레이션 결과 확인

SonarQube가 정상적으로 기동된 후, 프로젝트들이 올바르게 보이는지 확인


문제 해결

rm -rf <SonarQube_Home>/data ./sonar.sh start



참조