Oracle的12c版本打补丁
12c左右的版本打補丁姿勢會有不同變化,我的是weblogic 12.3.1.0,
必須將Opatch的版本升級13.9以上,要不然無法使用Opatch來打補丁。
如果需要下載相關的補丁和升級.zip可以轉至這里下載
注意:
1>所有的命令都是英語模式,所有的命令單詞之間都是有空格
2>發的三個壓縮包,第一個 P28186730_139424_Generic.zip是用來升級weblogic打補丁工具Opath的,必須先升級Opatch再用Opatch來打補丁,解壓之后進入會得到6880880文件夾
3>我的目錄可能與你的目錄不太相同,你的可能是 D:\GWSDE\Middleware\Oralce_home這樣的,那么你的Oracle_home = 我的weblogic 其他同理做改變
3>第二個P29204657_121300_Generic.zip是補丁,解壓得到29204657文件夾,主要修復:通過反序列化JtaTransactionManager類實現jndi注入,覆蓋以前的修復內容詳情參見附件:29204657修復.txt
3>第三個P31178516_121300_Generic.zip是補丁,解壓得到31178516文件夾,主要修復:Weblogic的WLS Security組件對外提供webservice服務,其中使用了XMLDecoder來解析用戶傳入的XML數據,在解析的過程中出現反序列化漏洞,導致可執行任意命令。覆蓋以前的修復內容詳情參見附件:31178516修復.txt
?
?
?
第一步:關閉weblogic服務器
1.>查看本地有幾個weblogic的服務在運行
win+R 鍵打開運行輸入cmd 確定執行
?
?
?
?
有兩種方式查看本地有幾個服務器及對應端口
1方法最好最準確,但必須知道對應的端口,2是應對不清楚端口,且不清楚幾個的情況
使用命令netstat ?-ano ?| ?findst ?7001??7001是端口,查看是否這個端口是否開啟是否關閉,最方便快捷準確,7002,7003,7004也是一樣的,
2>如果桌面沒有對應的腳本,在命令窗口執行tasklist ?| ?findstr ?java ???????
如果沒有任何輸出那么本地沒有weblogic在運行,
如果有內容 那么記下有幾個java應用,分別記下他的PID號碼如下圖8664,方便后續對比。
如果有多個,那就是運行了多個實例,每個PID都要記下來
?
?
?
2.>找到weblogic 目錄
打補丁之前必須先關閉weblogic,如果多個端口都在運行實例,必須所有都關閉,
weblogic目錄必須要找到,一般在D:E:F:盤中一層或者兩層目錄即可找到
實在不知道的可以在 進入D:或者E: ?在右上角搜索weblogic 第一個結果就是點擊進入
?
?
桌面上如果有stopweblogic7001.cmd ?stopweblogic7002.cmd,直接關閉,就可以不用參照以下步驟
再然后到?weblogic下找到user_projects-->domains-->base_domain-->bin
詳細的目錄如下圖,如果有多個 ?base_domain,例如
Base_domain7001、 base_domain7002.......的話每個的bin中的stopWebLogic.cmd都需要點擊執
?
?
執行完一個再執行一個
4.> 查看是否執行成功
執行完之后,想要確定是否執行成功,我們需要下邊的步驟
同樣的有兩種方式,對應上邊兩種查看的方式,
win+R 鍵打開運行輸入cmd 確定執行
?
1>對應上邊的 netstat -ano | findstr 7001??7002、7003各個端口查看有無輸出,是否關閉。
2>在命令窗口執行tasklist ?| ?findstr ?java ???????
如果沒有任何輸出那么關閉weblogic成功 準備第二步----升級Opatch
如果有內容 那么對照上一步找到的PID查看是否少了的個數與你點擊cmd關閉的個數相對應,如關閉了四個,那就應該本來八個減四個還有四個,代表關閉四個weblogic成功。
如果最初有八個,關閉了四個,命令下還有五個,那就代表還有一個weblogic沒有成功關閉。 ?不要關閉非weblogic的應用,防止其他的應用失效
記下那個pid ?8664
執行?taskkill ?/pid ?8664 ?-t ?-f
第二步:升級Opatch版本
?
一般在C:\Program File\Java\ ?下,將整個JDK復制到和weblogic平行目錄中
?
再將JDK目錄名粘貼出來,如下圖,后面需要用到這個路徑的名字
D:\software\jdk1.8.0_131
?
?
進入到其中,一個目錄中會有一個,總共得到三個數字開頭的文件夾,
?
目錄如下圖
?
?
這樣的話在weblogic\Opatch 目錄下就有三個數字文件夾了,保證有三個就可以開始下邊的操作了。
?
摁住 Ctrl + Shift 右鍵空白處,點擊 ?“在此處打開命令窗口(W)”
?
?
D:\software\weblogic\OPatch\6880880>D:\software\jdk1.8.0_131\bin\java.exe??-jar?opatch_generic.jar
?
上面的藍色部分是你自己的JDK目錄就是第一步中得到的JDK目錄,加上\bin\java.exe
而這個opatch_generic.jar??是這個目錄下的jar包
可以輸入一個首字母o用tab鍵自動補全來快速輸入
三部分之間都有空格,命令完成之后回車鍵執行
?
進入安裝界面之后選擇安裝位置
選擇weblogic 所在主目錄 進行安裝
我的就是?D:\software\weblogic
?
目錄的選擇就是你安裝weblogic的目錄,點擊瀏覽選擇成你的weblogic目錄,選擇到這一層然后下一步
?
語言選擇不用選擇直接下一步,
自動更新選擇跳過自動更新,
安裝類型選擇不用選直接下一步
Java主目錄位置,選擇我們第一步粘貼JDK的位置,切記這個路徑不能有中文也不能有空格,像C:\Program ?File\這種都會最后失敗。
選擇JDK的安裝目錄和下圖標示的這一樣就可以,
?
之后一直下一步就可以
完成之后進入Opatch目錄,
依然是 Ctrl+Shift 右擊空白處,點擊“在此處執行窗口命令(W)”
?
執行 ?opatch ?version?如果是13.9.4.2.4那么升級Opatch就成功了。
?
第三步?安裝補丁
除了6880880文件不用再操作了,剩下兩個都需要操作一遍,我們先用29204657作為示例,
?
同樣,Ctrl+Shift ?鼠標右擊空白處--->在此處執行命令窗口
..\opatch????apply??-jdk??D:\software\jdk1.8.0_1.31
四部分之間都有空格,藍色部分是之前的JDK路徑 替換成你本地的JDK, 之后回車鍵執行,
會詢問你兩次是否繼續,?y|n ??都是點擊y即可,小寫的,
出現?OPatch succeeded就成功了,
?
?
?
?
同樣的做法再去31178516??文件夾中操作一遍,必須進入文件夾,再
Ctrl+Shift ?鼠標右擊空白處,在此處執行命令窗口
?
第四步 查看是否安裝成功
?
安裝完成之后查看是否安裝成功
在31178516這個命令窗口執行命令??..\Opatch??lsinventory
?
如果有31178516 和23596385的話,就證明安裝補丁成功
總結
以上是生活随笔為你收集整理的Oracle的12c版本打补丁的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 自动化测试工程师简历
- 下一篇: AWD流量分析