小编Wil*_*hes的帖子

确定相关tnsnames.ora文件的位置

我安装了32位和64位Oracle 11g驱动程序.我搜索我的电脑,寻找名为"tnsnames.ora"的文件,并在以下位置找到3个:

1. C:\Oracle\product\11203_32bit\CLIENT_1\NETWORK\ADMIN
2. C:\Oracle\product\11203_64bit\CLIENT_1\NETWORK\ADMIN
3. C:\Windows\TNS
Run Code Online (Sandbox Code Playgroud)

tnsnames.ora文件的第三个位置的存在让我感到惊讶.

我的PC上安装了以下Oracle客户端:

"C:\Program Files (x86)\Quest Software\Toad for Oracle 11.6\Toad.exe"
"C:\Program Files\Devart\dbForge Studio Express for Oracle\dbforgeoracle.exe"
Run Code Online (Sandbox Code Playgroud)

基于每个程序的位置(Program Files(x86)与c:\ Program Files),这向我建议,32位程序Toad应该使用32位驱动程序,而dbForge应该使用64位驱动程序.

dbForge似乎使用位置#2或#3中的tnsnames.ora文件.我知道这一点,系统地重命名除了一个tns文件之外的所有文件,然后在尝试使用app创建新连接时检查从文件中读取的连接名是否可用.

但是,TOAD似乎只识别位置#3中的tnsnames.ora文件,它根本无法识别位置2中的tnsnames.ora文件!(因为它是一个32位程序,我没想到它会识别位置2中的tns文件,就是这种情况).为了清楚起见,TOAD测试总结了TOAD测试,TOAD只识别位置3中的tns文件.

其他同事在他们的机器上没有位置3的tns文件.我不知道为什么我这样做.当我运行Toad时,它会显示以下2个Home,其中32位Home是活动的.

OraClient11g_home1 (11.2.0.3)
    ORACLE_HOME:C:\app\C39293\product\11.2.0\client_1
    ORACLE_HOME_NAME:OraClient11g_home1
    ORACLE_HOME_KEY:HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraClient11g_home1
    ORACLE_SID:
    NLS_LANG:AMERICAN_AMERICA.WE8MSWIN1252
    SQLPATH:
    LOCAL:
    Client DLL:C:\app\C39293\product\11.2.0\client_1\oci.dll
    TNSNames.ora:
    SQLNet.ora:
    LDAP.ora:
    Login.sql:
    GLogin.sql:
    In system PATH:No
    Home is valid:No
OraClient11g_home1_32bit (11.2.0.3)
    ORACLE_HOME:c:\oracle\product\11203_32bit\CLIENT_1
    ORACLE_HOME_NAME:OraClient11g_home1_32bit
    ORACLE_HOME_KEY:HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraClient11g_home1_32bit
    ORACLE_SID:
    NLS_LANG:AMERICAN_AMERICA.WE8MSWIN1252
    SQLPATH:c:\oracle\product\11203_32bit\CLIENT_1\dbs
    LOCAL:
    Client DLL:c:\oracle\product\11203_32bit\CLIENT_1\bin\oci.dll
    TNSNames.ora:
    SQLNet.ora:
    LDAP.ora:
    Login.sql:
    GLogin.sql:c:\oracle\product\11203_32bit\CLIENT_1\sqlplus\admin\glogin.sql
    In system PATH:Yes
Run Code Online (Sandbox Code Playgroud)

Q1: OraClient11g_home1是我的64位家用还是我安装了两个Oracle客户端?

Q2:为什么32位TOAD不使用位置#1中的tns而不是仅使用位置#3中的tns?

问题3:如果我离开位置3的tns文件,dbForge和TOAD都可以工作,但我想知道为什么这样我就能准确地理解如何将tns信息从一台机器移动到另一台机器.

oracle toad sqlplus

10
推荐指数
2
解决办法
6万
查看次数

如何在Jenkins Groovy脚本控制台中获取环境变量?

在"全局属性"中的Jenkins配置(http:// JenkinsURL/configure)中,我定义了一些"环境变量".

如何在Groovy Script控制台(http:// JenkinsURL/script)中访问它们?

我试图找到合适的解决方案(例如,在Jenkins构建步骤(Windows)中从Groovy脚本中访问构建环境变量的解决方案)但似乎它们都不适用于我.

我试过例如:

System.getenv("myVar")
Run Code Online (Sandbox Code Playgroud)

manager.build.getEnvironment(listener).get('myVar') //no manager error
Run Code Online (Sandbox Code Playgroud)

import jenkins.model.Jenkins
Jenkins.instance.getProperty('myVar') //No signature of method: hudson.model.Hudson.getProperty() is applicable for argument types: (java.lang.String)
Run Code Online (Sandbox Code Playgroud)

import jenkins.model.Jenkins
Jenkins.instance.ParameterValue("DEV_local")
Run Code Online (Sandbox Code Playgroud)

groovy jenkins

10
推荐指数
2
解决办法
2万
查看次数

在从文件恢复缓冲区后,有没有办法在Emacs中保留撤消列表?

在执行恢复缓冲区或使用自动恢复模式后,如何让Emacs保留其缓冲区的撤消历史记录?

在Vim中,如果在光盘上更改了缓冲区中打开的文件,Vim会提示我重新加载该文件.然后,如果我愿意的话,我可以简单地点击"你"来撤消重新加载,甚至可以从那时起再往前走.当我恢复缓冲区时,Emacs似乎丢弃了所有撤消信息.

emacs elisp undo

9
推荐指数
3
解决办法
1665
查看次数

如何在Ubuntu 11.10中使用Python 2.6?

Ubuntu 11.10上的默认Python版本是2.7,但我正在寻找2.6.如何将其设置为默认值以及可执行文件位于何处?

我键入which python2.6但它什么也没有返回,但我确实有一个python2.6文件夹/usr/lib/python2.6.但它看起来不像是在同一条路径上的python2.7 /usr/lib/.在python2.6中,有两个文件夹:dist-packageslib-dynload.

其实我正在配置PyDev,它要求我指定python2.6可执行文件的位置.python2.7可执行文件只需使用自动配置即可轻松定位,因为它是默认设置.

python ubuntu pydev

9
推荐指数
1
解决办法
1万
查看次数

Oracle Query获取当前用户具有读访问权限的表列表

如何查询Oracle数据库以列出当前用户具有读取权限的表?

oracle

9
推荐指数
1
解决办法
2万
查看次数

为什么在IPython中将b = 1,2,3解析为(',b','=','1,2,3')?

我注意到IPython有一些非常奇怪的解析表现为不合法的Python语法.

In [1]: ,,b = 1,2,3
Out[1]: (',b', '=', '1,2,3')
Run Code Online (Sandbox Code Playgroud)

分号也有类似的东西,但它并没有分成一个元组.

In [4]: ;;foo = 1;2;3
Out[4]: ';foo = 1;2;3'
Run Code Online (Sandbox Code Playgroud)

虽然它看起来;意味着该行的其余部分被视为文字字符串,但情况并非总是如此:

In [5]: ,foo
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-5-f2137ad20ab5> in <module>()
----> 1 foo("")

NameError: name 'foo' is not defined

In [6]: ;foo
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-6-f2137ad20ab5> in <module>()
----> 1 foo("")

NameError: name 'foo' is not defined
Run Code Online (Sandbox Code Playgroud)

为什么IPython会这样做?这是记录还是可配置的?

python ipython

9
推荐指数
1
解决办法
131
查看次数

如何在Rust中释放通过FFI分配的*char?

我通过Rust的FFI调用LLVM API.LLVMPrintModuleToString 使用strdup创建一个字符串.但是,当我将指针包装在一个中时CString,当Rust丢弃它时会出现错误.

#![feature(cstr_memory)]
use std::ffi::CString;

extern crate llvm_sys as llvm;

fn main() {
    let llvm_ir_cstring;
    unsafe {
        let module = llvm::core::LLVMModuleCreateWithName(b"nop\0".as_ptr() as *const _);
        let llvm_ir_char_ptr = llvm::core::LLVMPrintModuleToString(module);
        llvm::core::LLVMDisposeModule(module);
        llvm_ir_cstring = CString::from_ptr(llvm_ir_char_ptr);
    }

    println!("llvm_ir_cstring: {:?}", llvm_ir_cstring);
}
Run Code Online (Sandbox Code Playgroud)

Valgrind错误:

==10413== Invalid read of size 4
==10413==    at 0x4870586: pthread_mutex_lock (in /usr/lib/libpthread-2.21.so)
==10413==    by 0x17F89B: je_arena_dalloc_small (in /home/wilfred/projects/bfc/target/debug/bfc)
==10413==    by 0x178C30: je_sdallocx (in /home/wilfred/projects/bfc/target/debug/bfc)
==10413==    by 0x10FA57: heap::imp::deallocate::h1fb92d59333c497bkja (heap.rs:268)
==10413==    by 0x10F999: heap::deallocate::h5680e3fedc9e96320da (heap.rs:89)
==10413==    by 0x10F929: …
Run Code Online (Sandbox Code Playgroud)

ffi rust

9
推荐指数
1
解决办法
828
查看次数

Retq指令,它返回哪里

我无法理解汇编指令retq返回的位置.

据我所知,当我的普通代码执行时,它会返回到堆栈中指定的地址.但它如何知道堆栈中的返回地址位于何处?

简而言之,它是否使用rbp或esp来查找堆栈中的地址?

stack-overflow inline-assembly

8
推荐指数
1
解决办法
1万
查看次数

groovy-all - *.jar和groovy-all之间的区别 - * - indy.jar

这两个文件之间的实际区别是什么,groovy-all-2.2.1.jar并且groovy-all-2.2.1-indy.jarGROOVY_HOME\embeddable目录中可用?

到目前为止我还没有使用过indy文件,我很想知道它的用途.

谢谢!

groovy

8
推荐指数
1
解决办法
3152
查看次数

解释器或编译器上下文中的单元是什么?

Python代码对象具有一个属性co_cellvars.PyPy的字节码解释器的文档通常使用术语Cell.

在其他语言中,Rust 提供了Cell数据类型.谷歌搜索表明他们以某种方式与封闭有关.

在编程语言实现的上下文中,什么是单元?细胞解决了什么问题?

python compiler-construction closures interpreter rust

8
推荐指数
1
解决办法
1272
查看次数