4月1日,早上7点半正要出门的时候,被某省的同事电话叫住了,说归档目录快满了,由于带库正在备份另一个生产库,这个报表库暂时还不能用带库备份归档,想用手工删除归档日志,却无法删除,ls能列出所有文件,但是ls 某一个归档文件却报错无法找到该文件!单个文件ls不到,更别说rm了。
归档目录剩下6G左右的空间了,按照每5分钟256M的一个arch切出,时间不到半小时,打算赶紧做rm再做crosscheck了。由于之前备份作业都正常,觉得不太可能不能rm,登录上去测试了一下:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | [oracle@he_mdb01 /oracle$]pwd    /arch [oracle@he_mdb01 /oracle$]ls  headt_1_14076.arc   headt_1_14106.arc   headt_1_14136.arc   headt_1_14166.arc   headt_1_14196.arc   headt_1_14226.arc  headt_1_14077.arc   headt_1_14107.arc   headt_1_14137.arc   headt_1_14167.arc   headt_1_14197.arc   headt_1_14227.arc  headt_1_14078.arc   headt_1_14108.arc   headt_1_14138.arc   headt_1_14168.arc   headt_1_14198.arc   headt_1_14228.arc  headt_1_14079.arc   headt_1_14109.arc   headt_1_14139.arc   headt_1_14169.arc   headt_1_14199.arc   headt_1_14229.arc  headt_1_14080.arc   headt_1_14110.arc   headt_1_14140.arc   headt_1_14170.arc   headt_1_14200.arc   headt_1_14230.arc  headt_1_14081.arc   headt_1_14111.arc   headt_1_14141.arc   headt_1_14171.arc   headt_1_14201.arc   headt_1_14231.arc  headt_1_14082.arc   headt_1_14112.arc   headt_1_14142.arc   headt_1_14172.arc   headt_1_14202.arc   headt_1_14232.arc  headt_1_14083.arc   headt_1_14113.arc   headt_1_14143.arc   headt_1_14173.arc   headt_1_14203.arc   headt_1_14233.arc  headt_1_14084.arc   headt_1_14114.arc   headt_1_14144.arc   headt_1_14174.arc   headt_1_14204.arc   headt_1_14234.arc  headt_1_14085.arc   headt_1_14115.arc   headt_1_14145.arc   headt_1_14175.arc   headt_1_14205.arc   headt_1_14235.arc  headt_1_14086.arc   headt_1_14116.arc   headt_1_14146.arc   headt_1_14176.arc   headt_1_14206.arc   headt_1_14236.arc  headt_1_14087.arc   headt_1_14117.arc   headt_1_14147.arc   headt_1_14177.arc   headt_1_14207.arc   headt_1_14237.arc  headt_1_14088.arc   headt_1_14118.arc   headt_1_14148.arc   headt_1_14178.arc   headt_1_14208.arc   headt_1_14238.arc  headt_1_14089.arc   headt_1_14119.arc   headt_1_14149.arc   headt_1_14179.arc   headt_1_14209.arc   headt_1_14239.arc  headt_1_14090.arc   headt_1_14120.arc   headt_1_14150.arc   headt_1_14180.arc   headt_1_14210.arc   headt_1_14240.arc  headt_1_14091.arc   headt_1_14121.arc   headt_1_14151.arc   headt_1_14181.arc   headt_1_14211.arc   headt_1_14241.arc  headt_1_14092.arc   headt_1_14122.arc   headt_1_14152.arc   headt_1_14182.arc   headt_1_14212.arc   headt_1_14242.arc  headt_1_14093.arc   headt_1_14123.arc   headt_1_14153.arc   headt_1_14183.arc   headt_1_14213.arc   headt_1_14243.arc  headt_1_14094.arc   headt_1_14124.arc   headt_1_14154.arc   headt_1_14184.arc   headt_1_14214.arc   headt_1_14244.arc  headt_1_14095.arc   headt_1_14125.arc   headt_1_14155.arc   headt_1_14185.arc   headt_1_14215.arc   headt_1_14245.arc  headt_1_14096.arc   headt_1_14126.arc   headt_1_14156.arc   headt_1_14186.arc   headt_1_14216.arc   headt_1_14246.arc  headt_1_14097.arc   headt_1_14127.arc   headt_1_14157.arc   headt_1_14187.arc   headt_1_14217.arc   headt_1_14247.arc  headt_1_14098.arc   headt_1_14128.arc   headt_1_14158.arc   headt_1_14188.arc   headt_1_14218.arc   headt_1_14248.arc  headt_1_14099.arc   headt_1_14129.arc   headt_1_14159.arc   headt_1_14189.arc   headt_1_14219.arc   headt_1_14249.arc  headt_1_14100.arc   headt_1_14130.arc   headt_1_14160.arc   headt_1_14190.arc   headt_1_14220.arc   headt_1_14250.arc  headt_1_14101.arc   headt_1_14131.arc   headt_1_14161.arc   headt_1_14191.arc   headt_1_14221.arc  lost+found  headt_1_14102.arc   headt_1_14132.arc   headt_1_14162.arc   headt_1_14192.arc   headt_1_14222.arc  nohup.out  headt_1_14103.arc   headt_1_14133.arc   headt_1_14163.arc   headt_1_14193.arc   headt_1_14223.arc  headt_1_14104.arc   headt_1_14134.arc   headt_1_14164.arc   headt_1_14194.arc   headt_1_14224.arc  headt_1_14105.arc   headt_1_14135.arc   headt_1_14165.arc   headt_1_14195.arc   headt_1_14225.arc [oracle@he_mdb01 /oracle$]ll headt_1_14136.arc headt_1_14136.arc not found | 
汗……真的ls不到,测试rm也是同样的问题!!
难道是文件系统有问题?试着switch logfile切出来几个最新的日志,也还是rm不掉!!赶紧联系了主机工程师上来检查了……最终找到了原因:原来我们看到的文件不是“headt_1_14136.arc”,而是“ headt_1_14136.arc”。注意:这里前面有一个空格!!
做rm的时候,rm headt_1_14136.arc 不行,要 rm ‘ headt_1_14136.arc’带上空格才可以。因此之前我们单个文件的ls或者rm报错找不到文件,但是一直以来用带库做备份,由于是backup archivelog all delete input,因此还是能正常备份了。
检查arch的名称设置,嘿嘿,果然有多一个空格:
| 1 2 3 4 5 6 7 8 9 10 11 12 | SQL> show parameter arch NAME                                 TYPE        VALUE ------------------------------------ ----------- ------------------------------ log_archive_duplex_dest              string log_archive_format                   string       headt_%t_%s.arc log_archive_max_processes            integer     2 log_archive_min_succeed_dest         integer     1 log_archive_start                    boolean     TRUE log_archive_trace                    integer     0 remote_archive_enable                string      true standby_archive_dest                 string      ?/dbs/arch | 
趁着当时没有人用报表,赶紧改了参数,重启了库使之生效……
没想到愚人节一早就被数据库“娱”了一把!-_-!!各位朋友,今天你们是否也遇到了和我类似的倒霉事么?
一条评论
确实是比较倒霉。哈哈