IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

Oracle数据恢复:格式化会损坏多少数据?

Oracle Life 2010-07-19 22:34:36 累计浏览 2,475 次
本机暂存

    有用户误操作格式化硬盘,导致数据丢失,以Oracle数据库为例,格式化会损失多少数据呢?

    以下是我格式化一块硬盘,创建一个1T的磁盘分区,mkfs的输出:

    Disk /dev/sdb: 2089.0 GB, 2089072092672 bytes

    255 heads, 63 sectors/track, 253981 cylinders

    Units = cylinders of 16065 * 512 = 8225280 bytes

     Device Boot      Start         End      Blocks   Id  System

    Command (m for help): n

    Command action

     e   extended

     p   primary partition (1-4)

    p

    Partition number (1-4): 1

    First cylinder (1-253981, default 1):

    Using default value 1

    Last cylinder or +size or +sizeM or +sizeK (1-253981, default 253981): +1024000M

    Command (m for help): p

    Disk /dev/sdb: 2089.0 GB, 2089072092672 bytes

    255 heads, 63 sectors/track, 253981 cylinders

    Units = cylinders of 16065 * 512 = 8225280 bytes

     Device Boot      Start         End      Blocks   Id  System

    /dev/sdb1               1      124495  1000006056   83  Linux

    Command (m for help): w

    The partition table has been altered!

    Calling ioctl() to re-read partition table.

    Syncing disks.

    [root@sms-db-b /]# mkfs /dev/sdb1

    mke2fs 1.35 (28-Feb-2004)

    Filesystem label=

    OS type: Linux

    Block size=4096 (log=2)

    Fragment size=4096 (log=2)

    125009920 inodes, 250001514 blocks

    12500075 blocks (5.00%) reserved for the super user

    First data block=0

    Maximum filesystem blocks=4294967296

    7630 block groups

    32768 blocks per group, 32768 fragments per group

    16384 inodes per group

    Superblock backups stored on blocks:

     32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,

     4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,

     102400000, 214990848

    Writing inode tables: .done                           

    Writing superblocks and filesystem accounting information: 

    done

    This filesystem will be automatically checked every 39 mounts or

    180 days, whichever comes first.  Use tune2fs -c or -i to override.

    这期间,mkfs的输出提示最为关键,mkfs创建了7630个块组,每个Group 32768个数据块,每个Group 16384个inodes。那么这里的inodes分配的空间就应该是覆盖了原始数据的部分。

    那么每个inode要分配多少空间呢?

    [root@db eygle]# dumpe2fs -h /dev/sdb1|grep node

    dumpe2fs 1.35 (28-Feb-2004)

    Filesystem features:      resize_inode filetype sparse_super large_file

    Inode count:              125009920

    Free inodes:              125009909

    Inodes per group:         16384

    Inode blocks per group:   512

    First inode:              11

    Inode size:               128

    这里的Inode Size 是128 Bytes,16384 * 128 / 1024 /1024 结果就是2M,7630个Block Group,就是14G左右的空间。

    参考文章:

    http://it.dianping.com/inode-related-conceptions-in-linux-file-system.htm原图已失效

同分类推荐文章

  1. 使用deepseek进行Oracle恢复,引起重大故障 (2026-06-22 10:56:00)
  2. 接手一个只差临门一脚的数据库恢复 (2026-06-18 00:13:09)
  3. 我做了一个 AI 版的 StarRocks 升级风险扫描工具,直接帮我定位到一个风险 (2026-06-15 01:00:00)

查看更多 数据库 文章 →

建议继续学习

  1. Oracle MTS模式下 进程地址与会话信息 (累计阅读 14,407)
  2. 我对技术方向的一些反思 (累计阅读 11,319)
  3. 数据分析中常用的数据模型 (累计阅读 7,947)
  4. TT的作者出新作品鸟:kyoto tycoon (累计阅读 7,950)
  5. TinyURL设计方案 (累计阅读 7,328)
  6. 那些在11gR2中可能惹祸的新特性,一张列表帮助你摆脱升级11gR2带来的烦恼 (累计阅读 6,879)
  7. 性能测试工具sysbench简介 (累计阅读 6,026)
  8. 大于2GB的Listener.log和运行超过198天的主机上的Oracle实例 (累计阅读 5,862)
  9. 仅仅只备份是不够的 (累计阅读 5,824)
  10. Oracle Database 12c 新特性 - Native Top N 查询 (累计阅读 5,750)