常见问题一:ORA-12541: TNS:no listener

在这里插入图片描述
解决办法:在虚拟机上找到oracle对应权限的用户,去执行监控端口的启动

  //启动监听服务
 
  [root@server36 ~]# su oracle
 
  [oracle@server36 ~]$ lsnrctl start
 
  //停止监听服务
 
  [oracle@server36 ~]$ lsnrctl stop
 
 
  //查看监听状态
 
  [oracle@server36 ~]$ lsnrctl status




常见问题二:ORA-12514:TNS:listener does not currently know of service requested in connect descriptor

在这里插入图片描述

解决办法:查看监听端口是否开启,以及数据库服务器是否启动



常见问题三:ERROR: ORA-01031: insufficient privileges

在这里插入图片描述

解决办法:因为你不是使用的oracle用户,权限不够,需要切换到你指定的Oracle用户`su oracle


常见问题四:`ORA-01034: ORACLE not available以及

ORA-01078: failure in processing system parameters LRM-00109: could not open parameter file ‘/data/oracle/product/11.2.0/dbs/initorcl.ora’(出现原因:可能就是你中途电脑没关电脑或者电脑自动重启了)

在这里插入图片描述
在这里插入图片描述
解决办法:
执行下列命令

su oracle
sqlplus /nolog
conn /as sysdba
startup
exit
su oracle
find / -name init.ora*

在这里插入图片描述

把下面这个文件复制到刚刚找不到的那个文件:类似于我这种即可

主要复制你自己找到的对应那个文件哈,然后复制到你启动数据库服务报错的这个路径下could not open parameter
file ‘/data/oracle/product/11.2.0/dbs/initorcl.ora即可’‘’

mv /data/oracle/admin/orcl/pfile/init.ora.0112023161258 /data/oracle/product/11.2.0/dbs/initorcl.ora


常见问题六:ORA-00054: resource busy and acquire with NOWAIT specified or timeout expired

发生原因:可能是你删除某个数据库中的表,当时其他终端有连接到这个表空间上,就会发生冲突

解决办法:关闭终端上的数据库;连接即可



6、现在尝试使用windows客户端navicat连接测试一下,输入对应的连接名,服务名,端口号,用户名以及密码,测试通过!

在这里插入图片描述

补充一点:oracle连接时oci和thin的区别

  1. 从使用上来说,oci必须在客户机上安装oracle客户端或才能连接,而thin就不需要,因此从使用上来讲thin还是更加方便,这也是thin比较常见的原因。
  2. 原理上来看,thin是纯java实现tcp/ip的c/s通讯;而oci方式,客户端通过native java method调用c library访问服务端,而这个c library就是oci(oracle called interface),因此这个oci总是需要随着oracle客户端安装(从oracle10.1.0开始,单独提供OCI Instant Client,不用再完整的安装client)
  3. 它们分别是不同的驱动类别,oci是二类驱动, thin是四类驱动,但它们在功能上并无差异。
  4. 虽然很多人说oci的速度快于thin,但找了半天没有找到相关的测试报告。
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐