sqlSERVER的数据库备份是通过backup进行备份的,如果有需要可以通过建立调度的方式实现连续备份,当然也可以2000以后的sql也可以使用数据库维护计划完成数据库备份。就单单一次备份可以在企业管理器(2005以后叫SQL Server Management Studio)找到需要备份的数据库,点击右键 在所有任务中选择“备份”,按照提示备份选择就可以了
2. 怎么备份sql最安全
步骤/方法
第1步,依次单击“开始”→“所有程序”→Microsoft SQL Server→“企业管理器”,打开“企业管理器”控制台窗口。
第2步,在企业管理器控制台窗口的左窗格中依次展开“Microsoft SQL Servers/SQL Server组/local”目录树。然后用鼠标右键单击“数据库”选项,在弹出的快捷菜单中执行“所有任务”→“备份数据库”命令。
第3步,打开“SQL Server 备份”对话框,然后单击“数据库”右侧的下拉三角,从中选择要备份的数据库名称(本例采用默认的Master数据库)。在“名称”编辑框中可以键入备份生成的文件名称。接着单击“添加”按钮。
第4步,在打开的“选择备份目的”对话框中,单击“文件名”编辑框右侧浏览按钮,打开“备份设备位置”对话框。在该对话框中找到本地硬盘中用于保存备份数据库文件的文件夹(本例为L:\SQLBackup文件夹),然后在“文件名”编辑框中为备份文件键入一个合适的名称。设置完成以后单击“确定”按钮。
第5步,回到“选择备份目的”对话框,可以在“文件名”编辑框中看到刚才所作的设置,单击“确定”按钮即可。
第6步,SQL Server开始按照指定的备份目的对数据库进行备份,备份完成后会给出提示,单击“确定”按钮即可。
3. 数据库SQL 如何完全备份
1、点击开始菜单,打开sql企业管理器。
2、依次展开sqlserver根目录,并打开数据库。
3、选择要备份的数据库名,鼠标右键所有任务→备份数据库。
4、这里需要注意,如果之前有备份的话,一定要先删除之前的备份记录,不用担心只是删除记录而不是删除备份文件。
5、删除记录再点添加。
6、选择备份目的,就是要让你选择备份地点和备份文件命名。前面是路径后面是文件名,这个文件名是自定义的,可以根据时间或者其它来命名,如果想另存的话也可以点击另存为,然后确定。
7、添加保存路径后继续确定,然后会有备份进度提示,直到完成ok。
8、根据路径来检查是否有备份文件。
4. sql server数据库怎么自动备份
1 打开SQL server配置管理器,设置sql server服务里的SQL server代理服务为自动并启动。 2 启动Master Data Services Configuration Manager,登陆数据库。 3 在主界面左侧,右键点击“管理”里的“维护计划”,在下拉菜单点击“维护计划向导”。 4 点击“下一步”,填写名称,说明。选择“整个计划统筹安排或无计划”后,点击“更改”设定时间,此处设置为5小时。 5 然后勾选“备份数据库(完整)”点击“下一步”,在数据库右侧选择需要备份的数据库。点击下一步。 6 再次点击下一步,可看到正在备份,直至备份结束。 7 可以看到备份成功。至此,SQL Server数据库备份就完成了。同时,数据库自动备份也完成。
5. sql server 怎么备份
(1)完全备份
完全备份,即完整数据库备份,可以备份整个数据库,包含用户表、系统表、索引、视图和存储过程等所有数据库对象。这是大多数人常用的方式,但需要花费更多的时间和空间,所以一般推荐一周做一次完全备份。
(2)事务日志备份
事务日志备份时一个单独的文件,记录数据库的改变,备份时只需要复制上次备份以来对数据库所做的改变,可支持从数据库、差异或文件备份中快速恢复,时间少,速度快,推荐每小时甚至更频繁地备份事务日志。
(3)差异备份
6. sql2005 数据库文件太大,怎么备份比较快
18.1 备份与恢复简介
相信大多数人都会同意数据库里的数据要比数据库本身要重要得多,但是因为种种原因,如磁盘故障、计算机硬件故障、用户操作失误等,都有可能会损坏数据。为了保证在发生这些意外的时候可以最大限度地挽救数据,数据库管理员必须要经常备份数据库里的数据。SQL Server 2005提供了强大的备份和还原的功能。
18.1.1 备份类型
SQL Server 2005提供了四种备份数据库的方式:
l 完整备份:备份整个数据库的所有内容,包括事务日志。该备份类型需要比较大的存储空间来存储备份文件,备份时间也比较长,在还原数据时,也只要还原一个备份文件。
l 差异备份:是完整备份的补充,差异备份只备份上次完整备份后更改的数据。相对完整备份来说,差异备份的数据量比完整数据备份小,备份的速度也比完整备份要快。因此,差异备份通常作为经常用到的备份。在还原数据时,要先还原前一次做的完整备份后再还原最后一次所做的差异备份,这样才能让数据库里的数据恢复到与最后一次差异备份时的相同内容。
l 事务日志备份:事务日志备份只备份事务日志里的内容。事务日志记录了上一次完整备份或事务日志备份后数据库的所有变动过程。事务日志记录的是某一段时间内的数据库变动情况,因此在做事务日志备份之前,也必须要做完整备份。与差异备份类似,事务日志备份的备份文件和时间都会比较小,但是在还原数据时,除了先要还原完整备份之外,还要依次还原每个事务日志备份,而不是只还原最近一个事务日志备份。
l 文件和文件组备份:如果在创建数据库时,为数据库创建了多个数据库文件或文件组,可以使用该备份方式。使用文件和文件组备份方式可以只备份数据库中的某些文件,该备份方式在数据库文件非常庞大的时候十分有效,由于每次只备份一个或几个文件或文件组,可以分多次来备份数据库,避免大型数据库备份的时间过长。另外,由于文件和文件组备份只备份其中一个或多个数据文件,那么当数据库里的某个或某些文件损坏时,可以只还原损坏的文件或文件组备份即可。
完整备份可能比较好理解,例如说,在2006年1月1日早上8点进行了完整备份,那么将来在还原时,就可以恢复到2006年1月1日早上8点时的数据库状态。
差异备份是备份完整备份后的数据变动情况。例如在2006年1月1日早上8点进行了完整备份后,在1月2日和1月3日又进行差异备份,那么在1月2日的差异备份里记录的是从1月1日到1月2日这一段时间里的数据变动情况;而在1月3日的差异备份里记录的是从1月1日到1月3日之一段时间里的数据变动情况。因此,如果要还原到1月3日的数据,只要先还原1月1日做的完整备份,再还原1月3日做的差异备份就可以了。
事务日志备份是以事务日志文件作为备份对象,相当于将数据库里的每一个操作都记录下来了。假设在2006年1月1日早上8点进行了完整备份后,到1月2日早上8点为止,数据库里的数据变动了一百次,如果此时做了差异备份,那么差异备份记录的是第一百次数据变动后的数据库状态,而如果此时做了事务日志备份,备份的将是这一百次的数据变动情况。
再举一个例子,例如在2006年1月1日早上8点进行了完整备份后,在1月2日和1月3日又进行事务日志备份,那么在1月2日的事务日志备份里记录的是从1月1日到1月2日这一段时间里的数据变动情况;而在1月3日的事务日志备份里记录的是从1月2日到1月3日之一段时间里的数据变动情况。因此,如果要还原到1月3日的数据,只要先还原1月1日做的完整备份,再还原1月2日做的事务日志备份,最后还要还原1月3日所做的事务日志备份。
7. SQL如何备份大容量数据库
数据库备份介绍
1、备份位置
在SQL Server上,有多种备份位置可以选择,如本地磁盘,网络磁盘,远程地址,磁带等。
各种备份位置均有自己的优点和缺点。
2、逻辑备份设备
在SQL Server上,可以通过创建逻辑备份设备来完成备份。使用逻辑备份设备的好处是,当变更备份地址时,不需要更改备份脚本,只需要更改逻辑备份设备的定义即可。
创建逻辑备份设备的脚本如下:
SQL code EXEC sp_addmpdevice @devtype=’disk’,@logicalname=’MYBackup’,@physicalname=’D:\backup\mydb.bak’
删除备份设备的脚本:
SQL code Sp_dropdevice @logicalname=’MYBackup’
上述脚本只是删除逻辑备份设备的定义,下述脚本将同时删除备份文件:
SQL code Sp_dropdevice @logicalname=’MYBackup’,@devfile=’DELFILE’
使用逻辑备份设备的方法如下:
SQL code Backup database mydb to MYBackup
当然,还可在逻辑备份设备上指定过期时间等备份属性,如:
SQL code Backup database mydb to MYBackup WITH EXPIREDATE=’13/01/2010’
或:
SQL code BACKUP DATABASE mydb to MYBackup WITH RETAINDAYS=7
3、备份集与存储集
每一份备份包含于一个备份集,而一个备份集包含于一个存储集。通过系统GUI进行备份时,SQL Server会自动指定备份集和存储集,目的则是为了简化管理。用T-SQL显示指定则用如下语法:
SQL code BACKUP DATABASE mydb to MYBackup WITH RETAINDAYS=7,
NAME=’FULL’,
MEDIANAME=’ALLBackups’
NAMEs是指备份集名称,MEDIANAME是指存储集名称。
4、全备份
不管恢复模式是哪一个,所有的备份都必须要有一个全备份,特别是日志备份和差异备份,如果没有全备份的话,将无法进行恢复。
简单的全备份脚本如下所示,也可以通过维护计划来指定全备份:
SQL code BACKUP DATABASE mydb to DISK=’D:\Backup\mydb.bak’
但需要注意的是,上述命令是将数据库备份附加到当前的存在的文件上,如果不存在则创建它,并不会覆盖原有文件。要覆盖同名的备份文件,需要指定INIT参数。
SQL code BACKUP DATABASE mydb to DISK=’D:\Backup\mydb.bak’ WITH INIT
5、日志备份
在完全恢复模式或者大容量日志恢复模式下,日志备份不仅仅是恢复的需要,同时也是手工管理事务日志文件的一种方式。如果从不进行备份的话,在完全恢复模式或者大容量恢复模式下,事务日志将会持续增长,直至消耗完所在磁盘。
日志备份的脚本如下:
SQL code BACKUP LOG mydb_log TO DISK=’D:\backup\mydb.trn’
需要养成使用.trn为日志备份的扩展名的习惯。
每个在数据库上的动作都会被安排一个Log Sequence Number (LSN)。如果需要还原到指定的时间点,需要有持续的LSN记录。也就是说,在完全恢复模式或者大容量日志模式下,一个不被打断的事务日志备份链是恢复数据库的基本要求。
6、差异备份
使用日志备份来恢复时,无疑是一个很慢的过程,特别是上一个全备份的历史比较悠久时。使用差异备份,便能缩短恢复时间。事实上,差异备份只是BACKUP DATABASE的一个选项,如下:
SQL code BACKUP DATABASE mydb TO DISK=’D:\backup\mydb.dif’ WITH DIFFERENTIAL,INIT
进行数据库恢复时,先恢复数据库全备份,再恢复数据库差异备份,最后才恢复日志备份。
差 异备份是与上一次全备份紧密相连的,不管期间有多少次日志备份和差异备份,差异备份还是会从上一次全备开始备份。因此,经常会遇到这样的一种情况,在生产 库上需要临时使用数据库时,便用BACKUP DATABASE … TO DISK=’..’进行了一个备份,下一次的差异备份便会以这回的全备为准,如果过后把这个临时全备删除掉后,后面的差异备份就没用了。
差异备份并不意味着磁盘空间肯定会少,这取决于实际情况。当期间大量操作发生时,差异备份还是会变得很大。
7、错误检测
在备份过程中,备份进程会同时验证数据,或者校验不完整页(torn page),或者验证校验和(checksum)。要使用该功能,需要激活该选项。
不完整页检测(Torn-page dection)仅仅检查每一个页看是否已经写完成。如果发现一个页只有部分被写入,那么就将其标记为torn。
校验和验证(checksum validation)是一种新的页验证机制。它会为每个页添加一个值来表明该页实际的大小。虽然看起来是个代价很高影响性能的操作,但事实上,它的效率非常高,与torn-page差不多。
备份进程在备份数据库时,会通过比较在数据库里的和随着备份页写入硬盘时这两个之间的值来进行验证。但是,这个验证并不是自动完成的,需要显示指定,在GUI页面上是个选项。如果通过T-SQL来备份的话,语句如下:
SQL code BACKUP DATABASE mydb TO DISK=’D:\data\mydb.bak’ WITH CHECKSUM
如果备份过程中,发现了错误,SQL Server会错误信息写入MSDB上的SUSPECT_PAGE表里面。同时,在默认情况下,备份行为会停止的(STOP_ON_ERROR),以便管理员排查错误。
但 备份过程中的校验和验证还有另外一个选项(CONTINUE_ON_ERROR),也就是说,如果发现错误,备份过程并不会中断,而是将错误页信息记录在 MSDB..SUSPECT_PAGE上而已。需要注意的是,SUSPECT_PAGE表是有行限制的,最多只能达到1000行,如果达到了的话,备份同 样会失败。
激活校验和验证的话,很明显会影响备份的性能。但还是很有必要的。
8、安全备份
完全备份和日志备份语句还支持使用密码属性,如:
SQL code BACKUP DATABASE mydb TO DISK=’D:\mydb.bak’ WITH PASSWORD=’mydb’
所指定的密码是很容易破解的。因此,如果确实需要对某些备份数据进行加密的话,可以将备份存放于加密的文件系统或者其它安全的存储设备上。
同时,SQL Server还提供了对真实列进行加密的功能。该加密功能是工业标准。
9、条带备份
有些情况下,单独一个硬盘无法存储一个完整的数据库备份时,可以将数据库备份分成多个部分存储在不同的磁盘上,这种备份方式成为条带备份。使用条带备份的优点很明确,就是能很好的利用空间,但如果某部分备份丢失或者损坏,那整个备份将无效。
其语句如下:
SQL code BACKUP DATABASE mydb TO DISK=’D:\mydb.bak’,
DISK=’E:\mydb.bak’ WITH INIT,CHECKSUM,
CONTINUE_ON_ERROR
上述D盘和E盘上的备份是不可分割的。
10、镜像备份
与条带备份在多个磁盘上保留同一份备份不同的是,镜像备份是在不同磁盘上保留多份备份。其语句如下:
SQL code BACKUP DATABASE mydb TO DISK=’D:\mydb.bak’
MIRROR TO DISK=’E:\mydb.bak’
WITH INIT,CHECKSUM,CONTINUE_ON_ERROR
在实际情况下,对日志备份采取镜像备份方式会比较合适。
11、COPY-ONLY 备份
在差异备份里曾提到过,差异备份是建立在上一个全备份的基础上的。因此如果在一个事先安排好的备份计划里,如果在全备份和差异备份之间再进行了一次全备份后,其差异备份会被打断,如果把临时全备份删除掉后,就产生了数据丢失。
在SQL SERVER 2005以后,SQL SERVER提供了一个选项-only.使用-only选项进行的全备份便不会打算原先的备份计划,语句如下:
SQL code BACKUP DATABASE mydb TO DISK=’D:\mydb.bak’
WITH INIT,CHECKSUM,COPY_ONLY
三、文件和文件组备份
在SQL SERVER 7.0以后,SQL Server提供了filegroup的概念。文件组不仅仅提供了一个逻辑的存储地址,还允许将不同的表和索引放在不同的文件组上来提高性能和减少备份时间。
在数据存储概述上,提到了数据库有三类数据文件,一般来说,数据库至少需要两个(.mdf和.ldf)或者更多的文件。SQL Server不仅允许有多个文件存在(.ldf),还允许多个文件组存在。
一个文件组可以有多个文件,每个文件需要仔细规划好初始大小及增量。
1、默认文件组
在创建对象时,如果未明确指定文件组,那么该对象将会存放在默认的文件组上。在默认情况下,默认的文件组是primary,但由于primary文件组不仅可以包含用户数据,同时还存储着数据库结构等技术信息,因此一般建议添加额外的一个文件组,并将其指定为默认文件组。
SQL Server只能有一个默认的文件组。
修改默认文件组的语句如下:
SQL code ALTER DATABASE mydb MODIFY FILEGROUP mydb DEFAULT;
2、为对象指定文件组
当创建表或者索引时,不管是用户还是系统都需要将表或索引放在某个文件组上。如果在创建表或索引时指定文件组,那么表或索引将会存储在指定的文件组上,而不是默认的文件组。
其指定语句如下:
SQL code CREATE TABLE test( [id] int,[notes] text) on mydbdata
也可以通过GUI创建表的页面来指定文件组。
3、将对象迁移至指定文件组
如果需要变更对象的存储位置,最简单的方式则是通过GUI属性页面来进行修改通过该方法,可以直观的看到对象的迁移过程。
同时也可以通过T-SQL来修改,例如:
SQL code ALTER TABLE test drop constraint PK_test WITH (MOVE TO DATA)
4、备份数据文件
备份数据文件同样可以通过BACKUP DATABASE语句来实现。如下:
SQL code BACKUP DATABASE mydb FILE=’D:\Data\mydb.ndf’ TO DISK=’E:\Backup\mydbdata.bak’
上述语句相当于数据文件级别的全备份,与数据库级别的备份类似,文件级别上的备份也有差异备份,当然前提是要有相对应的文件全备份。
差异备份的语句如下:
SQL code BACKUP DATABASE mydb FILE=’D:\Data\mydb.ndf’
WITH DIFFERENTIAL
TO DISK=’E:\Backup\mydbdata_dif.bak’
5、备份文件组
与单独备份文件类似,也可以对文件组进行类似的备份操作。备份文件组的方式也有两种,一种是通过GUI界面指定,一种则是通过T-SQL。
T-SQL的语句如下:
SQL code BACKUP DATABASE mydb FILEGROUP=’PRIMARY’ TO DISK=’E:\Backup\mydbpri.bak’
6、不完全备份(partial backup)
在文件组备份上,不完全备份其实相当于完全备份,可以通过指定关键字READ_WRITE_FILEGROUPS来实现不完全备份。
语句如下:
SQL code BACKUP DATABASE mydb READ_WRITE_FILEGROUPS TO DISK=’D:\mydb.bak’
那不完全备份到底是什么意思呢?什么时候需要不完全备份?如果对一个文件组设置了只读,而这只读的文件组又需要进行一次备份,这时,可以不用BACKUP DATABASE语句进行备份,只需要挑个时间停止实例,然后执行不完全备份。
8. 怎么在本地sql备份另外一台电脑的sql数据库
1、可以通过附加数据库文件的方法来还原,把数据库mdf文件拷贝到目标电脑上,然后在目标电脑上打开SQL Server Management Studio管理器,右键点击数据库,选择“附加”,点击“添加…”按钮,并选择拷贝的mdf文件,最后确定即可。
2、可以通过还原数据库的方法来还原,把数据库备份bak文件拷贝到目标电脑上,然后在目标电脑上打开SQL Server Management Studio管理器,然后右键单击数据库-选择还原数据库,首先写好数据库名-选择源设备-文件-添加数据库文件(文件名是以.bak结尾的备份文件),最后确定。
9. 如何将sql2005数据库命令备份和还原
首先、点击桌面的“SQL Server Management Studio”打开,sql2005的管理器,点击“连接”登录:
一、新建数据库
1、新建数据库
右键点击“数据库”——“新建数据库”:
MSSQL2005备份还原图文教程
填写数据库名,如mydata,选择数据库保存路径,一般可以保持默认地址,点击“确定”。
2、新建用户
右键点击“安全性”——“登录名”——“新建登录名”:
MSSQL2005备份还原图文教程
填写登录名,如mydata。选择“SQL server身份验证”,输入密码。下方的“强制密码过期”不要选择,默认数据库选择您用户登陆对应的数据库,如mydata。如图:
点击“用户映射”,“映射到此登录名的用户”勾选对应的数据库,如mydata。数据库成员角色勾选“public”和“db_owner”,点“确定”。如图:
至此新建数据库就完成了。
二、还原数据库
首先将数据库备份bak文件上传到服务器,建议放到d:\mssql 目录 ,如mydata.bak。右键点击要还原的数据库,选择“任务”——“还原”——“数据库”,如图:
注意,如果放在其他目录,务必保证该目录先加上mssqluser的完全控制权限,否则还原或备份会失败。保存备份的目录也必须有这个权限!!
若不是本服务器上早期的备份,请选择“源设备”,点右侧的“…”查找bak文件,完成后下方会显示出备份集,“还原”那勾选:
然后点击“选项”,勾选“覆盖现有数据库”,“将数据库文件还原为:”的文件路径指向现在的数据库文件,点击“确定”就开始还原了,备份太大的话,还原时间要稍微长点:
还原成功后,系统会提示:
还原成功后,请检查下表的架构是否是dbo:
若是数据库名或其他架构,如为mydata架构,需要在“安全性”——“架构”,新建一个所有者为dbo的mydata架构。
新建一个所有者为dbo的mydata架构:
三、附加数据库
首先将您的数据库mdf和ldf文件上传到服务器的某个目录(一般不要放在系统盘,以免系统损坏造成数据丢失),比如d:\mssql目录,并给该目录mssqluser的完全控制权限。
注意,如果放在其他目录,务必保证该目录先加上mssqluser的完全控制权限,否则还原或备份会失败。保存备份的目录也必须有这个权限!!
其次,右键点击您的数据库,选择附加:
点击添加,添加您的mdf文件:
点击确定就可以附加成功数据库了,在数据库中能看到新附加的数据库:
注意,如果放在其他目录,务必保证该目录先加上mssqluser的完全控制权限,否则还原或备份会失败。保存备份的目录也必须有这个权限!!