1. 程式人生 > >Oracle的DMP檔案修改版本號

Oracle的DMP檔案修改版本號

概括的說就是折騰。

1、11G的Oracle備份(原來不知道),往10G的Oracle恢復,恢復的時候提示頭不對,於是漫長的修改版本號開始了。

2、由於備份很大很大,開始用UE等開啟試試,漫長的等待後卡死+磁碟空間不足。

3、於是開始找檔案分割工具,找到了工具。結果因為太大,好不容易分割完了,合併的時候總是在一半的時候報錯。(一下子一天過去了)

4、終於準備自己動手豐衣足食。

就寫了這麼一個方法

public static void doFile(String fileName){
		try{
			RandomAccessFile raf = new RandomAccessFile(fileName,"rw");
			byte b[] = new byte[50];  
			raf.read(b);
			for(int i=0;i<b.length;i++){
				System.out.print(b[i]+",");
			}
			b[12] = 48;//commend by danielinbiti,這個是修改成10g:V10.02.01。如果在修改前自己可以截出頭部的幾個位元組確認一下,是不是就是修改第12,18位元組
			b[18] = 49;
			raf.seek(0);
			raf.write(b);
			
			System.out.println("");
		}catch(Exception ex){
			
		}
	}
弄完我鬱悶壞了... ...早知道就自己寫了。幾行程式碼修改+驗證還沒折騰超過半小時。希望後來人有一樣情況的能少花點精力。