如何将sql数据库备份到网络共享

必须定期备份SQL数据库。我们已经介绍了可以轻松地将所有SQL server数据库备份到本地硬盘驱动器的方法,但这并不能防止驱动器和/或系统故障。作为针对此类灾难的额外保护层,您可以在网络共享上复制或直接创建备份。...

必须定期备份SQL数据库。我们已经介绍了可以轻松地将所有SQL server数据库备份到本地硬盘驱动器的方法,但这并不能防止驱动器和/或系统故障。作为针对此类灾难的额外保护层,您可以在网络共享上复制或直接创建备份。

本地备份,然后复制到网络共享

完成此任务的首选和最直接的方法是创建数据库的本地备份,然后将相应的备份文件复制到网络共享。您可以通过创建如下所示的批处理脚本来完成此操作:

SET LocalFolder=C:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLBackup SqlCmd -E -Q “Backup Database MyDB To Disk=’%LocalFolder%MyDB.bak'” XCopy “%LocalFolder%MyDB.bak” “\192.168.16.55BackupDatabases” /Z /V DEL “%LocalFolder%MyDB.bak”

此脚本执行以下操作(逐行):

  1. 将变量设置为本地SQL备份目录。
  2. 创建MyDB的SQL备份(使用Windows身份验证)到本地SQL备份目录。
  3. 将本地备份文件复制到网络共享。
  4. 删除本地备份文件。

同样,这是首选方法,因为它是现成的,而且备份失败的可能性很小,因为备份是在本地磁盘上创建的。但是,如果没有足够的磁盘空间来存储备份文件的本地副本,此操作将失败。在这种情况下,您需要添加额外的磁盘空间或直接备份到网络共享。

直接备份到网络共享

通常,当您尝试使用以下命令直接创建到网络共享的备份时:

SqlCmd -E -Q “Backup Database MyDB To Disk=’\192.168.16.55BackupDatabasesMyDB.bak'”

您很可能会遇到以下错误:

Msg 3201, Level 16, State 1, Server JF, Line 1 Cannot open backup device ‘\192.168.16.55BackupDatabasesMyDB.bak’. Operating system error 5(Access is denied.). Msg 3013, Level 16, State 1, Server JF, Line 1 BACKUP DATABASE is terminating abnormally.

尽管您使用Windows身份验证(E开关)和Windows帐户运行SQL备份命令,以通过Windows资源管理器访问文件并将其复制到共享,但仍会发生此错误。

如何将sql数据库备份到网络共享

此操作失败的原因是,SQL命令是在运行SQL Server服务的帐户的范围内执行的。当您查看计算机上的服务列表时,很可能会看到SQL Server服务以本地系统或网络服务的身份运行(登录身份列),这些系统帐户没有网络访问权限。

在我们的系统上,“备份到网络共享”命令失败,因为我们将SQL Server服务作为本地系统运行,而本地系统又无法访问任何网络资源。

如何将sql数据库备份到网络共享

为了允许SQL直接备份到网络共享,我们必须将sqlserver服务作为一个可以访问网络资源的本地帐户来运行。

编辑SQL Server服务的属性,然后在“登录”选项卡上,将该服务配置为作为具有网络访问权限的备用帐户运行。

如何将sql数据库备份到网络共享

单击“确定”时,系统将提示您在重新启动服务之前,设置不会生效。

如何将sql数据库备份到网络共享

重新启动服务。

如何将sql数据库备份到网络共享

服务列表现在应该显示SQL Server服务正在以您配置的帐户运行。

如何将sql数据库备份到网络共享

现在,当您运行命令直接备份到网络共享时:

SqlCmd -E -Q “Backup Database MyDB To Disk=’\192.168.16.55BackupDatabasesMyDB.bak'”

您将看到一条成功消息:

Processed 152 pages for database ‘MyDB’, file ‘MyDB’ on file 1. Processed 2 pages for database ‘MyDB’, file ‘MyDB_log’ on file 1. BACKUP DATABASE successfully processed 154 pages in 0.503 seconds (2.493 MB/sec).

备份文件现在位于网络共享目录中:

如何将sql数据库备份到网络共享

网络共享注意事项

需要注意的是,backup命令希望能够直接连接到网络共享,而无需提示输入凭据。将SQL Server服务配置为运行的帐户必须与相应凭据允许访问的网络共享具有受信任的连接,否则可能会发生类似以下错误:

Msg 3201, Level 16, State 1, Server JF, Line 1 Cannot open backup device ‘\192.168.16.55BackupDatabasesMyDB.bak’. Operating system error 1326(Logon failure: unknown user name or bad password.). Msg 3013, Level 16, State 1, Server JF, Line 1 BACKUP DATABASE is terminating abnormally.

此错误表示网络共享未接受帐户的用户名和密码,命令失败。

要记住的另一个问题是,备份直接执行到网络资源,因此网络连接中的任何中断都可能导致备份失败。因此,您应该只备份到稳定的网络位置(即可能不是VPN)。

安全影响

如前所述,使用本地备份然后复制到网络共享的方法是首选的,因为它允许您以仅具有本地系统访问权限的帐户运行SQL服务。

通过将服务作为备用帐户运行,可以打开潜在安全问题的大门。例如,恶意SQL脚本可以在备用帐户下执行并攻击网络资源。此外,对相应帐户的任何更改(密码更改/过期或删除/禁用帐户)都将导致SQL Server服务无法启动。

如果确实使用备用帐户运行SQLServer实例,请务必记住这些要点。如果采取了适当的预防措施,这些都不是显示停止符,但是您应该考虑添加额外的硬盘空间,然后实现本地备份和复制,以便可以使用本地帐户运行SQL服务。

  • 发表于 2021-04-13 10:39
  • 阅读 ( 202 )
  • 分类:互联网

你可能感兴趣的文章

用wordpress建立你的博客:终极指南

...上。它最适合绝对的初学者——你不需要担心配置文件或数据库,一切都由你来处理。文字印刷机。com博客类似于Blogspot或Tumblr等任何其他在线博客服务。这是从WordPress开始的最简单的方法,但是它对你可以使用的插件和主题有...

  • 发布于 2021-03-21 12:15
  • 阅读 ( 290 )

hostinger提供价格合理的网络托管和高级功能

...存储和带宽,但还有更多。您的计划还包括无限的***站SQL数据库,无限的电子邮件地址,并访问24/7/365支持。 ...

  • 发布于 2021-03-21 19:38
  • 阅读 ( 204 )

如何在bluehost上安装wordpress

... 备份旧的WordPress文件 备份旧的SQL数据库 在Bluehost上创建一个新的、匹配的SQL数据库 将旧的Wordpress文件上载到Bluehost ...

  • 发布于 2021-03-22 22:45
  • 阅读 ( 204 )

如何备份和恢复synology nas配置

...入大部分旧设置。让我们看看备份过程存储了什么,以及如何创建和使用备份。 synology nas配置备份包含哪些内容 创建Synology NAS配置文件的备份时,该备份文件中包含以下项目: 用户、组和共享文件夹配置:这包括默认管理员...

  • 发布于 2021-04-07 11:55
  • 阅读 ( 132 )

如何把树莓pi变成低功耗网络存储设备

...耗和网络存储设备的食谱。请继续阅读,我们将向您展示如何设置自己的基于Pi的NAS。 我为什么要这么做? 拥有一个始终在线的网络存储设备的好处是,让您的数据(或备份目标)始终可供网络内外的计算机访问非常方便。在...

  • 发布于 2021-04-12 01:20
  • 阅读 ( 151 )

如何使用crashplan免费远程备份数据

...程中冒数据风险。今天我们来看看CrashPlan备份套件,以及如何使用它进行免费远程备份。 一个好的备份解决方案使用简单,可以创建数据的多个副本(包括异地版本),而且成本低廉,您可以继续为此付费。CrashPlan提供了一个...

  • 发布于 2021-04-12 22:37
  • 阅读 ( 204 )

使用bginfo构建网络计算机的系统信息数据库

...具的一个鲜为人知的特性是能够将系统信息自动保存到SQL数据库或其他数据文件中。只需几分钟的设置工作,您就可以轻松地配置BGInfo,将所有网络计算机的系统信息记录在一个集中的存储位置。然后,您可以使用这些数据来监...

  • 发布于 2021-04-13 02:12
  • 阅读 ( 153 )

使sql server数据库维护简单的批处理脚本

...之外,SQL Server还提供了各种任务和功能,它们可以提高数据库的性能和可靠性。我们之前已经向您展示了如何使用简单的命令行脚本备份SQL Server数据库,因此我们将以同样的方式提供一个脚本,它将允许您轻松地执行常见的维...

  • 发布于 2021-04-13 07:02
  • 阅读 ( 179 )

使用sql server management studio还原sql数据库备份

我们之前介绍过使用命令行进行简单的SQL数据库还原,该命令行非常适合还原在同一个SQL Server安装上创建的备份文件,但是,如果您要还原在不同安装上创建的备份,或者只是喜欢点击式界面,使用SQLServerManagementStudio(或速成...

  • 发布于 2021-04-13 11:29
  • 阅读 ( 169 )

使用linux将旧计算机转变为网络备份、流式处理或Torrent计算机

...务器在您的家庭中也同样有用。在本指南中,我们将介绍如何在家中创建您自己的服务器,您可以将其放在衣柜中,并在24/7离开,随时准备进行您可能需要的任何流式处理、下载或备份。更新:在过去的几年里,Ubuntu已经成为...

  • 发布于 2021-05-26 07:38
  • 阅读 ( 147 )
brightprobl
brightprobl

0 篇文章

相关推荐