适用于:SQL Server
Azure SQL 数据库
Azure SQL 托管实例
Microsoft Fabric 中的 SQL 数据库
导入 .bacpac 文件 - 在数据库引擎的新实例或 Azure SQL 数据库上创建原始数据库及其数据的副本。 导出作可以与导入作结合使用,在实例之间迁移数据库,或创建在 Azure SQL 数据库中部署的数据库的副本。 轻松导入 .bacpac 的方法包括:
- SQL Server Management Studio 中的 “导入数据层应用程序 向导”
- 在 SQL Server Management Studio 中 将数据库部署到 Microsoft Azure SQL 数据库 向导,用于在数据库引擎实例与 Azure SQL 数据库服务器之间部署数据库,或者在两个 Azure SQL 数据库服务器之间部署数据库
- SqlPackage 命令行实用工具
在您开始之前
导入过程分两个阶段生成一个新数据库。
导入使用存储在
.bacpac导出文件中的数据库模型定义创建新数据库,就像.dacpac部署使用存储在.dacpac文件中的定义创建新数据库一样。导入过程将从
.bacpac导出文件中大容量复制数据。
数据库选项和设置
默认情况下,导入期间创建的数据库具有 CREATE DATABASE 语句中的所有默认设置,但数据库排序规则和兼容性级别设置为导出文件中定义的 .bacpac 值。 .bacpac导出文件使用原始数据库中的值。
某些数据库选项(如 TRUSTWORTHY、DB_CHAINING和HONOR_BROKER_PRIORITY)无法作为导入过程的一部分进行调整。 物理属性(如文件组数)或文件的数量和大小无法在导入过程中更改。 导入完成后,可以使用 ALTER DATABASE 语句、SQL Server Management Studio 或 SQL Server PowerShell 定制数据库。 有关详细信息,请参阅 “数据库”。
安全
为了提高安全性,SQL Server 身份验证登录名存储在 .bacpac 没有密码的导出文件中。 导入文件时,登录名会被创建为禁用状态,并生成一个密码。 若要启用登录功能,请使用 ALTER ANY LOGIN 权限登录,然后使用 ALTER LOGIN 启用登录并分配新密码。 Windows 身份验证登录不需要此额外步骤,因为它们的密码不受 SQL Server 管理。
权限
.bacpac 只能由 sysadmin 或 serveradmin 固定服务器角色的成员导入,或者由具有 dbcreator 固定服务器角色且具有 ALTER ANY LOGIN 权限的登录名导入。 名为sa的内置 SQL Server 系统管理员帐户也可以导入.bacpac。 导入带有登录信息的 .bacpac 到 SQL 数据库需要成为 loginmanager 或 serveradmin 角色的成员。 要将不带登录名的 .bacpac 导入 SQL 数据库,需要 dbmanager 或 serveradmin 角色的成员身份。
在 SQL Server Management Studio 中 将数据库部署到Microsoft Azure SQL 数据库 向导需要更多权限才能导出源数据库。 登录至少需要 ALTER ANY LOGIN 和数据库范围的 VIEW DEFINITION 权限,还需要对 sys.sql_expression_dependencies 具有 SELECT 权限。 securityadmin 固定服务器角色的成员(同时也是 database_owner 固定数据库角色的成员)可以导出 .bacpac。 sysadmin 固定服务器角色的成员或名为 sa 的内置 SQL Server 系统管理员帐户也可以导出 .bacpac。
使用“导入数据层应用程序”向导
若要启动向导,请使用以下步骤:
无论是本地还是 SQL 数据库中,都连接到 SQL Server 的实例。
在 对象资源管理器中,右键单击 “数据库”,然后选择“ 导入数据层应用程序” 菜单项以启动向导。
完成向导对话框:
简介页
本页介绍数据层应用程序导入向导的步骤。
选项
不要再次显示此页面。 - 选中复选框可阻止将来显示“简介”页。
下一步 - 转到 “导入设置” 页。
取消 - 取消操作和关闭向导。
“导入设置”页
使用此页指定要导入的文件的位置 .bacpac 。
从本地磁盘导入 - 选择 “浏览...” 以导航本地计算机,或在提供的空间中指定路径。 路径名称必须包含文件名和
.bacpac扩展名。从 Azure 导入 - 从 Microsoft Azure 容器导入
.bacpac文件。 必须连接到 Microsoft Azure 容器才能验证此选项。 “从 Azure 导入”选项还要求为临时文件指定本地目录。 临时文件将在指定位置创建,并在作完成后保留。浏览 Azure 时,可以在单个帐户中的容器之间切换。 必须指定单个
.bacpac文件才能继续导入操作。 可以按 “名称”、“ 大小”或“ 修改日期”对列进行排序。若要继续,请指定要
.bacpac导入的文件,然后选择“ 打开”。
“数据库设置”页
使用此页可指定要创建的数据库的详细信息。
对于 SQL Server 的本地实例:
新数据库名称 - 提供导入的数据库的名称。
数据文件路径 - 提供数据文件的本地目录。 选择 “浏览...” 以导航本地计算机,或在提供的空间中指定路径。
日志文件路径 - 提供日志文件的本地目录。 选择 “浏览...” 以导航本地计算机,或在提供的空间中指定路径。
若要继续操作,请选择“下一步”。
对于 Azure SQL 数据库:
- 导入 BACPAC 文件以创建新的 Azure SQL 数据库 ,提供使用 Azure 门户、PowerShell、SQL Server Management Studio 或 SqlPackage 的分步说明。
- 请参阅 SQL 数据库选项和性能:了解每个服务层级中可用的内容 ,详细了解不同的服务层级。
“验证”页
使用此页面可以查看阻止操作的任何问题。 若要继续,请解决阻止问题,然后选择 “重新运行验证 ”以确保验证成功。
若要继续操作,请选择“下一步”。
摘要页
使用此页面可以查看用于操作的指定源和目标设置。 若要使用指定的设置完成导入作,请选择“ 完成”。 若要取消导入作并退出向导,请选择“ 取消”。
“进度”页
此页面显示一个进度栏,指示操作的状态。 若要查看详细状态,请选择 “查看详细信息 ”选项。
若要继续操作,请选择“下一步”。
“结果”页
此页面报告导入的成功或失败,并创建数据库操作,显示每个操作的成功或失败。 任何遇到错误的操作在 结果 列中都有一个链接。 选择该链接以查看该操作的错误报告。
选择 关闭 以关闭向导。