簡體   English   中英

無法在Oracle 10g中停止偵聽器

[英]Unable to stop the listener in oracle 10g

當我停止偵聽器時,收到以下錯誤消息...

適用於Linux的LSNRCTL:版本10.2.0.4.0-2012年6月1日生產12:21:31版權所有(c)1991,2007,Oracle。 版權所有。 NL-00857:“停止”參數的數量錯誤(需要0-1)

我正在使用以下命令停止偵聽器。

$ ORACLE_HOME / bin / lsnrctl停止LISTENER

當我通過命令提示符執行命令時,它可以工作,但通過java失敗。

請幫助我解決此問題。

我認為您的java cmdStr不正確; 您不能只是在命令之間放置空格(設置env變量然后調用lsnrctl)。 您需要使用分號:

String cmdStr="env ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1;/u01/app/oracle/product/10.2.0/db_1/bin/lsnrctl stop LISTENER";

env是一個bash命令,因此您不能從Java中執行它。 您可以將其制作成簡短的Shell腳本並從Java執行該腳本,也可以執行以下操作

String cmd = "/u01/app/oracle/product/10.2.0/db_1/bin/lsnrctl stop LISTENER";
String[] envp = "ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1";
Process proc = Runtime.getRuntime().exec(cmd, envp);
if (proc.waitFor() != 0) {
    throw new RuntimeException("exit value was nonzero");
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM