PC3000 军达成数据恢复论坛

 找回密码
 立即注册
查看: 4992|回复: 2
打印 上一主题 下一主题

赛贝斯数据库 检查数据库中数据的一致性 [复制链接]

Rank: 6Rank: 6

  • TA的每日心情
    无聊
    2014-9-5 11:46:27
  • 签到天数: 30 天

    [LV.5]常住居民I

    金钱
    8
    元宝
    1460
    专业度
    25
    跳转到指定楼层
    楼主
    发表于 2011-12-15 23:55:00 |只看该作者 |倒序浏览
    本帖最后由 军达成技术支持1 于 2015-10-9 00:36 编辑

     数据库一致性检查(dbcc)提供了一些命令用于检查数据库的逻辑和物理一致性。Dbcc主要有两个功能:
    使用checkstorage 或 checktable 及 checkdb 在页一级和行一级检查页链及数据指针。
    使用checkstorage, checkalloc, 或 checkverify, tablealloc, 及indexalloc 检查页分配。
      在下列情况中需要使用 dbcc 命令:
    作为数据库日常维护工作的一部分, 数据库内部结构的完整性决定于sa 或dbo 定期地运行 dbcc 检查。
    在系统报错以后, 确定数据库是否有损坏。
    在备份数据库之前, 确保备份的完整性。
    如果怀疑数据库有损坏时, 例如, 使用某个表时报出表损坏的信息, 可以使用 dbcc 确定数据库中其他表是否也有损坏。
      下面是dbcc的简单用法:
    dbcc checktable (table_name)
    检查指定的表, 检查索引和数据页是否正确链接, 索引是否正确排序, 所有指针是否一致, 每页的数据信息是否合理, 页偏移是否合理。
    dbcc checkdb (database_name)
    对指定数据库的所有表做和checktable 一样的检查。
    dbcc checkalloc (database_name,fix|nofix)
    检查指定数据库, 是否所有页面被正确分配, 是否被分配的页面没被使用。当使用"fix"选项时,在检查数据库的同时会自动修复有问题的页面。(若数据库数据量很大,则该过程会持续很长时间。)
    dbcc tablealloc (table_name,fix|nofix)
    检查指定的表, 是否所有页面被正确分配, 是否被分配的页面没被使用。是 checkalloc 的缩小版本, 对指定的表做完整性检查。当使用"fix"选项时,在检查数据表的同时会自动修复数据表中有问题的页面。
      关于上述命令的其它选项及详细使用方法和checkstorage, checkverify, indexalloc 的详细使用方法, 请参阅有关命令手册。
      举例1: Unix平台检查pubs2数据库的一致性
    单用户模式启动Server:
    $SYBASE/install startserver -f RUN_server_name -m
    vi dbcc_db.sql
    use master
    go
    sp_dboption pubs2,"single user",true
    go
    use pubs2
    go
    checkpoint
    go
    dbcc checkdb(pubs2)
    go
    dbcc checkalloc(pubs2,fix)
    go
    dbcc checkcatalog(pubs2)
    go
    use master
    go
    sp_dboption pubs2,"single user",false
    go
    use pubs2
    go
    checkpoint
    go
    quit
    go
    isql -Usa -Pxxxxxx -SSYBASE dbcc_db.out
    grep Msg dbcc_db.out
      举例2: Unix平台检查pubs2数据库中titles表的一致性
    vi dbcc_table.sql
    use pubs2
    go
    dbcc checktable(titles)
    go
    dbcc tablealloc(titles)
    go
    isql -Usa -Pxxxxxx -SSYBASE < dbcc_table.sql > dbcc_table.out
    grep Msg dbcc_table.out


    已有 1 人评分专业度 金钱 收起 理由
    军达成 + 2 + 2

    总评分: 专业度 + 2  金钱 + 2   查看全部评分

    使用道具 举报

    Rank: 8Rank: 8

  • TA的每日心情
    开心
    2024-10-19 10:48:25
  • 签到天数: 66 天

    [LV.6]常住居民II

    金钱
    300
    元宝
    5378
    专业度
    300
    沙发
    发表于 2011-12-21 10:06:15 |只看该作者
    本帖最后由 军达成技术支持1 于 2015-10-9 00:36 编辑

    好像有点难度,学习一下


    使用道具 举报

    Rank: 6Rank: 6

    该用户从未签到

    金钱
    0
    元宝
    1946
    专业度
    0
    板凳
    发表于 2023-7-27 10:58:48 |只看该作者
    学习学习,感谢分享。

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    Archiver|手机版|PC3000 数据恢复 ( 京ICP备09023376号-1 )

    GMT+8, 2025-5-2 21:12 , Processed in 0.137844 second(s), 12 queries .

    Powered by Discuz! X2

    © 2001-2011 Comsenz Inc.

    回顶部