SQL数据库备份

SQL数据库备份,第1张

SQL语句里有.

备份

backupdatabase[数据库名]todisk=[磁盘路径]

例如

backupdatabasedatatodisk='D:\1.bak'

恢复

restoredatabase[数据库名]fromdisk=[磁盘路径]

例如

restoredatabasedatafromdisk='D:\1.bak'

createPROCEDUREGY_DBBak

@bakequipint,--备份设备:磁盘&磁带

@bakpathvarchar(50),--带全路径的备份文件名

@baktypeint,--完全备份&增量备份

@baklogint,--‘0’备份日志

@bakdbint,--‘0’备份数据库

@kindvarchar(7),--备份还是恢复

@retmsgvarchar(20)output--返回信息

AS

DECLARE@DevName_datavarchar(50)

DECLARE@DevName_logvarchar(50)

declare@db_pathvarchar(100)

declare@log_pathvarchar(100)

DECLARE@RCINT

SELECT@db_path=@bakpath+'.dat'

SELECT@log_path=@bakpath+'log.dat'

SELECT@RC=0

DBCCCHECKDB(Northwind)

/***********************************************************

**CREATEBACKUPANDRESTOREDEVICES

************************************************************/

IF@RC=0

BEGIN

EXECsp_addumpdevice'disk',@DevName_data,@db_path

execsp_addumpdevice'disk',@DevName_log,@log_path

select@rc=@@error

IF@RC<>0

begin

EXECSP_DropDevice@Devname_data

execsp_dropdevice@devname_log

SELECT@RC=-1000

return@rc

end

END

IF@kind='backup'

BEGIN

IF@bakequip=0

BEGIN

IF@baktype=0

BEGIN

IF@bakdb=0

BEGIN

BACKUPDATABASENorthwindTODISK=@Devname_data

WITHINIT

END

IF@baklog=0

BEGIN

BACKUPLOGNorthwindWITHNO_LOG

BACKUPLOGNorthwindTODISK=@DevName_log

WITHINIT,NO_TRUNCATE

END

END

ELSEBEGIN

IF@bakdb=0

BEGIN

BACKUPDATABASENorthwindTODISK=@DevName_data

WITHNOINIT

END

IF@baklog=0

BEGIN

BACKUPLOGNorthwindWITHNO_LOG

BACKUPLOGNorthwindTODISK=@DevName_log

WITHNOINIT,NO_TRUNCATE

END

END

END

SELECT@retmsg='数据库备份成功!'

END

IF@kind='restore'

BEGIN

RESTOREDATABASENorthwindFROMDISK=@DevName_dataWITHREPLACE

SELECT@retmsg='恢复数据库成功!'

END

RETURN0

用SQL2000还原bak文件

1.右击SQL

Server

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

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

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

4.点击“选择设备”

5.点击“添加”

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

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

8.点击“选项”选项卡

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

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

用SQL语句备份与恢复数据库的步骤:

备份: mysqldump --quick --database ondemand1 --u root >bacqup.sql 这样就能把数据库中ondemand1的表全部备份出来。

其中参数的格式是:--,两横杠,不是我们常用的单横杠。

quick是在数据比较多的时候,不用该参数的话,所有的数据都会先在内存缓存,接着才导出,这样会导致服务器运行减慢。

--u 必须要加一个用户名,否则系统会提示你进不了ODBC数据库的。

>backup.sql则是你备份数据库的目标文件名。

恢复:m1ysql -u root -p database_name  d:\db.bak,在WIN下,路径用path/filename.sql是不行的,那就用path\filename.sql。

sql语句:

是对数据库进行 *** 作的一种语言。结构化查询语言(Structured Query Language)简称SQL,结构化查询语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。

其他命令:

如,还原命令:

USE master

GO

RESTORE DATABASE test_wt

FROM disk = 'c:\test_wt'

GO

MySQL。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6647233.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-26
下一篇 2023-03-26

发表评论

登录后才能评论

评论列表(0条)

保存