SQL Server数据库远程备份和还原
sqlserver 数据库备份方法

sqlserver 数据库备份方法SQL Server是一款常用的关系型数据库管理系统,用于存储和管理大量的数据。
在使用SQL Server数据库时,数据备份是非常重要的一项工作,可以保证数据的安全性和可恢复性。
本文将介绍SQL Server数据库备份的方法和步骤。
一、全备份全备份是最常用和最基本的备份方式,它将数据库的所有数据和日志都备份到一个文件中。
全备份可以保证数据库的完整性和一致性,同时也可以通过全备份文件来恢复数据库。
进行全备份的步骤如下:1. 打开SQL Server管理工具,连接到目标数据库实例。
2. 在“对象资源管理器”中选择要备份的数据库。
3. 右键点击选中的数据库,选择“任务”-“备份”。
4. 在“备份数据库”对话框中,选择“备份类型”为“完整”,并选择备份文件的路径和名称。
5. 点击“确定”按钮,开始备份数据库。
二、差异备份差异备份是基于全备份的增量备份方式,它只备份上次全备份之后发生变化的数据和日志。
差异备份可以减少备份文件的大小和备份时间,同时也方便了数据恢复操作。
进行差异备份的步骤如下:1. 打开SQL Server管理工具,连接到目标数据库实例。
2. 在“对象资源管理器”中选择要备份的数据库。
3. 右键点击选中的数据库,选择“任务”-“备份”。
4. 在“备份数据库”对话框中,选择“备份类型”为“差异”,并选择备份文件的路径和名称。
5. 点击“确定”按钮,开始备份数据库。
三、事务日志备份事务日志备份是备份SQL Server数据库的事务日志信息,可以用于恢复数据库到某个特定时间点的状态。
事务日志备份可以提供更精确的数据恢复能力,同时也可以释放事务日志空间。
进行事务日志备份的步骤如下:1. 打开SQL Server管理工具,连接到目标数据库实例。
2. 在“对象资源管理器”中选择要备份的数据库。
3. 右键点击选中的数据库,选择“任务”-“备份”。
4. 在“备份数据库”对话框中,选择“备份类型”为“事务日志”,并选择备份文件的路径和名称。
SQLSERVER完整数据库还原(完整恢复模式)

SQLSERVER完整数据库还原(完整恢复模式)数据库完整还原的⽬的是还原整个数据库。
整个数据库在还原期间处于脱机状态。
在数据库的任何部分变为联机之前,必须将所有数据恢复到同⼀点,即数据库的所有部分都处于同⼀时间点并且不存在未提交的事务。
在完整恢复模式下,还原数据备份之后,必须还原所有后续的事务⽇志备份,然后再恢复数据库。
您可以将数据库还原到这些⽇志备份之⼀的特定恢复点。
恢复点可以是特定的⽇期和时间、标记的事务或⽇志序列号 (LSN)。
还原数据库时,特别是在完整恢复模式或⼤容量⽇志恢复模式下,您应使⽤⼀个还原顺序。
还原顺序由通过⼀个或多个还原阶段来移动数据的⼀个或多个还原操作组成。
⼀、将数据库还原到故障点通常,将数据库恢复到故障点分为下列基本步骤:1.备份活动事务⽇志(称为⽇志尾部)。
此操作将创建结尾⽇志备份。
如果活动事务⽇志不可⽤,则该⽇志部分的所有事务都将丢失。
重要在⼤容量⽇志恢复模式下,备份任何包含⼤容量⽇志操作的⽇志都需要访问数据库中的所有数据⽂件。
如果⽆法访问该数据⽂件,则不能备份事务⽇志。
在这种情况下,您必须⼿动重做⾃最近备份⽇志以来所做的所有更改。
2.还原最新完整数据库备份⽽不恢复数据库 (RESTORE DATABASE database_name FROM backup_device WITH NORECOVERY)。
3.如果存在差异备份,则还原最新的差异备份⽽不恢复数据库 (RESTORE DATABASE database_name FROM differential_backup_device WITH NORECOVERY)。
还原最新差异备份可减少必须还原的⽇志备份数。
4.从还原备份后创建的第⼀个事务⽇志备份开始,使⽤ NORECOVERY 依次还原⽇志。
5.恢复数据库 (RESTORE DATABASE database_name WITH RECOVERY)。
此步骤也可以与还原上⼀次⽇志备份结合使⽤。
Sqlserver数据库备份与还原

Sqlserver数据库备份与还原⼀、数据库存储概述1、数据⽂件类型· Primary data files:每个数据库都有⼀个单独的主要数据⽂件,默认以.mdf扩展名。
主要数据⽂件不仅包含数据信息,还包含与该数据库结构相关的信息。
创建数据库时,数据库结构相关信息不仅存在于master数据库中,同时还包含在primary data file上.· Secondary data files⼀个数据库可以有⼀个或者多个⼆级数据⽂件,默认以.ndf为扩展名。
⼀般来说⼆级数据⽂件并不是必须的,因为⼆级数据⽂件不包含⽂件位置等信息。
· Transaction logs: 数据库必须⾄少有⼀个事务⽇志⽂件,默认以.ldf为扩展名。
⽇志是整个数据库的命脉,事务⽇志不可读的话,将⽆法对数据库进⾏任何操作。
当你在数据库上进⾏数据操作时,数据并不是直接写⼊数据⽂件,⽽是先将相关操作信息写⼊事务⽇志⽂件。
当⼀个事务结束时,该事务被标记为已提交,但这也并不意味着数据从⽇志⽂件写⼊了数据⽂件中。
⼀个标记为已提交的事务仅仅意味着所有与该事务相关的元素已经成功完成。
The buffer cache may be updated, but not necessarily the data file.检查点(checkpoint)会周期性的发⽣。
检查点发⽣时,是确认所有已提交的事务,不管是在buffer cache或者事务⽇志中,都被写⼊相关的数据⽂件中。
检查点(checkpoint)可以通过以下⽅式来触发:1、显⽰调⽤checkpoint命令;2、Recover Interval 实例设置的周期达到(⽤来标识多久发⽣⼀次checkpoint)3、做了数据库备份(在简单模式下);4、数据库⽂件结构被改变(在简单模式下);5、数据库引擎被结束。
⼀般来说,写数据的过程是由系统⾃动完成的,如下图所⽰,但数据并不是直接写⼊.mdf或者.ndf ⽂件中,⽽是先将有关变化写⼊事务⽇志中,这也是数据库中的write-ahead机制。
sql 2008数据库还原操作说明

SQL Server 2008数据库还原操作说明一、概述SQL Server 2008是一个强大的数据库管理系统,它提供了多种数据恢复的选项,包括备份和还原。
备份是创建数据库副本的过程,而还原是将备份的副本重新加载到数据库中。
在数据丢失或损坏的情况下,还原操作是非常重要的。
二、还原前的准备在进行还原操作之前,需要确保以下几点:1.确保你有最新的数据库备份。
如果没有备份,那么无法还原数据。
2.确保目标数据库实例已经停止或处于单用户模式。
3.确保你有足够的磁盘空间来存储还原过程中的临时文件。
三、还原操作步骤以下是还原操作的步骤:1.打开SQL Server Management Studio (SSMS),连接到目标数据库实例。
2.在对象资源管理器中,展开服务器节点,然后展开“数据库”节点。
3.右键单击要还原的数据库,然后选择“任务” -> “还原” -> “数据库…”。
4.在“源和恢复类型”页上,选择“从设备”并浏览到包含备份文件的路径。
选择要还原的备份类型(例如,完整、差异或事务日志备份)。
5.在“选择要还原的备份”页上,选择要还原的备份日期和时间。
6.在“选项”页上,根据需要选择其他选项,例如覆盖现有数据库或限制用户访问。
7.单击“确定”开始还原过程。
8.等待还原过程完成。
这可能需要一些时间,具体取决于数据库的大小和系统性能。
9.验证数据库是否已成功还原。
可以尝试连接到数据库并执行一些查询来验证数据是否完整。
四、注意事项在执行还原操作时,需要注意以下几点:1.确保在生产环境之外的测试环境中进行还原操作,以避免对生产数据造成不可逆的损失。
2.在进行还原操作之前,请务必备份当前数据库的副本,以防还原过程中出现任何问题。
SQLServer数据库的备份详细介绍及注意事项

SQLServer数据库的备份详细介绍及注意事项SQL Server 备份前⾔为什么要备份?理由很简单——为了还原/恢复。
当然,如果不备份,还可以通过磁盘恢复来找回丢失的⽂件,不过SQL Server很⽣⽓,后果很严重。
到时候你就知道为什么先叫你备份⼀次再开始看⽂章了。
∩__∩。
本系列将介绍SQL Server所有可⽤的备份还原功能,并尽可能⽤实例说话。
什么是备份?SQL Server基于Windows,以⽂件形式存放资料,所以备份就是Windows上SQL Server相关⽂件的⼀个某个时间点的副本。
根据备份类型的不同,副本的种类和内容也有不同。
备份类型有哪些?SQL Server ⽬前版本中,可⽤的备份类型有:完整数据库备份、差异数据库备份、事务⽇志备份(后称⽇志备份)、⽂件和⽂件组备份、部分备份,根据SQL Server版本不同,有些备份类型不⽀持,另外根据恢复模式的不同,某些备份类型也不⽀持。
什么是恢复模式?很多⼈只把关注点放在备份上⾯,⽽没有在意恢复模式,其实所有的备份都应该从恢复模式作为切⼊点。
恢复模式实际上是⼀个控制备份还原的⾏为的数据库级别选项。
SQL Server 在当前所有发布版本中只有三种恢复模式:简单恢复模式(后⾯简称简单模式),⼤容量⽇志恢复模式(后⾯简称⼤容量模式),完整恢复模式(后称完整模式)。
本⽂从恢复模式开始,提醒⼀下,绝⼤部分的专业属于都会陆续解释,如果读者有不明⽩,可以继续往下看或者上⽹搜索:1.简单模式,Simple recovery model:某些操作可以被最⼩⽇志化。
这种模式下,不⽀持⽇志备份、时间点恢复和页恢复。
且⽂件恢复功能仅限于次要数据⽂件中的只读⽂件。
2.⼤容量⽇志模式,Bulk-logged recovery model:和完整模式类似,有时候可以理解为完整模式于简单模式的过渡模式。
这种模式对某些⼤容量操作进⾏最⼩⽇志化,⽀持完整备份中的备份还原策略,但是由于某些操作被最⼩⽇志化,所以不能保证时间点恢复。
SQLServer数据库备份和恢复

SQLServer数据库备份和恢复作为一位数据库管理员,备份和恢复数据库是日常工作中必不可少的任务。
在SQLServer中,备份和恢复数据库是非常简单而且快速的,但是在备份和恢复过程中需要注意一些要点,本文将对此进行介绍和分析。
一、备份数据库在备份数据库之前,需要了解备份的种类和使用场景。
常见的备份种类有完整备份、差异备份和日志备份。
完整备份是将数据库的所有数据和日志都备份下来,差异备份是在完整备份的基础上备份自上次完整备份之后发生的所有变化,而日志备份是备份从最后一次备份到本次备份之间发生的所有交易记录。
是否进行完整备份,差异备份还是日志备份,取决于数据需要恢复到哪一个时间点以及备份的频率和容量。
完整备份备份的数据和所有交易记录,可以恢复到任意一个时间点;差异备份备份的数据是上次备份之后的所有变化,可以恢复到差异备份之后的任意一个时间点;而日志备份只备份从上次备份到本次备份之间的交易记录,只能在连续的日志备份中进行数据的恢复。
在进行备份之前,需要关闭数据库以保证备份的一致性。
可以使用以下SQL语句进行完整备份:BACKUP DATABASE database_nameTO DISK = 'backup_path\backup_file_name.bak'WITH FORMAT, INIT其中,database_name 是要备份的数据库名称,backup_path 是备份文件的存储路径,backup_file_name 是备份文件的名称。
WITH FORMAT参数表示每次备份都会覆盖之前的备份文件并且重新初始化备份集,INIT参数表示让备份文件从头开始,不保存之前的任何备份数据。
需要进行差异备份时,可以使用以下SQL语句:BACKUP DATABASE database_nameTO DISK = 'backup_path\backup_file_name.diff'WITH DIFFERENTIAL其中,DIFFERENTIAL参数表示进行差异备份。
数据库常用的备份和恢复方法

数据库常用的备份和恢复方法1. 备份方法:使用数据库管理系统自带的备份工具,如MySQL的mysqldump命令或SQL Server的Backup Database语句。
描述:数据库管理系统提供了备份工具,可以将数据库的数据和结构导出为一个备份文件,通常以.sql格式保存。
用户可以定期使用这些备份工具进行全量备份或增量备份。
2. 备份方法:使用文件系统级别的数据复制工具进行备份,如使用rsync或Windows 的文件复制功能。
描述:可以通过文件系统级别的复制工具将数据库的文件直接复制到其他存储设备上,实现备份目的。
这种备份方法适用于非常大的数据库,因为它可以减少备份和恢复所需的时间。
3. 备份方法:使用虚拟机快照进行备份。
描述:如果数据库运行在虚拟机上,可以使用虚拟机快照功能来创建数据库的备份。
快照是虚拟机当前状态的拷贝,可以在需要的时候还原到该状态。
4. 备份方法:使用存储级别的快照功能进行备份。
描述:一些存储设备提供了快照功能,可以在存储级别对数据库进行备份。
这种备份方法通常能够在不影响数据库性能的情况下实现备份,而且可以实现非常快速的恢复。
5. 备份方法:使用第三方备份工具进行备份。
描述:市面上有许多第三方备份工具,可以根据实际需求选择适合自己数据库的备份工具。
这些备份工具通常提供更加灵活和高级的备份和恢复功能。
6. 恢复方法:使用数据库管理系统自带的恢复工具进行数据库的还原。
描述:数据库管理系统自带的恢复工具可以将备份文件中的数据和结构导入到数据库中,还原成原来的状态。
7. 恢复方法:使用事务日志进行数据库的恢复。
描述:数据库管理系统中的事务日志记录了数据库的变更历史,可以利用事务日志进行数据库的恢复,还原到数据库崩溃前的状态。
8. 恢复方法:使用数据库管理系统提供的点对点恢复工具进行数据库的恢复。
描述:一些数据库管理系统提供了特殊的恢复工具,可以直接从备份文件中进行点对点恢复,即将备份数据直接还原到生产环境中。
sqlserver数据库的备份与恢复sql实现

sqlserver数据库的备份与恢复sql实现sqlserver数据库的备份与恢复sql实现利用T-SQL语句,实现数据库的备份与还原的功能体现了SQL Server中的四个知识点:1.获取SQL Server服务器上的默认目录2.备份SQL语句的使用3.恢复SQL语句的使用,同时考虑了强制恢复时关闭其他用户进程的处理4.作业创建SQL语句的使用/*1.--得到数据库的文件目录@dbname 指定要取得目录的数据库名如果指定的数据不存在,返回安装SQL时设置的默认数据目录如果指定NULL,则返回默认的SQL备份目录名*//*--调用示例select 数据库文件目录=dbo.f_getdbpath('tempdb'),[默认SQL SERVER数据目录]=dbo.f_getdbpath(''),[默认SQL SERVER备份目录]=dbo.f_getdbpath(null)--*/if exists (select * from dbo.sysobjects where id =object_id(N'[dbo].[f_getdbpath]') and xtype in (N'FN', N'IF', N'TF')) drop function [dbo].[f_getdbpath]GOcreate function f_getdbpath(@dbname sysname)returns nvarchar(260)assqlserver数据库的备份与恢复sql实现begindeclare @re nvarchar(260)if @dbname is null or db_id(@dbname) is nullselect @re=rtrim(reverse(filename)) from master..sysdatabases where name='master' elseselect @re=rtrim(reverse(filename)) from master..sysdatabases where name=@dbnameif @dbname is nullset @re=reverse(substring(@re,charindex('/',@re)+5,260))+'BACKUP' elseset @re=reverse(substring(@re,charindex('/',@re),260))return(@re)endgo/*2.--备份数据库*//*--调用示例--备份当前数据库exec p_backupdb @bkpath='c:/',@bkfname='db_/DATE/_db.bak'--差异备份当前数据库exec p_backupdb@bkpath='c:/',@bkfname='db_/DATE/_df.bak',@bktype='DF' --备份当前数据库日志exec p_backupdb@bkpath='c:/',@bkfname='db_/DATE/_log.bak',@bktype='LOG' --*/if exists (select * from dbo.sysobjects where id =object_id(N'[dbo].[p_backupdb]') and __(id, N'IsProcedure') = 1) sqlserver数据库的备份与恢复sql实现drop procedure [dbo].[p_backupdb]GOcreate proc p_backupdb@dbname sysname='', --要备份的数据库名称,不指定则备份当前数据库@bkpath nvarchar(260)='', --备份文件的存放目录,不指定则使用SQL 默认的备份目录@bkfname nvarchar(260)='', --备份文件名,文件名中可以用/DBNAME/代表数据库名,/DATE/代表日期,/TIME/代表时间@bktype nvarchar(10)='DB', --备份类型:'DB'备份数据库,'DF' 差异备份,'LOG' 日志备份@appendfile bit=1 --追加/覆盖备份文件asdeclare @sql varchar(8000)if isnull(@dbname,'')='' set @dbname=db_name()if isnull(@bkpath,'')='' set @bkpath=dbo.f_getdbpath(null)if isnull(@bkfname,'')='' set@bkfname='/DBNAME/_/DATE/_/TIME/.BAK' set@bkfname=replace(replace(replace(@bkfname,'/DBNAME/',@dbname) ,'/ DATE/',convert(varchar,getdate(),112)),'/TIME/',replace(convert(varchar,getdate(),108),':',''))set @sql='backup '+case @bktype when 'LOG' then 'log ' else'database ' end +@dbname+' to disk='''+@bkpath+@bkfname+''' with '+case @bktype when 'DF' then '__NTIAL,' else '' end+case @appendfile when 1 then 'NOINIT' else 'INIT' endprint @sqlexec(@sql)go/*3.--恢复数据库sqlserver数据库的备份与恢复sql实现/*--调用示例--完整恢复数据库exec p_RestoreDb @bkfile='c:/db_2022年1015_db.bak',@dbname='db'--差异备份恢复exec p_RestoreDb@bkfile='c:/db_2022年1015_db.bak',@dbname='db',@retype='DBNOR'exec p_backupdb @bkfile='c:/db_2022年1015_df.bak',@dbname='db',@retype='DF'--日志备份恢复exec p_RestoreDb@bkfile='c:/db_2022年1015_db.bak',@dbname='db',@retype='DBNOR'exec p_backupdb @bkfile='c:/db_2022年1015_log.bak',@dbname='db',@retype='LOG'--*/if exists (select * from dbo.sysobjects where id =object_id(N'[dbo].[p_RestoreDb]') and __(id, N'IsProcedure') = 1) drop procedure [dbo].[p_RestoreDb]create proc p_RestoreDb@bkfile nvarchar(1000), --定义要恢复的备份文件名@dbname sysname='', --定义恢复后的数据库名,默认为备份的文件名@dbpath nvarchar(260)='', --恢复后的数据库存放目录,不指定则为SQL的默认数据目录@retype nvarchar(10)='DB', --恢复类型:'DB'完事恢复数据库,'DBNOR' 为差异恢复,日志恢复进行完整恢复,'DF' 差异备份的恢复,'LOG' 日志恢复@filenumber int=1, --恢复的文件号@overexist bit=1, --是否覆盖已经存在的数据库,仅@retype为@killuser bit=1 --是否关闭用户使用进程,仅@overexist=1时有效asdeclare @sql varchar(8000)sqlserver数据库的备份与恢复sql实现--得到恢复后的数据库名if isnull(@dbname,'')=''select @sql=reverse(@bkfile),@sql=case when charindex('.',@sql)=0 then @sqlelse substring(@sql,charindex('.',@sql)+1,1000) end,@sql=case when charindex('/',@sql)=0 then @sqlelse left(@sql,charindex('/',@sql)-1) end,@dbname=reverse(@sql)--得到恢复后的数据库存放目录if isnull(@dbpath,'')='' set @dbpath=dbo.f_getdbpath('')--生成数据库恢复语句set @sql='restore '+case @retype when 'LOG' then 'log ' else'database ' end+@dbname +' from disk='''+@bkfile+''''+' with file='+cast(@filenumber as varchar)+case when @overexist=1 and @retype in('DB','DBNOR') then',replace' else '' end +case @retype when 'DBNOR' then ',__ERY' else ',__Y' end print @sql--添加移动逻辑文件的处理if @retype='DB' or @retype='DBNOR'begin--从备份文件中获取逻辑文件名declare @lfn nvarchar(128),@tp char(1),@i int--创建临时表,保存获取的信息create table #tb(ln nvarchar(128),pn nvarchar(260),tp char(1),fgn nvarchar(128),sz numeric(20,0),Msz numeric(20,0))--从备份文件中获取信息insert into #tb exec('restore filelistonly from disk='''+@bkfile+'''')declare #f cursor for select ln,tp from #tbopen #fsqlserver数据库的备份与恢复sql实现set @i=0while @@fetch_status=0beginselect @sql=@sql+',move '''+@lfn+''' to'''+@dbpath+@dbname+cast(@i as varchar) +case @tp when 'D' then '.mdf''' else '.ldf''' end,@i=@i+1fetch next from #f into @lfn,@tpendclose #fdeallocate #fend--关闭用户进程处理if @overexist=1 and @killuser=1begindeclare @spid varchar(20)declare #spid cursor forselect spid=cast(spid as varchar(20)) from master..sysprocesses where dbid=db_id(@dbname)open #spidwhile @@fetch_status=0beginexec('kill '+@spid)fetch next from #spid into @spidendclose #spiddeallocate #spidend--恢复数据库exec(@sql)gosqlserver数据库的备份与恢复sql实现/*4.--创建作业*//*--调用示例--每月执行的作业exec p_createjob @jobname='mm',@sql='select * from syscolumns',@freqtype='month'--每周执行的作业exec p_createjob @jobname='ww',@sql='select * from syscolumns',@freqtype='week'--每日执行的作业exec p_createjob @jobname='a',@sql='select * from syscolumns'--每日执行的作业,每天隔4小时重复的作业exec p_createjob @jobname='b',@sql='select * fromsyscolumns',@fsinterval=4--*/if exists (select * from dbo.sysobjects where id =object_id(N'[dbo].[p_createjob]') and __(id, N'IsProcedure') = 1) drop procedure [dbo].[p_createjob]GOcreate proc p_createjob@jobname varchar(100), --作业名称@sql varchar(8000), --要执行的命令@dbname sysname='', --默认为当前的数据库名@freqtype varchar(6)='day', --时间周期,month 月,week 周,day 日@fsinterval int=1, --相对于每日的重复次数@time int=__ --开始执行时间,对于重复执行的作业,将从0点到23:59分asif isnull(@dbname,'')='' set @dbname=db_name()sqlserver数据库的备份与恢复sql实现--创建作业exec msdb..sp_add_job @job_name=@jobname--创建作业步骤exec msdb..sp_add_jobstep @job_name=@jobname,@step_name = '数据处理',@subsystem = 'TSQL',@database_name=@dbname,@command = @sql,@retry_attempts = 5, --重试次数@retry_interval = 5 --重试间隔--创建调度declare @ftype int,@fstype int,@ffactor intselect @ftype=case @freqtype when 'day' then 4when 'week' then 8when 'month' then 16 end,@fstype=case @fsinterval when 1 then 0 else 8 endif @fsinterval1 set @time=0set @ffactor=case @freqtype when 'day' then 0 else 1 end EXEC msdb..sp_add_jobschedule @job_name=@jobname, @name = '时间安排',@freq_type=@ftype , --每天,8 每周,16 每月@freq_interval=1, --重复执行次数@freq_subday_type=@fstype, --是否重复执行@freq_subday_interval=@fsinterval, --重复周期@freq_recurrence_factor=@ffactor,@active_start_time=@time --下午17:00:00分执行go/*--应用案例--备份方案:sqlserver数据库的备份与恢复sql实现完整备份(每个星期天一次)+差异备份(每天备份一次)+日志备份(每2小时备份一次)调用上面的存储过程来实现--*/declare @sql varchar(8000)--完整备份(每个星期天一次)set @sql='exec p_backupdb @dbname=''要备份的数据库名'''exec p_createjob @jobname='每周备份',@sql,@freqtype='week'--差异备份(每天备份一次)set @sql='exec p_backupdb @dbname=''要备份的数据库名'',@bktype='DF'' exec p_createjob @jobname='每天差异备份',@sql,@freqtype='day'--日志备份(每2小时备份一次)set @sql='exec p_backupdb @dbname=''要备份的数据库名'',@bktype='LOG''exec p_createjob @jobname='每2小时日志备份',@sql,@freqtype='day',@fsinterval=2/*--应用案例2生产数据核心库:__备份方案如下:1.设置三个作业,分别对__库进行每日备份,每周备份,每月备份2.新建三个新库,分别命名为:每日备份,每周备份,每月备份3.建立三个作业,分别把三个备份库还原到以上的三个新库。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
远程备份SQL SERVER数据库
我们使用本地的SQL 企业管理器来实现远程备份SQL SERVER数据库。
步骤如下:1,首先打开企业管理器-------展开MICROSOFT SQL SERVERS------在SQL SERVER组上右键-------选择“新建SQL SERVER 注册”如图所示:
2,打开向导后点击下一步,进入添加服务器,在可用的服务器里输入你要远程备份数据库的服务器IP ,点击添加以后,在添加的服务器栏目里就会出现刚才你所添加的服务器IP。
点击下一步。
如图所示:
3,在这一步,选择第二项,使用SQL 身份验证。
如图所示:
4,输入正确的SQL 管理员帐号和密码,点击确定以后,就将远程的服务器SQL数据库显示在本地了!如图所示:
5,展开远程服务器的数据库。
按照下图所示,就可以在本地进行远程SQL SERVER的数据库备份了。
===============================================
说明:
一、当我们真正使用SQL SERVER的超级用户进行远程备份数据库的时候,我们就能感受到这个帐号不仅带来了方便,更给服务器安全带来了不可忽视的威胁,所以这个帐号一定要和系统管理员密码那样设置的够复杂!
二、经我个人测试,发现无法用SQL SERVER 2000 来远程链接 SQL SERVER 2005.
三、以上测试均在:WINDOWS 2003 SQL SERVER2000下测试成功!
SQL Server 2000 数据库还原备份文件
1、打开Sql server 2000数据库,在数据库标签上有右键选择-》所有任务-》还原数据库
2、弹出还原数据库对话框
(1)在“常规”选项卡中的“还原为数据库(R):”后面的文本框中填写要还原后数据库的名称
(2)在“常规”选项卡中的“还原”后面的单选按钮中选择“从设备(M)”(3)在“常规”选项卡中的“参数”的“设备(V)”中点击按钮“选择设备”(4)在弹出的对话框中选择“文件名(F)”的单选按钮,在下面的选择框中选择需要还原的文件
(5)点击确定
3、点击“选择”选项卡
(1)将“在现有数据库上强制还原”选择√
(2)在下面“将数据库文件还原为(S):”下面的“逻辑文件名称”不用修改,
“移至物理文件名”是真正的存在路径,需要计算机上真实的存在
例如:D:\123\123\123.mdf D:\123\123\123. ldf
D:\123\123\ 是备份时候的路径,还原的机器上有可能不存在,所以要将路径修改为机器上的真实存在路径
(3)点击确定
MySQL ODBC进行MySQL和SQL Server转换
将MySQL数据库转换为SQL Server的数据库,或者将SQL Server数据库转换为MySQL的数据库,在NT环境下很多时候都会用到。
使用MySQL ODBC后就比较好办,可以使用SQL Server7的管理工具,也可以使用MySQL的管理工具,更可以使用其它方的管理工具。
这里介绍一个使用SQL7的MMC的方法,将SQL Server7的数据转化为MySQL的数据库,将源和目的反之,就可以将MySQL的数据库转化为SQL Server7的数据库。
1.安装MySQL的ODBC接口。
2.建立MySQL的DSN,可以建系统DSN,这里命名testMySQL,填写IP,dababase,用户名口令等项,完成。
3.在SQL7的MMC中,选择要导出的数据库,右键选择All Tasks->Export Datas。
4.开始DTS Export Wizerd:
Choose a Data Source:Microsoft OLE DB Privoder for SQL Server server:你的SQL Server7数据库的服务器
是否使用NT认证和用户名口令看你自己的了。
最后选择一个Database,如:mynews(你自己要导到MySQL中的数据库)。
5.Choose a Destination:选MySQL:
User/System DSN,如果建立过就选择,如果没有建立就新建。
6.Specify Table Copy or Query:
Copy table(s) from the source database,从源数据库拷贝表开始
7.Select Source Table:
选择要拷贝的表,如果不想仔细调整,就选择全部吧。
8.Run immediately,当然要立即执行,下一步再选完成,就开始转换。
这个转换有时一部分表可能要失败,双击失败的表格,看看什么原因,一般是SQL7的数据类型问题,作一些小的修改就应该可以了。