2017-01-31 120 views
0

在使用occi在Oracle Linux版本5虛擬機上嘗試連接到本地oracle數據庫(版本11.2.0.3)時,出現ora-1017錯誤。
連接碼片:ora-1017無效的用戶名/密碼;登錄被拒絕使用occi連接

user = "MY_USERNAME"; 
    passwd = "MY_PASSWORD"; 
    db = "localhost:1521/my_instance_name"; 

    env = Environment::createEnvironment(Environment::DEFAULT); 

    try 
    { 
    con = env->createConnection(user, passwd, db); 
    } 
    catch (SQLException& ex) 
    { 
    cout << ex.getMessage(); 

    exit(EXIT_FAILURE); 
    } 

- I用sqlplus可以連接到架構。
- 我試圖設置SEC_CASE_SENSITIVE_LOGON爲false,沒有幫助。
- 架構是使用大寫的用戶名和密碼創建的,我也給出了我的變量大寫值,並且據我所知,OCCI將憑據轉換爲大寫,因此它應該可以工作。
- 正確設置ORACLE_SID環境變量以及tnsnames.ora數據。
- 順便說一下,這個代碼首先在我的主機pc(win10)上使用visual studio 2010進行了測試,並且它工作正常,但不在我的linux虛擬機上(使用virtualbox)。我嘗試使用tnsnames.ora和localhost中聲明的主機,仍然遇到同樣的問題,但sqlplus允許我使用localhost和tnsnames主機進行連接。

我嘗試了一切,我可以找到谷歌,但仍然沒有,所以如果任何人有任何有用的提示,將不勝感激。

回答

0

原來我需要將-D_GLIBCXX_USE_CXX11_ABI=0標誌添加到編譯命令,它現在可以工作。

相關問題