数据库备份语句


怎么用SQL语句备份和恢复数据库

SQL语句备份和恢复

SQL Server:

备份命令:

BACKUP DATABASE test

TO disk = ‘c:test’

WITH FORMAT,

NAME = ‘Full Backup of MyNwind’

解释如下:

NAME = ‘Full Backup of MyNwind’ 这个是备注,随便写。

还原命令:

USE master

GO

RESTORE DATABASE test_wt

FROM disk = ‘c:test_wt’

GO

MySQL:

备份:

mysqldump u root p database_name >d:*

恢复:

mysql u root p database_name 注意:在WIN下,路径用path/*是不行的,那就用path*

sql数据库备份语句

完整备份

Backup Database NorthwindCS

To disk=’G:BackupNorthwindCS_Full_*’

差异备份

Backup Database NorthwindCS

To disk=’G:BackupNorthwindCS_Diff_*’

With Differential

日志备份,默认截断日志

Backup Log NorthwindCS

To disk=’G:BackupNorthwindCS_Log_*’

日志备份,不截断日志

Backup Log NorthwindCS

To disk=’G:BackupNorthwindCS_Log_*’

With No_Truncate

截断日志不保留

Backup Log NorthwindCS

With No_Log

或者

Backup Log NorthwindCS

With Truncate_Only

截断之后日志文件不会变小

有必要可以进行收缩

文件备份

Exec Sp_Helpdb NorthwindCS 查看数据文件

Backup Database NorthwindCS

File=’NorthwindCS’ 数据文件的逻辑名

To disk=’G:BackupNorthwindCS_File_*’

文件组备份

Exec Sp_Helpdb NorthwindCS 查看数据文件

Backup Database NorthwindCS

FileGroup=’Primary’ 数据文件的逻辑名

To disk=’G:BackupNorthwindCS_FileGroup_*’

With init

分割备份到多个目标

恢复的时候不允许丢失任何一个目标

Backup Database NorthwindCS

To disk=’G:BackupNorthwindCS_Full_*’

,disk=’G:BackupNorthwindCS_Full_*’

镜像备份

每个目标都是相同的

Backup Database NorthwindCS

To disk=’G:BackupNorthwindCS_Mirror_*’

Mirror

To disk=’G:BackupNorthwindCS_Mirror_*’

With Format 第一次做镜像备份的时候格式化目标

镜像备份到本地和远程

Backup Database NorthwindCS

To disk=’G:BackupNorthwindCS_Mirror_*’

Mirror

To disk=’\192.168.1.200BackupNorthwindCS_Mirror_*’

With Format

每天生成一个备份文件

Declare @Path Nvarchar(2000)

Set @Path =’G:BackupNorthwindCS

sql语句数据库备份简述SQLServer中四种类型的备份方法的含义 爱问

数据库备份可以分为4个备份类型。

l 全备份:创建备份完成时数据库内存在的数据的副本。l 差异备份:只记录自上次数据库备份后发生更改的数据。

差异数据库备份比数据库备份小,而且备份速度快,因此可以更经常地备份,经常备份将减少丢失数据的危险。 l 日志备份:是自上次备份事务日志后对数据库执行的所有事务的一系列记录。

可以使用事务日志备份将数据库恢复到特定的即时点(如输入多余数据前的那一点)或恢复到故障点。l 文件组备份:可以备份和还原数据库中的个别文件。

可以只还原已损坏的文件,而不用还原数据库的其余部分,从而加快了恢复速度。不同的备份类型适用的范围也不同。

全备份,可以只用一步操作完成数据的全部备份,但执行时间比较长。差异备份和日志备份,都不能独立作为一个备份集来使用,需要进行一次全备份。

文件备份必须与事务日志备份一起使用,所以文件备份只适用于完全恢复模型和大容量日志记录恢复模型。 每一种备份类型都有不足之处,要针对需要选择备份类型,或者使用几种备份方式的配合来完成数据库的备份。

经常使用备份方式组合有以下几种:l 全备份+差异备份:以一周为周期,星期日进行全备份,星期一到星期六每天进行差异备份。l 全备份+日志备份:以一周为周期,星期日进行全备份,星期一到星期六每天进行日志备份。

l 文件组备份+日志备份:备份周期取决于数据库的大小和能力,每周期分别进行一部分数据文件备份,每天进行日志备份。

sql 语句 数据库备份

给你一个vb版本的作为参考吧,思路应该一样。

还原:Private Sub restoreButton_Click() If * <> “” Then ‘如果路径不为空 If Dir(*, vbDirectory) <> “” Then ‘如果路径所在的文件存在,即路径正确 sqlString = “RESTORE DATABASE patrol FROM disk = ‘” & * & “‘” Set rs = accessSQL(sqlString) Unload Me MsgBox “数据库还原成功!”, vbOKOnly, “成功!” Else MsgBox “找不到该文件!”, vbOKOnly, “提示!” End If Else ‘如果文件路径为空 MsgBox “文件路径不能为空”, vbOKOnly, “提示!” End IfEnd Sub备份:Private Sub backupButton_Click()If * <> “” Then ‘如果路径为空 If Dir(*, vbDirectory) <> “” Then ‘如果路径所在的文件已经存在 If MsgBox(”该文件已经存在!” & vbCrLf & “要覆盖原有文件?”, vbYesNo, “警告!”) = vbYes Then GoTo next1 Else GoTo Next2 End If Else ‘不存在覆盖问题 GoTo next1 End If’备份数据库next1: sqlString = “backup database patrol to disk = ‘” & * & “‘ WITH FORMAT, NAME = ‘” & * & “‘” Set rs = accessSQL(sqlString) //查询数据库 Unload Me MsgBox “数据库备份成功”, vbOKOnly, “成功!”Else MsgBox “路径不能为空”, vbOKOnlyNext2: End IfEnd Sub。

oracle 数据库备份语句

EXP 毕竟也需要连接到数据库,也就是需要提供用户名,密码,所以你说的数据库模式导出,是无法正常实现的。但是使用DBA用户登陆,可以实现导出整个数据库的类似功能。

数据库模式:

EXP SYSTEM/PASSWD@ORACLE FULL = Y FILE = ‘*’ LOG = ‘*’

用户模式:

EXP USER/PASSWD@ORACLE FILE = ‘*’ LOG = ‘*’

表模式:

EXP USER/PASSWD@ORACLE FILE = ‘*’ LOG = ‘*’ TABLES = (‘TABLE_1′,’TABLE_2’)

IMP 语句只要把上面3个语句中的 ‘EXP’ 换成 ‘IMP’ 就行了

如果还有不明白的,可以在命令行中输入EXP HELP 或者 IMP HELP 查看帮助!

sql 语句 数据库备份

给你一个vb版本的作为参考吧,思路应该一样。

还原:

Private Sub restoreButton_Click()

If * <> “” Then ‘如果路径不为空

If Dir(*, vbDirectory) <> “” Then ‘如果路径所在的文件存在,即路径正确

sqlString = “RESTORE DATABASE patrol FROM disk = ‘” & * & “‘”

Set rs = accessSQL(sqlString)

Unload Me

MsgBox “数据库还原成功!”, vbOKOnly, “成功!”

Else

MsgBox “找不到该文件!”, vbOKOnly, “提示!”

End If

Else ‘如果文件路径为空

MsgBox “文件路径不能为空”, vbOKOnly, “提示!”

End If

End Sub

备份:

Private Sub backupButton_Click()

If * <> “” Then ‘如果路径为空

If Dir(*, vbDirectory) <> “” Then ‘如果路径所在的文件已经存在

If MsgBox(”该文件已经存在!” & vbCrLf & “要覆盖原有文件?”, vbYesNo, “警告!”) = vbYes Then

GoTo next1

Else

GoTo Next2

End If

Else ‘不存在覆盖问题

GoTo next1

End If

‘备份数据库

next1: sqlString = “backup database patrol to disk = ‘” & * & “‘ WITH FORMAT, NAME = ‘” & * & “‘”

Set rs = accessSQL(sqlString) //查询数据库

Unload Me

MsgBox “数据库备份成功”, vbOKOnly, “成功!”

Else

MsgBox “路径不能为空”, vbOKOnly

Next2: End If

End Sub

sql语句对数据库备份如何写

今天看到一篇关于ORCLE的逻辑备份,冷、热备份的帖子讲的挺好的,不过这篇文章是以ORACLE 7为例子,虽然现在已经有很好很强大的RMAN,但还是觉得有必要转过来,不能喜新厌旧嘛。

==================================================================================Oracle数据库的备份与恢复 当我们使用一个数据库时,总希望数据库的内容是可靠的、正确的,但由于计算机系统的故障(包括机器故障、介质故障、误操作等),数据库有时也可能遭到破坏,这时如何尽快恢复数据就成为当务之急。如果平时对数据库做了备份,那么此时恢复数据就显得很容易。

由此可见,做好数据库的备份是多么的重要,下面笔者就以ORACLE7为例,来讲述一下数据库的备份和恢复。ORACLE 数据库有三种标准的备份方法,它们分别为导出/导入(EXPORT/IMPORT)、冷备份、热备份。

导出备份是一种逻辑备份,冷备份和热备份是物理备份。 一、 导出/导入(Export/Import) 利用Export可将数据从数据库中提取出来,利用Import则可将提取出来的数据送回Oracle数据库中去。

1. 简单导出数据(Export)和导入数据(Import) Oracle支持三种类型的输出: (1)表方式(T方式),将指定表的数据导出。 (2)用户方式(U方式),将指定用户的所有对象及数据导出。

(3)全库方式(Full方式),将数据库中的所有对象导出。 数据导出(Import)的过程是数据导入(Export)的逆过程,它们的数据流向不同。

2. 增量导出/导入 增量导出是一种常用的数据备份方法,它只能对整个数据库来实施,并且必须作为SYSTEM来导出。在进行此种导出时,系统不要求回答任何问题。

导出文件名缺省为*,如果不希望自己的输出文件定名为*,必须在命令行中指出要用的文件名。 增量导出包括三个类型: (1)“完全”增量导出(Complete) 即备份整个数据库,比如: $exp system/manager inctype=complete file=* (2) “增量型”增量导出 备份上一次备份后改变的数据。

比如: $exp system/manager inctype=incremental file=* (3) “累计型”增量导出(Cumulative) 累计型导出方式只是导出自上次“完全” 导出之后数据库中变化了的信息。比如: $exp system/manager inctype=cumulative file=* 数据库管理员可以排定一个备份日程表,用数据导出的三个不同方式合理高效地完成。

比如数据库的备份任务可作如下安排: 星期一:完全导出(A) 星期二:增量导出(B) 星期三:增量导出(C) 星期四:增量导出(D) 星期五:累计导出(E) 星期六:增量导出(F) 星期日:增量导出(G) 如果在星期日,数据库遭到意外破坏,数据库管理员可按以下步骤来恢复数据库: 第一步:用命令CREATE DATABASE重新生成数据库结构; 第二步:创建一个足够大的附加回段。 第三步:完全增量导入A: $imp system./manager inctype= RECTORE FULL=Y FILE=A 第四步:累计增量导入E: $imp system/manager inctype= RECTORE FULL=Y FILE =E 第五步:最近增量导入F: $imp system/manager inctype=RESTORE FULL=Y FILE=F 二、 冷备份 冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提供给我们一个完整的数据库。

冷备份是将关键性文件拷贝到另外位置的一种说法。对于备份Oracle信息而言,冷备份是最快和最安全的方法。

冷备份的优点是: 1.是非常快速的备份方法(只需拷贝文件) 2.容易归档(简单拷贝即可) 3.容易恢复到某个时间点上(只需将文件再拷贝回去) 4.能与归档方法相结合,作数据库“最新状态”的恢复。 5.低度维护,高度安全。

但冷备份也有如下不足: 1.单独使用时,只能提供到“某一时间点上”的恢复。 2.在实施备份的全过程中,数据库必须要作备份而不能作其它工作。

也就是说,在冷备份过程中,数据库必须是关闭状态。 3.若磁盘空间有限,只能拷贝到磁带等其它外部存储设备上,速度会很慢。

4.不能按表或按用户恢复。 如果可能的话(主要看效率),应将信息备份到磁盘上,然后启动数据库(使用户可以工作)并将所备份的信息拷贝到磁带上(拷贝的同时,数据库也可以工作)。

冷备份中必须拷贝的文件包括: 1.所有数据文件 2.所有控制文件 3.所有联机REDO LOG文件 *文件(可选)。 值得注意的是冷备份必须在数据库关闭的情况下进行,当数据库处于打开状态时,执行数据库文件系统备份是无效的 下面是做冷备份的完整例子: (1) 关闭数据库$sqldba lmode=y SQLDBA >connect internal; SQLDBA >shutdown normal; (2) 用拷贝命令备份全部的时间文件、重做日志文件、控制文件、初始化参数文件 SQLDBA >! cp (3) 重启Oracle数据库 $sqldba lmode=y SQLDBA >connect internal; SQLDBA >startup; 三、 热备份 热备份是在数据库运行的情况下,采用archivelog mode方式备份数据的方。

用SQL语句备份数据库

用SQL2000还原bak文件

1.右击SQL Server 2000实例下的“数据库”文件夹。就是master等数据库上一级的那个图标。选择“所有任务”,“还原数据库”

2.在“还原为数据库”中填上你希望恢复的数据库名字。这个名字应该与你的源码中使用的数据库名字一致。

3.在弹出的对话框中,选“从设备”

4.点击“选择设备”

5.点击“添加”

6.点击“文件名”文本框右侧的“。”按钮,选中你的“.BAK”文件,并点击确定回到“选择还原设备”对话框。

7.点击确定回到“还原数据库”对话框。

8.点击“选项”选项卡

9.将所有“移至物理文件名”下面的路径,改为你想还原后的将数据库文件保存到的路径。如果你不希望改变,可以直接点击确定。这时便恢复成功了。

很不错!我今天终于把.bak搞定了,这里有个要注意的地方就是选项中的“移至物理文件名”下面的路径,这个路径一定要修改哦,不然会出现错误