多例項資料庫一個用PSU(轉載)
背景:
現在Oracle 11gR2 擴充套件補丁最新已經到20200714了,今天給生產系統打了幾個系統補丁,有很多裝置上是一臺伺服器建立了十幾個資料庫,這樣涉及到後面跑指令碼和啟停資料庫是一件非常麻煩的事,特寫這篇部落格在這裡記錄今天的完整處理過程。
單庫操作步驟:
1.解壓替換OPatch
1
2
3
4
5
6 |
cd
psu
cd
$ORACLE_HOME/
mv
OPatch/ OPatch_bak
cd
~
/psu
unzip p6880880_112000_Linux-x86-64.zip -d $ORACLE_HOME/
unzip p31326405_112040_Linux-x86-64.zip |
2.關閉資料庫和監聽
1
2
3 |
lsnrctl stop
sqlplus / as sysdba
shut immediate |
3.應用補丁
1
2
3
4
5
6
7 |
cd
31326405
/31103343
$ORACLE_HOME
/OPatch/opatch
prereq CheckConflictAgainstOHWithDetail -ph ./
$ORACLE_HOME
/OPatch/opatch
apply
cd
..
/31219953
$ORACLE_HOME
/OPatch/opatch
prereq CheckConflictAgainstOHWithDetail -ph ./
$ORACLE_HOME
/OPatch/opatch
apply |
4.檢查補丁是否已經打上
1
2
3
4
5 |
[oracle@pjs-jypt 31103343]$ $ORACLE_HOME
/OPatch/opatch
lspatches
31219953;OJVM PATCH SET UPDATE 11.2.0.4.200714
31103343;Database Patch Set Update : 11.2.0.4.200714 (31103343)
OPatch succeeded. |
5.跑升級指令碼
1
2
3 |
sqlplus / as sysdba
@?
/rdbms/admin/catbundle
.sql psu apply
@?
/rdbms/admin/utlrp
.sql |
多庫環境操作步驟:
1.獲取所有資料庫的SID資訊
1
2
3
4
5
6
7
8
9 |
[db-oracle@CXDB~
/psu
]$
ps
-ef|
grep
pmon |
grep
-
v
grep oracle 1194 1 0 18:39 ? 00:00:00 ora_pmon_dsgmon oracle 1296 1 0 18:39 ? 00:00:00 ora_pmon_zzdb oracle 1411 1 0 18:40 ? 00:00:00 ora_pmon_db oracle 1525 1 0 18:40 ? 00:00:00 ora_pmon_SKDB oracle 1645 1 0 18:40 ? 00:00:00 ora_pmon_ZXDB oracle 1801 1 0 18:40 ? 00:00:00 ora_pmon_OADB oracle 1908 1 0 18:40 ? 00:00:00 ora_pmon_QCDB grid 10471 1 0 Jul03 ? 00:07:03 asm_pmon_+ASM |
2.配置停庫指令碼
1
2
3
4
5
6
7
8
9
10
11
12
13
14 |
#!/bin/ksh ORACLE_SID=
"$1" echo
$i sqlplus / as sysdba << EOF shut immediate; exit EOF sh shut.sh dsgmon sh shut.sh zzdb sh shut.sh db sh shut.sh SKDB sh shut.sh ZXDB sh shut.sh OADB sh shut.sh QCDB |
3.應用補丁
1
2
3
4
5
6
7 |
cd
31326405
/31103343
$ORACLE_HOME
/OPatch/opatch
prereq CheckConflictAgainstOHWithDetail -ph ./
$ORACLE_HOME
/OPatch/opatch
apply
cd
..
/31219953
$ORACLE_HOME
/OPatch/opatch
prereq CheckConflictAgainstOHWithDetail -ph ./
$ORACLE_HOME
/OPatch/opatch
apply |
4.跑升級指令碼
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 |
#!/bin/ksh ORACLE_SID=
"$1" echo
$i sqlplus / as sysdba << EOF
startup
@?
/rdbms/admin/catbundle
.sql psu apply;
@?
/rdbms/admin/utlrp
.sql;
shutdown
immediate; exit EOF sh exec_psu.sh dsgmon sh exec_psu.sh zzdb sh exec_psu.sh db sh exec_psu.sh SKDB sh exec_psu.sh ZXDB sh exec_psu.sh OADB sh exec_psu.sh QCDB |
5.重啟資料庫:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 |
lsnrctl start #!/bin/ksh ORACLE_SID=
"$1" echo
$i sqlplus / as sysdba << EOF startup force exit EOF sh restart.sh dsgmon sh restart.sh zzdb sh restart.sh db sh restart.sh SKDB sh restart.sh ZXDB sh restart.sh OADB sh restart.sh QCDB |
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69978212/viewspace-2707991/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 多例項資料庫一個用PSU資料庫
- MySQL資料庫入門多例項配置MySql資料庫
- Oracle 12.2應用PSU後資料庫無法啟動Oracle資料庫
- MySQL多例項使用mysqld_multi stop 無法關閉資料庫MySql資料庫
- All in One:Prometheus 多例項資料統一管理最佳實踐Prometheus
- 【PSU】Oracle打PSU及解除安裝PSU(單例項)Oracle單例
- 採用linux cgroup控制redis主從多例項資源LinuxRedis
- MySQL多例項配置MySql
- 構建一機多例項tomcat叢集Tomcat
- flutter 多例項實戰Flutter
- MySQL5.7 多例項MySql
- mysql多例項安裝MySql
- Oracle 檢查當前資料庫CPU和PSU補丁資訊Oracle資料庫
- 【資料庫資料恢復】ASM例項不能掛載的Oracle資料庫資料恢復案例資料庫資料恢復ASMOracle
- MySQL 多例項配置管理:MySql
- MySQL多例項環境部署MySql
- Android Flutter 多例項實踐AndroidFlutter
- 用Python寫一個向資料庫填充資料的小工具Python資料庫
- 多個資料庫是否可以共有一個Oracle 11g RAC例項KG資料庫Oracle
- 玩轉資料庫,用EXCEL就夠了資料庫Excel
- 用OMF來簡化資料庫管理(轉)資料庫
- gluesql/gluesql:一個用Rust編寫的SQL資料庫引擎庫包SQLRust資料庫
- 達夢資料庫單例項轉實時同步叢集資料庫單例
- 【轉載】【EF Core】Code first 之使用新資料庫資料庫
- 【資料庫資料恢復】Oracle ASM例項無法掛載的資料恢復案例資料庫資料恢復OracleASM
- 資料庫應用優化(一)資料庫優化
- oracle資料庫建立資料庫例項-九五小龐Oracle資料庫
- canal同步mysql,監聽單例項,多例項配置MySql單例
- 模式:每個服務一個資料庫模式資料庫
- 資料庫轉換工具,不同資料庫之前任意轉換資料庫
- Linux下MySQL多例項部署記錄LinuxMySql
- 基於echarts非同步載入資料之多個series載入例項Echarts非同步
- 建立一個SQL測試資料庫 - 消費者資料庫SQL資料庫
- TiDB 分散式資料庫在轉轉公司的應用實踐TiDB分散式資料庫
- 單一資料庫拆分成幾十個資料庫的意義資料庫
- 大型資料庫應用 作業(一)資料庫
- 資料庫應用開發一、vs資料庫
- 玩轉資料庫索引資料庫索引