标签云
asm恢复 bbed bootstrap$ dul In Memory kcbzib_kcrsds_1 kccpb_sanity_check_2 MySQL恢复 ORA-00312 ORA-00607 ORA-00704 ORA-00742 ORA-01110 ORA-01555 ORA-01578 ORA-01595 ORA-08103 ORA-600 2131 ORA-600 2662 ORA-600 3020 ORA-600 4000 ORA-600 4137 ORA-600 4193 ORA-600 4194 ORA-600 16703 ORA-600 kcbzib_kcrsds_1 ORA-600 KCLCHKBLK_4 ORA-15042 ORA-15196 ORACLE 12C oracle dul ORACLE PATCH Oracle Recovery Tools oracle加密恢复 oracle勒索 oracle勒索恢复 oracle异常恢复 Oracle 恢复 ORACLE恢复 ORACLE数据库恢复 oracle 比特币 OSD-04016 YOUR FILES ARE ENCRYPTED 勒索恢复 比特币加密文章分类
- Others (2)
- 中间件 (2)
- WebLogic (2)
- 操作系统 (103)
- 数据库 (1,773)
- DB2 (22)
- MySQL (77)
- Oracle (1,612)
- Data Guard (52)
- EXADATA (8)
- GoldenGate (24)
- ORA-xxxxx (166)
- ORACLE 12C (72)
- ORACLE 18C (6)
- ORACLE 19C (15)
- ORACLE 21C (3)
- Oracle 23ai (8)
- Oracle ASM (69)
- Oracle Bug (8)
- Oracle RAC (54)
- Oracle 安全 (6)
- Oracle 开发 (28)
- Oracle 监听 (29)
- Oracle备份恢复 (593)
- Oracle安装升级 (98)
- Oracle性能优化 (62)
- 专题索引 (5)
- 勒索恢复 (86)
- PostgreSQL (32)
- pdu工具 (6)
- PostgreSQL恢复 (10)
- SQL Server (32)
- SQL Server恢复 (13)
- TimesTen (7)
- 达梦数据库 (3)
- 达梦恢复 (1)
- 生活娱乐 (2)
- 至理名言 (11)
- 虚拟化 (2)
- VMware (2)
- 软件开发 (39)
- Asp.Net (9)
- JavaScript (12)
- PHP (2)
- 小工具 (22)
-
最近发表
- pg_wal中文件的名称中的logseq和实际文件中的logseq不匹配
- 由于空间满导致PostgreSQL数据库异常处理
- 一次非常幸运的ORA-600 16703(tab$被清空)故障恢复
- Oracle 19c 202507补丁(RUs+OJVM)-19.28
- 2025年的Oracle 8.0.5数据库恢复
- ORA-600 kokiasg1故障分析(obj$中核心字典序列全部被恶意删除)
- ORA-00756 ORA-10567故障数据0丢失恢复
- 数据库文件变成32k故障恢复
- tcp连接过多导致监听TNS-12532 TNS-12560 TNS-00502错误
- 文件系统格式化MySQL数据库恢复
- .sstop勒索加密数据库恢复
- 解决一次硬件恢复之后数据文件0kb的故障恢复case
- Error in invoking target ‘libasmclntsh19.ohso libasmperl19.ohso client_sharedlib’问题处理
- ORA-01171: datafile N going offline due to error advancing checkpoint
- linux环境oracle数据库被文件系统勒索加密为.babyk扩展名溯源
- ORA-600 ksvworkmsgalloc: bad reaper
- ORA-600 krccfl_chunk故障处理
- Oracle Recovery Tools恢复案例总结—202505
- ORA-600 kddummy_blkchk 数据库循环重启
- 记录一次asm disk加入到vg通过恢复直接open库的案例
年归档:2021
文件系统重新分区oracle恢复
最近处理的一个恢复,算是这几年中的一个奇葩.
1. oracle dg 主备库raid同时损坏,找硬件恢复厂商软件重组raid,恢复厂商判断所有磁盘全部都是好的
2. 主库系统被重装,文件系统重新分区.备库在使用duplicate搭建dg的过程中(通过alert日志分析以前的dg是正常的,直接rm掉了所有文件,然后使用duplicate搭建),只是部分文件拷贝到了备库
3. 备份放在一台单独的存储上,但是当上去看是发现存储上面空空的,没有任何数据(通过对ctl的分析,确认存储上面只有一个月之前的备份记录,估计也被删除或者重新分区了(通过后续分析,判断应该是被重新分区了)
客户没有和我们说任何信息,就是说突然两个raid都损坏了,找硬件厂商进行恢复,硬件厂商开始也觉得这个会比较简单,直接通过raid模拟恢复出来lun,然后通过软件恢复出来一些数据文件(反馈给我的信息是少了redo,需要我们协助恢复),通过深入分析,发现少了大量数据文件,基于现在的恢复基本上没意义.然后通过低主库的raid模拟恢复,拷贝出来数据文件,结果发现恢复出来的文件大小,和文件头记录不匹配
这里显示文件大小应该是30G,但是实际拷贝的文件只有26G大小

通过底层进一步分析,发现任何大于4G的文件,按照4G为单位间隔损坏(4G好,4G损坏,4G好……)


出现这类情况,通过底层分析,判断是客户对磁盘进行了重新分区,引起底层问题导致

基于这样的情况,没有太多好的方法处理,直接使用底层碎片技术进行恢复类似oracle 碎片层面恢复,我们进行了挺多的,类似:
dbca删除库和rm删库恢复
文件系统损坏导致数据文件异常恢复
Oracle 数据文件大小为0kb或者文件丢失恢复
alter database create datafile 导致数据文件丢失恢复
rm -rf 删除数据文件恢复方法—文件系统反删除+oracle碎片重组
运气不错,顺利open数据库

本次恢复走了很多弯路,主要是不清楚客户那边处于什么原因,多次隐秘故障原因,没有如实的告知我们故障情况,一步步尝试,走了很多弯路,耽误了不少时间.如果可能请尽量告诉我们准确情况,便于我们准确做出判断,快速高效的恢复.
ext4 lvm在线扩容
文件系统格式
[root@xifenfei~]# uname -a Linux datacenter 4.1.12-61.1.28.el6uek.x86_64 #2 SMP Thu Feb 23 20:03:53 PST 2017 x86_64 x86_64 x86_64 GNU/Linux [root@xifenfei~]# mount /dev/mapper/vg_datacenter-lv_root on / type ext4 (rw) proc on /proc type proc (rw) sysfs on /sys type sysfs (rw) devpts on /dev/pts type devpts (rw,gid=5,mode=620) tmpfs on /dev/shm type tmpfs (rw) /dev/sda1 on /boot type ext4 (rw) /dev/mapper/vg_datacenter-lv_home on /home type ext4 (rw) /dev/mapper/vg_datacenter-lvu01 on /u01 type ext4 (rw) /dev/sdb1 on /oracle_data type ext4 (rw) none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw) sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw) [root@datacenter ~]#
linux扫描新磁盘
[root@xifenfei ~]# ls /sys/class/scsi_host/ host0 host1 host2 [root@xifenfei ~]# echo '- - -' > /sys/class/scsi_host/host0/scan [root@xifenfei ~]# echo '- - -' > /sys/class/scsi_host/host1/scan [root@xifenfei ~]# echo '- - -' > /sys/class/scsi_host/host2/scan
vg扩容
[root@xifenfei ~]# pvcreate /dev/sdc1 Physical volume "/dev/sdc1" successfully created [root@xifenfei ~]# vgs VG #PV #LV #SN Attr VSize VFree vg_xifenfei 1 4 0 wz--n- 499.51g 584.00m [root@xifenfei ~]# vgextend vg_xifenfei /dev/sdc1 Volume group "vg_xifenfei" successfully extended [root@xifenfei ~]# vgs VG #PV #LV #SN Attr VSize VFree vg_xifenfei 2 4 0 wz--n- 999.50g 500.56g
lv进行扩容
[root@xifenfei ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_xifenfei-lv_root 50G 6.4G 41G 14% / tmpfs 63G 0 63G 0% /dev/shm /dev/sda1 477M 84M 364M 19% /boot /dev/mapper/vg_xifenfei-lv_home 1.9G 29M 1.8G 2% /home /dev/mapper/vg_xifenfei-lvu01 436G 335G 80G 81% /u01 /dev/sdb1 985G 462G 473G 50% /oracle_data [root@xifenfei ~]# lvresize -L +500G /dev/mapper/vg_xifenfei-lvu01 Size of logical volume vg_xifenfei/lvu01 changed from 443.00 GiB (113408 extents) to 943.00 GiB (241408 extents). Logical volume lvu01 successfully resized. [root@xifenfei ~]# resize2fs /dev/mapper/vg_xifenfei-lvu01 resize2fs 1.43-WIP (20-Jun-2013) Filesystem at /dev/mapper/vg_xifenfei-lvu01 is mounted on /u01; on-line resizing required old_desc_blocks = 28, new_desc_blocks = 59 The filesystem on /dev/mapper/vg_xifenfei-lvu01 is now 247201792 blocks long. [root@xifenfei ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_xifenfei-lv_root 50G 6.4G 41G 14% / tmpfs 63G 0 63G 0% /dev/shm /dev/sda1 477M 84M 364M 19% /boot /dev/mapper/vg_xifenfei-lv_home 1.9G 29M 1.8G 2% /home /dev/mapper/vg_xifenfei-lvu01 929G 335G 552G 38% /u01 /dev/sdb1 985G 462G 473G 50% /oracle_data
ORA-19921: maximum number of 64 rows exceeded
rman 登录报ORA-19921错
[oracle@db-base ~]$ rman target / Recovery Manager: Release 11.2.0.4.0 - Production on Fri May 28 11:58:18 2021 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. RMAN-06900: WARNING: unable to generate V$RMAN_STATUS or V$RMAN_OUTPUT row RMAN-06901: WARNING: disabling update of the V$RMAN_STATUS and V$RMAN_OUTPUT rows ORACLE error from target database: ORA-19921: maximum number of 64 rows exceeded connected to target database: ORCL (DBID=1590736012) RMAN>
通过检查rman进程发现大量未退出进程
[oracle@db-base trace]$ ps -ef|grep rman oracle 998 985 0 May18 ? 00:00:02 rman oracle/11.2.0/db_1/bin/rman target / oracle 1054 1039 0 Apr18 ? 00:00:10 rman oracle/11.2.0/db_1/bin/rman target / oracle 1738 1726 0 Apr27 ? 00:00:08 rman oracle/11.2.0/db_1/bin/rman target / oracle 4294 4281 0 May11 ? 00:00:02 rman oracle/11.2.0/db_1/bin/rman target / oracle 4655 4642 0 May27 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 4955 4943 0 Apr30 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 5712 5700 0 Apr28 ? 00:00:02 rman oracle/11.2.0/db_1/bin/rman target / oracle 7162 7149 0 May19 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 7275 7262 0 Apr17 ? 00:00:02 rman oracle/11.2.0/db_1/bin/rman target / oracle 7983 7971 0 May12 ? 00:00:02 rman oracle/11.2.0/db_1/bin/rman target / oracle 8013 8002 0 10:59 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 8376 8364 0 May26 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 8519 8507 0 11:03 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 9196 9184 0 11:10 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 9345 9333 0 Apr29 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 9420 9407 0 May01 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 9831 9818 0 11:16 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 10242 10229 0 May25 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 11023 11010 0 Apr10 ? 00:00:02 rman oracle/11.2.0/db_1/bin/rman target / oracle 11040 11020 0 Apr16 ? 00:00:08 rman oracle/11.2.0/db_1/bin/rman target / oracle 11345 11332 0 Apr11 ? 00:00:02 rman oracle/11.2.0/db_1/bin/rman target / oracle 11364 11343 0 Apr12 ? 00:00:02 rman oracle/11.2.0/db_1/bin/rman target / oracle 11696 11684 0 Apr13 ? 00:00:02 rman oracle/11.2.0/db_1/bin/rman target / oracle 12008 11998 0 11:39 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 12454 12441 0 Apr15 ? 00:00:02 rman oracle/11.2.0/db_1/bin/rman target / oracle 12680 12667 0 Apr14 ? 00:00:02 rman oracle/11.2.0/db_1/bin/rman target / oracle 12751 12739 0 May13 ? 00:00:02 rman oracle/11.2.0/db_1/bin/rman target / oracle 12849 12833 2 11:48 pts/1 00:00:26 rman oracle/11.2.0/db_1/bin/rman target / oracle 13152 13140 0 May02 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 13731 13719 0 Apr05 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 13869 13857 0 May24 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 14027 14014 0 Apr04 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 14073 14061 0 Apr03 ? 00:00:07 rman oracle/11.2.0/db_1/bin/rman target / oracle 14366 13332 0 12:03 pts/2 00:00:00 grep --color=auto rman oracle 15073 15061 0 May23 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 15263 15251 0 May22 ? 00:00:02 rman oracle/11.2.0/db_1/bin/rman target / oracle 15766 15753 0 Apr02 ? 00:00:02 rman oracle/11.2.0/db_1/bin/rman target / oracle 15915 15903 0 May14 ? 00:00:02 rman oracle/11.2.0/db_1/bin/rman target / oracle 16805 16793 0 Mar31 ? 00:00:02 rman oracle/11.2.0/db_1/bin/rman target / oracle 16953 16939 0 Apr01 ? 00:00:08 rman oracle/11.2.0/db_1/bin/rman target / oracle 17648 17635 0 May21 ? 00:00:08 rman oracle/11.2.0/db_1/bin/rman target / oracle 17740 17728 0 May03 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 18265 18253 0 Apr09 ? 00:00:02 rman oracle/11.2.0/db_1/bin/rman target / oracle 18964 18951 0 May15 ? 00:00:02 rman oracle/11.2.0/db_1/bin/rman target / oracle 20731 20719 0 May20 ? 00:00:08 rman oracle/11.2.0/db_1/bin/rman target / oracle 21104 21092 0 May04 ? 00:00:08 rman oracle/11.2.0/db_1/bin/rman target / oracle 23116 23104 0 May16 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 23230 23216 0 Apr07 ? 00:00:08 rman oracle/11.2.0/db_1/bin/rman target / oracle 23969 23956 0 Apr08 ? 00:00:07 rman oracle/11.2.0/db_1/bin/rman target / oracle 24092 24079 0 Apr24 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 25648 25636 0 May07 ? 00:00:08 rman oracle/11.2.0/db_1/bin/rman target / oracle 25843 25831 0 Apr23 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 26261 26248 0 Apr25 ? 00:00:08 rman oracle/11.2.0/db_1/bin/rman target / oracle 26421 26408 0 May08 ? 00:00:08 rman oracle/11.2.0/db_1/bin/rman target / oracle 26470 26458 0 Apr22 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 26776 26763 0 May05 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 28587 28574 0 Apr26 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 29102 29090 0 May09 ? 00:00:07 rman oracle/11.2.0/db_1/bin/rman target / oracle 29402 29389 0 Apr20 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 29628 29613 0 May17 ? 00:00:02 rman oracle/11.2.0/db_1/bin/rman target / oracle 29638 29625 0 Apr06 ? 00:00:07 rman oracle/11.2.0/db_1/bin/rman target / oracle 30118 30105 0 Apr21 ? 00:00:01 rman oracle/11.2.0/db_1/bin/rman target / oracle 32536 32523 0 Apr19 ? 00:00:02 rman oracle/11.2.0/db_1/bin/rman target / oracle 32609 32597 0 May10 ? 00:00:02 rman oracle/11.2.0/db_1/bin/rman target /
kill相关rman进程
[oracle@db-base trace]$ kill -9 `ps -ef|grep rman|grep -v grep|awk '{print $2}'`
rman 登录正常
[oracle@db-base trace]$ rman target / Recovery Manager: Release 11.2.0.4.0 - Production on Fri May 28 12:04:19 2021 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. connected to target database: ORCL (DBID=1590736012) RMAN>