SQL Server数据库的备份和还原(留着慢慢看)

php中文网
发布: 2016-06-07 15:17:17
原创
1685人浏览过

SQL语句里有. 备份 backup database [数据库名] to disk=[磁盘路径] 例如 backup database data to disk='D:/1.bak' 恢复 restore database [数据库名] from disk=[磁盘路径] 例如 restore database data from disk='D:/1.bak' create PROCEDURE GY_DBBak @b

SQL语句里有.

备份
backup database [数据库名] to disk=[磁盘路径]

例如
backup database data to disk='D:/1.bak'

恢复
restore database [数据库名] from disk=[磁盘路径]

例如
restore database data from disk='D:/1.bak'









create       PROCEDURE     GY_DBBak     
                      @bakequip         int,                   --     备份设备:磁盘&磁带     
                      @bakpath           varchar(50),   --     带全路径的备份文件名     
                      @baktype           int,                   --     完全备份&增量备份     
                      @baklog             int,                   --     ‘0’备份日志     
                      @bakdb               int,                   --     ‘0’备份数据库     
                      @kind     varchar(7),                 --备份还是恢复     
                      
      @retmsg     varchar(20)     output           --返回信息     
  AS     
  
  
        DECLARE     @DevName_data         varchar(50)     
        DECLARE     @DevName_log       varchar(50) 
        declare   @db_path   varchar(100) 
        declare   @log_path   varchar(100) 
                
        DECLARE     @RC INT       
  
  SELECT         @db_path         =     @bakpath         +     '.dat'     
  SELECT         @log_path       =     @bakpath         +     'log.dat'     
                  SELECT         @RC=0 
  
        DBCC     CHECKDB(Northwind)     
  /*********************************************************** 
  **   CREATE   BACKUP   AND   RESTORE   DEVICES 
  ************************************************************/ 
  IF   @RC=0 
        BEGIN 
  
        EXEC   sp_addumpdevice   'disk',   @DevName_data,@db_path 
  
  exec   sp_addumpdevice   'disk',   @DevName_log,@log_path 
        select   @rc=@@error 
  IF   @RC0 
  begin 
  EXEC   SP_DropDevice   @Devname_data 
  exec   sp_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         
                                        BACKUP     DATABASE     Northwind     TO     DISK=@Devname_data     
                                        WITH     INIT     
                                END     
                                IF     @baklog=0     
                                BEGIN                             
                                        BACKUP     LOG     Northwind     WITH     NO_LOG                             
                                        BACKUP     LOG     Northwind     TO     DISK=@DevName_log   
                                        WITH     INIT,NO_TRUNCATE     
                                END     
                        END     
                        ELSE     BEGIN     
                                IF     @bakdb=0     
                                BEGIN     
                                        BACKUP     DATABASE     Northwind     TO     DISK=@DevName_data 
                                        WITH     NOINIT     
                                END     
                                IF     @baklog=0     
                                BEGIN     
                                        BACKUP     LOG     Northwind     WITH     NO_LOG                             
                                        BACKUP     LOG     Northwind     TO     DISK=@DevName_log   
                                        WITH     NOINIT,NO_TRUNCATE     
                                END     
                        END                     
                END     
                SELECT     @retmsg='数据库备份成功!'     
        END     
    
        IF     @kind='restore'             
        BEGIN     
                RESTORE     DATABASE     Northwind     FROM     DISK=     @DevName_data   WITH     REPLACE     
                SELECT     @retmsg='恢复数据库成功!'     
        END     
    
        RETURN     0

 

Voicepods
Voicepods

Voicepods是一个在线文本转语音平台,允许用户在30秒内将任何书面文本转换为音频文件。

Voicepods 93
查看详情 Voicepods

增量备份的操作步骤大概是
1、截断当前日志dump tran db_name with truncate_only
2、做数据库全备份dump database db_name to "/data/db.dmp"
3、做增量备份dump tran db_name to "/data/db_tran1.dmp"
 

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号