Bagikan melalui


Gambaran umum aplikasi tingkat data (DAC)

Berlaku untuk:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceDatabase SQL di Microsoft Fabric

Aplikasi tingkat data (DAC) adalah entitas database logis yang menentukan semua objek SQL Server - seperti tabel, tampilan, dan objek instans, termasuk login - yang terkait dengan database pengguna. Aplikasi tingkat data adalah unit mandiri dari seluruh model database dan portabel dalam kedua .dacpac dan .bacpac paket. Dukungan alat untuk aplikasi tingkat data memungkinkan pengembang dan administrator database untuk menerapkan .dacpac dan .bacpac file ke database baru atau yang sudah ada atau menghasilkan file baru dari database yang ada.

Operations

Operasi BACPAC

.bacpac Format file adalah artefak terkait yang secara default merangkum skema database dan data yang disimpan dalam database. Objek dalam .bacpac model database terbatas pada area permukaan Azure SQL Database. Kasus penggunaan utama untuk adalah .bacpac memindahkan database dari satu server ke server lain - atau untuk memigrasikan database dari server lokal ke cloud - dan mengarsipkan database yang ada dalam format terbuka.

Pelajari selengkapnya tentang portabilitas database dari dokumentasi portabilitas SqlPackage.

Operasi DACPAC

Paket aplikasi data-tier .dacpac adalah artefak hasil build dari proyek database SQL. Anda dapat menggunakannya dalam manajemen siklus hidup database yang komprehensif dan strategi DevOps. Data tidak disertakan dalam .dacpac secara default, tetapi Anda dapat memilih untuk menyertakan data dari tabel pengguna saat Anda mengekstrak .dacpac dari SQL Server langsung atau Azure SQL Database. Sebagai bagian integral dari alur kerja proyek database SQL dan siklus hidup pengembangan database, .dacpac file digunakan dalam beberapa operasi. Operasi utama adalah:

  • Ekstrak - ekstrak database ke dalam .dacpac. Untuk informasi selengkapnya, lihat Ekstrak SqlPackage dan Ekstrak DACPAC dari database.
  • Menyebarkan/Terbitkan - sebarkan .dacpac ke server host. Saat Anda menyebarkan ke database yang sudah ada, perbedaan antara database dan DAC dihitung secara dinamis dan diterapkan sebagai pembaruan bertahap. Istilah penerbitan sering digunakan secara bergantian dengan penyebaran. Untuk informasi selengkapnya, lihat publikasi SqlPackage dan Menerapkan aplikasi tingkat data.

Anda dapat menemukan kemampuan ini di SqlPackage CLI, SQL Server Management Studio, Visual Studio Code, dan SQL Server Data Tools.

Selain menerbitkan dan mengekstrak, Anda juga dapat melacak model database dalam metadata sistem dengan menggunakan fungsionalitas pendaftaran dac :

  • Daftar - daftarkan database sebagai aplikasi tingkat data. Pendaftaran menyimpan sebuah representasi dari status saat ini dari skema database dalam metadata sistem.
  • Batalkan pendaftaran - batalkan pendaftaran database yang sebelumnya terdaftar sebagai DAC.
  • Peningkatan - tingkatkan database dengan menggunakan .dacpac.

Alat untuk aplikasi lapisan data

Dukungan alat untuk aplikasi tingkat data memungkinkan pengembang dan administrator database untuk bekerja dengan .dacpac dan .bacpac file dari antarmuka grafis dan baris perintah. Selain alat yang dirilis, API aplikasi tingkat data tersedia di Kerangka Kerja Aplikasi Tingkat Data (DACFx) untuk pengembangan .NET dan kustomisasi siklus hidup database.

Paket DACPAC dan BACPAC

Penting

Lindungi .bacpac dan .dacpac file Anda dengan mengamankannya dengan cara yang tepat. Data yang terkandung dalam file-file ini dikompresi tetapi tidak dienkripsi. .bacpac file berisi data dari database secara default, dan .dacpac dapat berisi data saat opsi ditentukan selama ekstrak.

Alat berikut mendukung .dacpac format dan .bacpac :

Dalam alat-alat ini, Anda dapat mengekstrak database ke .dacpac atau mengekspornya ke .bacpac. Sebaliknya, Anda bisa mengimpor .bacpac ke database baru, atau menerbitkan .dacpac ke database baru atau yang sudah ada.

Proyek DACPAC dan SQL

Alat berikut mendukung .dacpac format file dan menyediakan kemampuan pengeditan untuk proyek database SQL:

Pengembang dapat menggunakan alat ini untuk merancang database di lingkungan pengembangan sisi klien yang tidak terhubung. Untuk informasi selengkapnya, lihat artikel alat proyek SQL .