上篇介紹了 WLST 命令列的基本用法,本篇將介紹使用 .py 檔的方式,將執行的命令寫成 .py 檔,利用遠端的方式更自動化地管理 WebLogic。
啟動 Managed Server
編輯 .py 檔,檔名命名為 startManagedServer.py,放置於 <Oracle_Home>\user_projects\domains\base_domain 下,檔案內容如下:
connect('weblogic', 'P@ssw0rd', 't3://localhost:7001') # 連線 WLST
start('ManagedServer_1', 'Server', 't3://localhost:7001') # 啟動 Managed Server
exit() # 退出 WLST
可利用遠端電腦執行此檔案達成啟動 Managed Server,指令如下:
Windows
cd /d D:\Oracle\Middleware\Oracle_Home\user_projects\domains\base_domain
.\bin\setDomainEnv.cmd
java weblogic.WLST startManagedServer.py
或單行命令:
cd /d D:\Oracle\Middleware\Oracle_Home\user_projects\domains\base_domain && .\bin\setDomainEnv.cmd && java weblogic.WLST startManagedServer.py
結果:
Linux
cd /opt/Oracle/Middleware/Oracle_Home/user_projects/domains/base_domain/bin
. ./setDomainEnv.sh
java weblogic.WLST startManagedServer.py
或單行命令:
cd /opt/Oracle/Middleware/Oracle_Home/user_projects/domains/base_domain/bin && . ./setDomainEnv.sh && java weblogic.WLST startManagedServer.py
關閉 Managed Server
編輯 .py 檔,檔名命名為 stopManagedServer.py,放置於 <Oracle_Home>\user_projects\domains\base_domain 下,檔案內容如下:
connect('weblogic', 'P@ssw0rd', 't3://localhost:7001') # 連線 WLST
shutdown('ManagedServer_1', 'Server', ignoreSessions='true', force='true') # 關閉 Managed Server
exit() # 退出 WLST
可利用遠端電腦執行此檔案達成關閉 Managed Server,指令如下:
Windows
cd /d D:\Oracle\Middleware\Oracle_Home\user_projects\domains\base_domain
.\bin\setDomainEnv.cmd
java weblogic.WLST stopManagedServer.py
或單行命令:
cd /d D:\Oracle\Middleware\Oracle_Home\user_projects\domains\base_domain && .\bin\setDomainEnv.cmd && java weblogic.WLST stopManagedServer.py
結果:
Linux
cd /opt/Oracle/Middleware/Oracle_Home/user_projects/domains/base_domain/bin
. ./setDomainEnv.sh
java weblogic.WLST stopManagedServer.py
或單行命令:
cd /opt/Oracle/Middleware/Oracle_Home/user_projects/domains/base_domain/bin && . ./setDomainEnv.sh && java weblogic.WLST stopManagedServer.py
檢查伺服器狀態
編輯 .py 檔,檔名命名為 checkServersState.py,放置於 <Oracle_Home>\user_projects\domains\base_domain 下,檔案內容如下:
connect('weblogic', 'P@ssw0rd', 't3://localhost:7001') # 連線 WLST
serverList = ls('Servers', returnMap='true') # 列出所有伺服器
for server in serverList: state(server, 'Server') # 顯示伺服器狀態
exit() # 退出 WLST
可利用遠端電腦執行此檔案達成檢查伺服器狀態,指令如下:
Windows
cd /d D:\Oracle\Middleware\Oracle_Home\user_projects\domains\base_domain
.\bin\setDomainEnv.cmd
java weblogic.WLST checkServersState.py
或單行命令:
cd /d D:\Oracle\Middleware\Oracle_Home\user_projects\domains\base_domain && .\bin\setDomainEnv.cmd && java weblogic.WLST checkServersState.py
Linux
cd /opt/Oracle/Middleware/Oracle_Home/user_projects/domains/base_domain/bin
. ./setDomainEnv.sh
java weblogic.WLST checkServersState.py
或單行命令:
cd /opt/Oracle/Middleware/Oracle_Home/user_projects/domains/base_domain/bin && . ./setDomainEnv.sh && java weblogic.WLST checkServersState.py
參考資料
- Error: Could not find or load main class weblogic.security.Encrypt
- Jython WLST using python threading module (Weblogic 10)