如何使用作业将数据库备份到服务器

时间:2016-02-03 12:41:49

标签: sql-server

我已经搜索了一段时间,无法使用SQL Server Agent找到有关备份到服务器的任何内容。

是否有办法将数据库备份到服务器而不是本地磁盘。 我没有搜索从一台服务器到另一台服务器的备份,但我正在搜索备份到我的数据库所在的现有服务器。

我能找到的就是:

BACKUP DATABASE [Name] TO DISK = N'C:\some path goes here'

对于这样一个新手问题感到抱歉,但我是SQL和tnx的新手。

3 个答案:

答案 0 :(得分:1)

只需使用UNC Path指定目标服务器并分享:

BACKUP DATABASE [Name] TO DISK = N'\\server\share'

如果您需要通过Sql Agent提供帮助,此链接将引导您完成整个过程:

  

http://blogs.msdn.com/b/sqlagent/archive/2010/10/12/create-a-database-backup-job-using-sql-server-management-studio.aspx

注意这样做。理解FULL和SIMPLE恢复模式之间的区别很重要,以及在备份事务日志方面的意义。

答案 1 :(得分:0)

打开终端并输入: sudo tcsh

pico / etc / crontab 要么 nano / etc / crontab

根据您的具体情况添加以下一行。这将在每天凌晨1点安排备份。

远程主机备份,链接PATH到mysqldump: 0 1 * * * mysqldump -h mysql.host.com -uusername -ppassword --opt database> /path/to/directory/filename.sql

远程主机备份:

0 1 * * * /usr/local/mysql/bin/mysqldump -h mysql.host.com -uusername -ppassword --opt database > /path/to/directory/filename.sql

本地主机mysql备份:

0 1 * * * /usr/local/mysql/bin/mysqldump -uroot -ppassword --opt database > /path/to/directory/filename.sql

(-p和密码或-u和username之间没有空格 - 用正确的数据库用户名替换root。)

答案 2 :(得分:0)

一个很好的起点是Ola Hallengren's SQL Server Maintenance SolutionMaintenanceSolution.sql脚本将创建SQL Server代理作业,以便安排数据库维护。

关于通过代理到远程备份路径的预定备份的具体问题:

    {li> Directory DatabaseBackup存储过程的参数控制创建备份的位置。
  1. 使用MaintenanceSolution.sql创建代理作业和维护对象时,将@BackupDirectory变量设置为远程服务器路径(例如\\FileServer\Backups
  2. 在默认代理作业配置下,代理服务帐户需要访问远程路径
  3. 更完整的演练位于FAQ的顶部。