zoukankan      html  css  js  c++  java
  • 数据库备份和恢复速记!

    数据库备份和恢复速记!

    所谓的速记,就是追求速度,概要的记录下来一些事情。
    一、备份设备

    1.1 添加设备

    EXEC sp_addumpdevice 'disk', 'test01','f:\bak\1.bak'
    go

    EXEC sp_addumpdevice 'disk', 'log02','f:\bak\log2.bak'
    go


    1.2 删除设备

    保存相关文件:
    Exec sp_dropdevice 'test02'

    删除相关设备文件:
    Exec sp_dropdevice 'test02','delfile'

    二、备份

    2.1 备份数据库

    Backup database test01 TO test01
    go

    2.2 备份日志

    BACKUP LOG test01 TO log02
    go

    2.3 多设备备份
    Backup database test01 TO test01
    go
    Backup database test01 TO test02
    go


    三、恢复

    3.1 恢复数据库
    restore database test01 from test01
    go

    3.2 恢复日志
    restore LOG test01 from log02 WITH NORECOVERY
    go

    四、排除疑难

    4.1 打开的数据库进程,不能独占访问

    ▲方案一:
    关闭,然后重启服务器。
    ▲方案二:
    删除,数据库然后重建 。
    ▲方案三:
    分离,然后重新载入。


    ◆◆推荐方案:
    关闭连接到这个数据库的进程。
    这是个存储过程。

    (转自于http://www.yule4.com/?p=267)
    ---------------    ≯  存储过程开始  ≮  ---------------


    use master
    go

    if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[p_killspid]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
    drop procedure [dbo].[p_killspid]
    GO

    create proc p_killspid
    @dbname sysname ----要关闭进程的数据库名
    as 
    declare @s nvarchar(1000)
    declare tb cursor local for
    select s='kill '+cast(spid as varchar)
    from master..sysprocesses
    where dbid=db_id(@dbname)

    open tb
    fetch next from tb into @s
    while @@fetch_status=0
    begin
    exec(@s)
    fetch next from tb into @s
    end
    close tb
    deallocate tb
    go

    --用法 
    exec p_killspid  'test01'

    ---------------    ≯  存储过程结束  ≮  ---------------

    4.2 日志
    日志这里有很多的问题,暂进还没有得到解决。

    比如说:

    服务器: 消息 4306,级别 16,状态 1,行 1
    先前的还原操作未指定 WITH NORECOVERY 或 WITH STANDBY。请在除最后步骤之外的所有其它步骤中指定 WITH NORECOVERY 或 WITH STANDBY 后,重新启动该还原序列。
    服务器: 消息 3013,级别 16,状态 1,行 1
    RESTORE LOG 操作异常终止。

  • 相关阅读:
    聊聊Flame Graph(火焰图)的那些事
    Dynamometer:HDFS性能扩展测试工具
    论分布式系统中单一锁控制的优化
    聊聊磁盘数据的损坏
    分级副本存储:一种更具效益成本的数据容错策略
    分布式存储系统中的Data Scrubbing机理
    论一个成熟分布式系统的工具类设计
    聊聊Raft一致性协议以及Apache Ratis
    ListenableFuture的状态同步和原子更新
    2018-9-1-win10-uwp-轻量级-MVVM-框架入门-2.1.5.3199
  • 原文地址:https://www.cnblogs.com/xpnew/p/1404767.html
Copyright © 2011-2022 走看看