ora-1017 无效 username/password;使用 occi 连接登录被拒绝
ora-1017 invalid username/password; logon denied using occi connection
尝试使用 occi 在 oracle linux 版本 5 虚拟机上连接到我的本地 oracle 数据库(版本 11.2.0.3)时出现 ora-1017 错误。
连接码片:
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);
}
- 我可以使用 sqlplus 连接到模式。
- 我尝试将 SEC_CASE_SENSITIVE_LOGON 设置为 false,但没有帮助。
- 该架构是使用大写用户名和密码创建的,我也为我的变量提供大写值,据我所知,OCCI 无论如何都会将凭据转换为大写,因此它应该可以工作。
- ORACLE_SID 环境变量已正确设置,tnsnames.ora 数据也已正确设置。
- 顺便说一句,这段代码首先在我的主机(win10)上使用 visual studio 2010 进行了测试,它工作正常,但在我的 linux 虚拟机(使用 virtualbox)上没有。我尝试同时使用 tnsnames.ora 和 localhost 中所述的主机,仍然遇到同样的问题,但是 sqlplus 允许我使用 localhost 和 tnsnames 主机进行连接。
我尝试了在 google 上可以找到的所有内容,但仍然一无所获,所以如果有人有任何有用的提示,我们将不胜感激。
原来我需要在编译命令中添加 -D_GLIBCXX_USE_CXX11_ABI=0
标志,现在可以了。
尝试使用 occi 在 oracle linux 版本 5 虚拟机上连接到我的本地 oracle 数据库(版本 11.2.0.3)时出现 ora-1017 错误。
连接码片:
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);
}
- 我可以使用 sqlplus 连接到模式。
- 我尝试将 SEC_CASE_SENSITIVE_LOGON 设置为 false,但没有帮助。
- 该架构是使用大写用户名和密码创建的,我也为我的变量提供大写值,据我所知,OCCI 无论如何都会将凭据转换为大写,因此它应该可以工作。
- ORACLE_SID 环境变量已正确设置,tnsnames.ora 数据也已正确设置。
- 顺便说一句,这段代码首先在我的主机(win10)上使用 visual studio 2010 进行了测试,它工作正常,但在我的 linux 虚拟机(使用 virtualbox)上没有。我尝试同时使用 tnsnames.ora 和 localhost 中所述的主机,仍然遇到同样的问题,但是 sqlplus 允许我使用 localhost 和 tnsnames 主机进行连接。
我尝试了在 google 上可以找到的所有内容,但仍然一无所获,所以如果有人有任何有用的提示,我们将不胜感激。
原来我需要在编译命令中添加 -D_GLIBCXX_USE_CXX11_ABI=0
标志,现在可以了。