Microsoft Fabric의 SQL Database용 SqlPackage
적용 대상:✅Microsoft Fabric의 SQL 데이터베이스
이 자습서에서는 Fabric의 SQL 데이터베이스에서 SqlPackage를 사용하는 방법을 알아봅니다.
SqlPackage는 데이터베이스 이식성 및 데이터베이스 배포를 제공하는 CLI입니다.
- Azure 또는 Fabric에서 관리되는 데이터베이스의 이식성(가져오기/내보내기)을 사용하면 나중에 마이그레이션하려는 경우 SQL Server 또는 Azure SQL Managed Instance를 비롯한 다른 플랫폼으로 데이터를 이식할 수 있습니다.
- 또한 동일한 이식성을 사용하면 가져오기/내보내기 작업을 통해 자체 포함된 데이터베이스 복사본(
.bacpac
)을 통해 특정 마이그레이션 시나리오를 수행할 수 있습니다.
SqlPackage를 사용하면 데이터베이스 개체에 대한 증분 변경 내용(테이블의 새 열, 기존 저장 프로시저 변경 등)을 쉽게 데이터베이스에 배포할 수 있습니다.
- SqlPackage는
.dacpac
데이터베이스의 개체 정의가 포함된 파일을 추출하고 새 데이터베이스 또는 기존 데이터베이스에 해당 개체 상태를 적용하는 파일을 게시.dacpac
할 수 있습니다. - 또한 게시 작업은 SQL 프로젝트와 통합되어 SQL 데이터베이스에 대한 오프라인 및 보다 동적 개발 주기를 가능하게 합니다.
필수 조건
- 기존의 Fabric 용량이 필요합니다. 그렇지 않은 경우 Fabric 평가판을 시작합니다.
- 패브릭 테넌트 설정에서 SQL 데이터베이스를 사용하도록 설정해야 합니다.
- 새 작업 영역을 만들거나 기존 패브릭 작업 영역을 사용합니다.
- Fabric에서 기존 SQL 데이터베이스를 만들거나 사용합니다. 아직 없는 경우 Fabric에서 새 SQL 데이터베이스를 만듭니다.
- .NET 8 SDK를 설치합니다.
설정
SqlPackage는 Windows, macOS 및 Linux에서 dotnet 도구로 사용할 수 있습니다. 다음 명령을 사용하여 설치할 수 있습니다.
dotnet tool install --global Microsoft.SqlPackage
전역 dotnet 도구인 SqlPackage는 모든 폴더와 마찬가지로 sqlpackage
터미널에서 사용할 수 있습니다.
SqlPackage를 사용하여 데이터베이스 가져오기
A .bacpac
는 일부 마이그레이션 및 테스트 시나리오에 유용한 데이터베이스의 이식 가능한 복사본입니다. 빈 .bacpac
SQL 데이터베이스로 가져올 수 있습니다.
참고 항목
A .bacpac
는 백업 또는 백업/복원 기능을 대체하는 것이 아닙니다. Fabric SQL 데이터베이스의 백업에 대한 자세한 내용은 Microsoft Fabric의 SQL 데이터베이스에서 자동 백업을 참조하고 Microsoft Fabric의 SQL 데이터베이스 백업에서 복원을 참조하세요.
Azure SQL Database 환경에서 사용하는
.bacpac
경우 패브릭 SQL 데이터베이스 T-SQL 노출 영역을 충족하도록 원본 데이터베이스를 변경해야 할 수 있습니다.패브릭 인터페이스를 통해 평소와 같이 패브릭 에서 새 SQL 데이터베이스를 만듭니다.
설정에서 연결 문자열 복사합니다.
sqlpackage 폴더의 터미널에서 가져오기 명령을 사용합니다. 소유자
<servername>
및<database_name>
을 입력합니다.sqlpackage /action:import /sourcefile:"C:\DatabaseName.bacpac" /targetconnectionstring:"Data Source=tcp:<server_name>.database.windows.net,1433;Initial Catalog=<database_name>;MultipleActiveResultSets=False;Connect Timeout=30;Encrypt=True;TrustServerCertificate=False;ConnectRetryCount=6;ConnectRetryInterval=10;Authentication=Active Directory Interactive"
- SQL 데이터베이스 설정 대화 상자에서 연결 문자열 바꿉니다.
sourcefile
값을.bacpac
이름(DatabaseName
)과location
로컬 컴퓨터로 바꿉니다.
가져오기에 대한 자세한 내용은 SqlPackage 가져오기를 참조하세요.
SqlPackage를 사용하여 데이터베이스 내보내기
내보내 .bacpac
기는 이전 예제와 sourceconnectionstring
같이 SQL 데이터베이스 설정 대화 상자에서 찾을 수 있는 targetfile
역방향 작업입니다.bacpac
. 소유자 <servername>
및 <database_name>
을 입력합니다. 예시:
sqlpackage.exe /action:export /targetfile:"C:\DatabaseName.bacpac" /sourceconnectionstring:"Data Source=tcp:<server_name>.database.windows.net,1433;Initial Catalog=<database_name>;MultipleActiveResultSets=False;Connect Timeout=30;Encrypt=True;TrustServerCertificate=False;ConnectRetryCount=6;ConnectRetryInterval=10;Authentication=Active Directory Interactive"
내보내 기에 대한 자세한 내용은 SqlPackage 내보내기 참조
추출 및 게시
A .dacpac
는 원본 데이터베이스의 테이블, 저장 프로시저 및 기타 개체에 대한 정의를 포함하는 데이터베이스 스키마 모델 파일입니다.
SqlPackage는 새(빈) 데이터베이스에 배포 .dacpac
하거나 원하는 .dacpac
상태와 일치하도록 기존 데이터베이스를 증분 방식으로 업데이트할 수 있습니다.
- 추출 은 기존 데이터베이스에서 a
.dacpac
또는 sql 파일을 만듭니다. - 게시 는 데이터베이스에
.dacpac
배포합니다.
SqlPackage 게시 구문은 import/export 명령과 유사합니다.