我正在尝试在Ubuntu Linux 12.04 64位上使用DBCA在Oracle 11g上安装创建数据库。
我按照here的说明操作,但我得到了
ORA-12547:运行DBCA时TNS丢失联系人。
以下是详细信息。有人可以协助解决方案吗?
我没有使用/opt/oracle
作为“oracle”用户主页,而是使用/home/oracle
我没有安装32位版本的libstdc ++ 5
我做了与发布
安装导致“缺少包裹”。我尝试从ubuntu为这些软件包进行apt-get安装,但是ubuntu说它们不存在。 然后我在说明中看到了:
一旦您到达“pre-reqs”屏幕,请选中“Ignore all”继续安装。
从./dbca
运行$ORACLE_HOME/bin
时,ORA-12547失败。
我检查了$ORACLE_HOME/network/admin
和listener.ora,sqlnet.ora和tnsnames.ora看起来都很好。
但是,我认为tnsnames.ora未正确读取,因为./tnsping
失败并且错误消息指出使用了“EZ Connect”。
但在我的sqlnet.ora中,我有
names.directory_lookup = (TNSNAMES,EZCONNECT)
只有在尝试使用tnsnames后才能使用EZ Connect。
此外,我有时会得到ORA-12541:没有听众。我试过运行./netca
。在我对侦听器执行测试之前一切正常,然后失败。
我无法运行./lsnrctl
。绝对没有任何反应,以及lsnrctl start,stop,status。
我无法通过sqlplus。如果我运行./sqlplus
,它会直接询问我的用户名/密码。
如果我./sqlplus / as sysdba
,则会导致“ORA-12547:TNS失去联系”。
在.bashrc
。
我尝试重新运行root.sh,但问题并没有解决。
/etc/oratab
没问题
/etc/hosts
没问题,但我不能总是ping“localhost”或“127.0.0.1”,或“ubuntu”或“127.0.1.1”
显示相同的TNS或侦听器错误。
答案 0 :(得分:3)
当我登录oracle(sqlplus system / pass as sysdba)时,我得到了这个:
错误:
ORA-12547:TNS:尝试连接Oracle时失去联系。
首先,我认为服务器已关闭,但我检查一下,没关系。很多人都说'chmod 6751 oracle',我做到了,但我又犯了一个错误:
ERROR:
ORA-01031:权限不足
输入用户名:
最后,我将系统用户从root切换到oracle。我登录成功。
答案 1 :(得分:0)
Ensure the DB is up and running and you can connect locally AS SYSDBA to the database
using Oracle binaries owner (usually oracle:oinstall Unix / Linux user). If it does not
work, probably you encounter a different problem.
1. Check privileges of an Oracle file on Unix / Linux host where database is running:
cd $ORACLE_HOME/bin
ls -ltr oracle
2. Change permissions as below:
chmod 6751 oracle
ls -ltr oracle
This code may help you lot.