快乐10分-419可以上什么大学

首页

AD联系:507867812

快乐10分

时间:2019-11-22 19:21:57 作者:ag备用网址 浏览量:36270

快乐10分ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linuxORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linuxORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案,见下图

ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux,见下图

ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux,如下图

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linuxORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

如下图

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux,如下图

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linuxORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案,见图

快乐10分

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linuxORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linuxORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linuxORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linuxORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

快乐10分

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linuxORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

1.ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linuxORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linuxORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linuxORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

2.

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linuxORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

3.

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linuxORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

4.

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linuxORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linuxORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux。快乐10分

展开全文
相关文章
agk会员登录

ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案

湖北快3

ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案....

快赢481

ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案....

怎么买彩票

ORA-12705: Cannot access NLS data files or invalid environment specified 另类解决方案....

uedbet体育滚球

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux....

相关资讯
ag备用网址

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux....

快三平台

ant 1.8.2部署在241机器,Oracle 11g部署在242机器上,今天用ant 1.8.2 通过oracle驱动向oracle 11g的环境插入数据时报下面的错误:

builddb:

BUILD FAILED/home/build.xml:10: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environment specified

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:28 at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278) at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:785) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:370) at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at java.lang.reflect.Method.invoke(libgcj.so.7rh) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 2 seconds

根据“ ORA-12705”错误号,发现很多人给出了下面的解决方案:

.检查以下变量是否设置正确(invalid environment specified)NLS_LANG, ORA_NLSxx, or ORACLE_HOME

2.检查$ORACLE_HOME/nls/data目录中的nlb文件(NLS data files)是否损坏,可以先把文件备份,再从其他相同的环境中copy这些文件解决方法1排除了,原因是以前是好好的最近也未曾改过环境变量.查找$ORACLE_HOME目录有了惊人的发现,让俺既是惊喜又是振奋,惊喜的是终于发现了NLS目录丢失了,振奋的是自己还有一台机器也安装有Oracle11g. 看来这年头操作系统也靠不近了,不用说copy一份过来。

根据上述的解决方案,检查oracle服务器(242)机器“NLS_LANG, ORA_NLSxx, or ORACLE_HOME”参数,发现前两个参数没有设置,于是设置这两个参数,设置完后,问题依旧(重启机器后仍然没有解决问题)。

于是找了第三台机器(记为243机器),在243机器上执行同样的ant脚本,发现可以正确执行。初步怀疑是241机器和243机器的环境变量不同造成的,通过env命令,比较两台机器的环境变量,发现243机器设置了java_home,而241机器没有设置java_home,于是乎快速设置java_home的值(java_home的设置参考: http://www.linuxidc.com/Linux/2014-03/98859.htm)。之后,断掉以前的连接,新建一个连接,执行ant命令,数据插入成功。

总结:这里走了弯路,主要是ORA-12705的错误给人太多的错误信息了,期间尝试读过jdbc的驱动,没有发现什么特别的问题。在关键信息解决不了问题的时候,笨方法(比较法)往往还是很能凑效的。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

linux....

热门资讯