• SQL SERVER数据库状态(脱机,联机,可疑)及SQL设置语句详解


    首先我们应该知道数据库总是处于一个特定的状态中,下面先来了解一下数据库的常见的三种状态: 1,脱机:我们可以在Microsoft SQL Server Management中看到该数据库,但该数据库名称旁边有"脱机"的字样,说明该数据库现在虽然存在于数据库引擎实例中,但是不可以执行任何有效的数据操作,比如新增,修改,删除等,这就是脱机状态。
    2,联机:该状态为数据库正常状态,也就是我们常看到的数据库的状态,该状态下的数据库处于可操作状态,可以对数据库进行任何权限内的操作。
    3,可疑:和"脱机"状态一样,我们可以在Microsoft SQL Server Management中看到该数据库,但该数据库名称旁边有"可疑"的字样,这说明至少主文件组可疑或可能已损坏。
    如何利用SQL命令查看数据库状态: 可利用sys.databases表.在该表的state_desc列中标记了数据库的状态,sql语句如下:

    select name,state_desc from sys.databases

    可视化设置数据库状态: 设置为脱机:在Microsoft SQL SERVER Management中打开该数据库,在该数据库上右击,在右键菜单选择"任务"- >"脱机"
    设置为联机:如果数据库的现在状态为脱机,则可在Microsoft SQL SERVER Management中打开该数据库,在该数据库上右击,在右键菜单选择"任务"- >"联机"
    可疑:该状态为数据库自动测试数据文件的状态。
    利用SQL命令设置数据库状态: 设置为脱机的SQL语句如下:

    EXEC sp_dboption '数据库名称', 'offline', 'TRUE'

    或者

    ALTER DATABASE 数据库名称 SET OFFLINE

    设置为联机的SQL语句如下:

    ALTER DATABASE 数据库名称 SET ONLINE

    说明: ·虽然SQL SERVER数据库的脱机与联机是两个很简单的概念,但是它却能在细微之处反映我们的开发人员对数据库的基础知识的了解程度,所以还是希望大家能够清楚的了解数据库的状态及改变数据库状态的SQL命令。
    ·如果我们在复制数据库的源文件的时候提示该文件正在使用,我们可以先设置数据库为脱机再复制。

    君子性非异也,善假于物也!
  • 相关阅读:
    docker部署遇到的问题集合【持续更新】
    docker开发常用命令
    idea使用三步曲
    防缓存穿透设计
    亿级数据库分片分库架构设计亿【转】
    java-web项目换装servlet3.1.0后性能飙升到10000tps
    spring-kafka消费者配置
    分布式disconf+spring5使用遇到重复加载的问题
    jmeter性能压测
    springboot多profile环境maven配置
  • 原文地址:https://www.cnblogs.com/zhaoCat/p/5956033.html
Copyright © 2020-2023  润新知