关于SQL Server Express

SQL Server Express(2012、2014、2016、2017、2019)是 Microsoft SQL Server的免费版本。与付费版本相比,它有一些技术限制使其不适合大规模部署,例如人为的硬件使用限制和 10 GB 的数据库大小限制。

此外,它缺少通常用于安排管理任务的SQL Server代理。但由于通常不需要自动恢复SQL Express数据库,您的恢复操作应该不会受到太大影响。

sql服务器快递

从备份恢复SQL Express数据库

您将在下面找到SQL Server Express 从备份恢复数据库的5种方法。它们与恢复SQL Server数据库大致相同,您可以根据需要选择一个,然后点击锚文本快速查看。

方法 1. 使用 SSMS GUI 恢复SQL Express数据库

在SQL Server Express 中,也可以通过 SSMS GUI 来恢复数据库备份,具体步骤如下:

1. 启动 SSMS 并连接到您的实例。在对象资源管理器下找到要还原的数据库,右键单击它并选择任务>还原>数据库...

恢复任务

2. 在此步骤中,您可以选择“来源”作为“数据库”“设备”。如果您的备份文件存放在默认目录下,您可以选择前者。否则,您可以选择Device并单击...以手动指定 bak 文件。

选择数据库

3. 如果您添加的备份没有问题,进度会显示为“Done”,您可以直接点击“确定”进行恢复。

添加 bak 文件以从中恢复

方法 2. 使用 T-SQL 从 .bak 文件恢复SQL Express数据库

启动 SSMS 并连接到要将数据库还原到的实例。点击“新建查询”新建一个SQLQuery窗口,输入restore命令如下:

RESTORE DATABASE DatabaseName FROM DISK = '“文件路径”'

这是从 bak 文件恢复 SQL数据库的基本语句。填写自己的数据库名和备份文件路径即可。请注意您使用的路径应包含文件名和 .bak 扩展名。

t-sql 从备份恢复数据库

如果要从差异备份中恢复数据库,则需要提前从上次完整备份中恢复。命令将类似于:

RESTORE DATABASE DatabaseName FROM DISK = ' Filepath_full ' WITH NORECOVERY
GO
RESTORE DATABASE DatabaseName FROM DISK = ' Filepath_diff ' WITH RECOVERY
GO

正确输入T-SQL语句后,点击“执行”即可运行。

注意: 如果 您在还原过程中收到“数据库日志的尾部尚未备份”,您可以按照说明进行操作,即首先使用 NORECOVERY 备份日志(如果它包含您不想丢失的工作),或恢复数据库 WITH REPLACE 或 WITH STOPAT 以覆盖日志的内容。

方法三、使用命令行恢复SQL Express数据库

事实上,您也可以通过 SQLCMD 在命令提示符中运行 T-SQL 语句。这特别适合不想每次都登录SSMS进行恢复操作的用户。

按 Win + R 打开运行窗口,在文本框中输入“cmd”并按回车键。然后您可以在弹出的窗口中输入命令来执行SQL Express数据库的备份和恢复。

“注意:”要从命令提示符运行备份语句,请参阅 使用命令行备份 SQL数据库.

恢复SQL Express数据库的基本命令是:

SqlCmd -E -S ServerName -Q "RESTORE DATABASE DatabaseName FROM DISK =' Filepath '"

cmd 恢复数据库

从差异备份恢复SQL Express数据库:

SqlCmd -E -S ServerName -Q “RESTORE DATABASE DatabaseName FROM DISK=' Filepath_full ' WITH NORECOVERY”
SqlCmd -E -S ServerName -Q “RESTORE DATABASE DatabaseName FROM DISK='Filepath_diff' WITH RECOVERY” sqlcmd -E -S ServerName -Q “RESTORE DATABASE DatabaseName FROM DISK=' Filepath_diff ' WITH RECOVERY”

“注意:”如果需要经常执行相同的操作,也可以在txt编辑器中输入命令,保存为.bat文件。因此,您可以通过双击轻松执行任务。

方法四、使用PowerShell恢复SQL Express数据库

使用 PowerShell 还原数据库还需要先前创建的 .bak 文件。如果您也想使用 PowerShell 执行备份,请参阅用于备份 SQL数据库的 PowerShell 脚本.

使用备份文件,您可以按照以下步骤恢复SQL Express数据库。

1. 点击“开始”菜单,选择Windows PowerShell,以管理员身份启动Windows PowerShell ISE

2. 点击“新建脚本”,输入以下命令导入相应的cmdlet:

Import-Module SQLPS -DisableNameChecking

“注意:”如果在导入模块时出现错误,表明 SQLPS 不受信任,请尝试先执行 Set-ExecutionPolicy RemoteSigned,然后重新导入 cmdlet。

导入模块

3、然后输入以下命令运行SQL Express数据库备份:

Restore-SqlDatabase -ServerInstance ServerName -Database DatabaseName` -
BackupFile““文件路径””-ReplaceDatabase

powershell恢复数据库

尽管以上所有方法都可以帮助您从备份中恢复SQL Express数据库,但是每种方法在使用上都有一定的局限性。如果您想尝试更直观、更灵活的方式来执行SQL Server (Express) 备份和还原,傲梅企业备份网络版是个不错的选择。

它与 SSMS GUI 一样是基于单击的,不同之处在于它允许您一次备份和还原多个数据库。指定目的地时,您可以选择恢复到原始位置或新位置,这样您甚至可以将数据库还原到另一个 SQL Server直接地。

值得注意的是,傲梅企业备份网络版 是一款集中式企业端点备份软件。有了它,您可以为 LAN 内的多台 PC、工作站和服务器创建和管理备份。

要使用它,首先您需要下载并安装傲梅企业备份网络版作为中央控制台。您可以试用以下 30 天免费试用版:

然后,启动它并根据需要“安装客户端程序”。它可以手动或远程完成。 对于手动安装了客户端程序的计算机,您需要通过输入账号或发送消息的方式请求对其“进行控制”。

安装客户端程序

确认后,您可以从中央控制台为所有受控客户端创建集中备份任务。为了恢复SQL Express数据库,首先您需要导航到“任务”>“新任务”> SQL Server 备份以进行数据库备份。

sql服务器备份

设置窗口包括三个步骤:

步骤 1. 单击+ 添加计算机以选择具有要备份的数据库的客户端计算机。

添加电脑

步骤 2. 单击+ 添加以选择源数据。您可以在客户端添加多个数据库甚至实例。

添加数据库

步骤 3. 单击选择框并点击“存储”以输入目标共享或 NAS 的路径。您还可以单击“计划”来设置自动备份,或管理备份加密或压缩等“设置”。然后单击“开始备份”

选择目标路径

如何从备份中恢复SQL Express数据库:

步骤 1. 创建的任务将列在“任务”选项卡下,您可以随时从中恢复数据库。单击右上角的“高级”或任务,从菜单中选择“恢复”。或者您可以展开任务,右键单击特定的源计算机以将其“还原”

从备份任务恢复数据库

步骤 2. 选择要还原的计算机后,您可以“选择”备份中的数据库(全部或特定)进行还原。如果您多次执行此任务,您还可以在右上角选择特定的完整或差异备份。

选择要恢复的内容

第 3 步。 最后,选择要还原到的目的地。您可以“恢复到原始位置”,或“恢复到新位置”。这里的“新位置”可以是另一台客户端计算机上的另一个 SQL Server。单击“开始还原”以执行它。

恢复到新位置

结论

本文提供了SQL Express 2012/2014/2016/2017/2019从备份恢复数据库的不同解决方案。其中傲梅企业备份网络版功能强大,简单易用,无需任何专业知识。

它适用于您 LAN 上的所有 PC 和服务器,不仅支持 SQL数据库,还支持计算机文件、系统、磁盘、分区。你可以把它当作一个完整的服务器备份软件.