본문으로 건너뛰기
로그인 둘러보기
개발·코딩·데이터베이스 · 윈도우즈 유틸

Yuniql

0

Yuniql은 .NET Core로 제작된 무료 오픈소스 데이터베이스 마이그레이션 엔진입니다. Rodel E.

.NET Core 도구Chocolatey 패키지CSV 대량 가져오기Docker 컨테이너 지원SQL 스크립트 실행데이터베이스 마이그레이션스키마 버전 관리

소개

Yuniql은 .NET Core로 제작된 무료 오픈소스 데이터베이스 마이그레이션 엔진입니다. Rodel E. Dagumampan이 개발했으며, SQL 스크립트와 CSV 대량 가져오기를 지원하여 데이터베이스 스키마 버전 관리를 자동화합니다. Windows 및 Linux에서 실행 가능하며, SQL Server, PostgreSQL, MySQL, MariaDB, Snowflake, Redshift, Oracle 등 다양한 데이터베이스를 지원합니다.

상세정보

SQL 스크립트 기반 마이그레이션

순수 SQL 스크립트를 작성하여 데이터베이스 스키마 변경 사항을 버전 관리할 수 있습니다. yuniql은 스크립트의 적용 여부를 추적하고, 누락되거나 중복된 마이그레이션을 방지합니다.

CSV 대량 데이터 가져오기

마스터 데이터를 CSV 파일로 준비하여 yuniql을 통해 데이터베이스 테이블에 대량으로 가져올 수 있습니다. 초기 데이터 seeding이나 참조 데이터 관리에 유용합니다.

다중 플랫폼 지원

SQL Server, PostgreSQL, MySQL, MariaDB, Snowflake, Redshift, Oracle 등 주요 데이터베이스를 지원합니다. 클라우드 환경(AWS, Azure, GCP)에서도 실행 가능하도록 설계되었습니다.

CI/CD 파이프라인 통합

Azure DevOps Pipelines, GitHub Actions, Docker 컨테이너 등 다양한 CI/CD 환경에서 yuniql을 실행할 수 있도록 공식 가이드와 확장이 제공됩니다.

다운로드·설치 방법

Windows 사용자는 Chocolatey를 통해 간편하게 설치할 수 있습니다. 관리자 권한으로 PowerShell 또는 CMD를 열고 다음 명령을 실행합니다:

choco install yuniql

또는 .NET 전역 도구로 설치하려면:

dotnet tool install -g yuniql.cli

Docker를 선호하는 경우, 공식 이미지를 pull하여 사용할 수 있습니다:

docker pull yuniql/yuniql:win-x64-latest

최신 릴리즈 ZIP 파일은 GitHub releases 페이지에서 직접 다운로드할 수 있습니다.

기본 사용법

설치 후, 작업 공간을 준비하고 연결 문자열을 환경 변수로 설정합니다. 예를 들어 SQL Server를 사용하는 경우:

SETX YUNIQL_CONNECTION_STRING “Server=localhost,1400;Database=yuniqldb;User Id=SA;Password=P@ssw0rd!;TrustServerCertificate=True”

SETX YUNIQL_WORKSPACE “c:tempyuniql-clisamplesbasic-sqlserver-sample”

작업 공간에는 적용할 SQL 스크립트 파일을 배치합니다. 그 후 마이그레이션을 실행합니다:

yuniql run -a –platform sqlserver

적용된 마이그레이션 내역을 확인하려면:

yuniql list –platform sqlserver

이 명령은 적용된 스키마 버전, 적용 시간, 상태 등을 표 형태로 보여줍니다.

이런 경우에 유용합니다

개발 팀이 데이터베이스 스키마 변경을 버전 관리하고 싶을 때, yuniql을 사용하면 모든 개발자와 배포 환경에서 동일한 스키마 버전을 유지할 수 있습니다. 특히 CI/CD 파이프라인에 통합하여 자동으로 마이그레이션을 실행함으로써 수작업 오류를 줄이고 배포 프로세스를 안정화할 수 있습니다.

초기 데이터베이스 세팅이나 참조 데이터 관리가 필요한 경우, CSV 대량 가져오기 기능을 활용하면 JSON이나 XML 형식보다 간편하게 마스터 데이터를 테이블에 삽입할 수 있습니다.

지원 환경·시스템 요구사항

.NET 6 런타임이 필요합니다. Windows 10 이상 또는 Linux 배포판에서 실행 가능하며, Docker를 사용할 경우 컨테이너 런타임 환경이 필요합니다. 지원 데이터베이스는 각각의 공식 드라이버와 호환되는 버전이 필요합니다(예: SQL Server 2017 이상, PostgreSQL 9.6 이상 등).

최신 버전·업데이트

현재 최신 버전은 1.3.15이며, 2022년 5월에リリース되었습니다. 업데이트 내역은 GitHub 저장소의リリース 페이지에서 확인할 수 있습니다.

제한 사항·확인 사항

Oracle 및 SAP HANA 지원은 현재 프리뷰 또는 분석 단계에 있으며, 안정성 측면에서 생산 환경 사용 전 충분한 테스트가 권장됩니다. 클라우드 플랫폼 지원은 커뮤니티 피드백과 제한된 테스트를 기반으로 하며, Amazon RDS가 기본 클라우드 제공자로 사용됩니다.

시스템 요구사항

별도의 시스템 요구사항이 등록되지 않았습니다.