zoukankan      html  css  js  c++  java
  • Oracle常见错误及解决方法

    环境:LINUX下的oracle数据库10g

     

    ORA12541/ORA12514TNS:没有监听器 原因:没有启动监听器或者监听器损坏如果是前者,使用数据库安装的用户oracle(这里oracle用户是指Linux用户,非oracle或者root的其他用户可能没有权限操作安装目录下的文件)进入Linux系统,然后:

    [oracle@ORACLE ~]$ lsnrctl status    #查看监听器的状态
    [oracle@ORACLE ~]$ lsnrctl status    #如果没有启动那就使用此命令启动监听器

     

    如果是后者,因为我还知不道Linux下有没有工具配置TNS,所以只能通过oracle用户(这里是指Linux用户)手动编辑文件或者是通过Xshell或者是SSH软件来上传文件,这里要注意的是oracle10g版本(不管是客户端还是服务器),它的TNS配置文件在目录“$ORACLE_BASE/product/11.2.0/db_1/network/admin/”下没有,因为倒是此文件夹下的“sample”文件夹下有一个tnsnames.ora;但是不管手动编辑还是上传tnsnames.ora文件,都是将文件存放在“$ORACLE_BASE/product/11.2.0/db_1/network/admin/"(此目录只有一个sqlnet文件和一个文件夹)目录下;

      

     

    • 这里给一个实例:

    S1 =         #这个时间监听名称,不要跟SID实例名称混了;
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = ORACLE)(PORT = 1521))  #HOST = ORACLE这里的RACLE表示主机名,有的是具体的IP地址(广域网IP,局域网IP,或者是127.0.0.1)
        )
        (CONNECT_DATA =
          (SERVICE_NAME = hk06)  #这里的数据库的SID
        )
      )

    •   上传tnsnames.ora

    如果是使用上传方法的话,可以在windows下安装oracle的客户端,然后再利用Net Configuration Assistant工具来配置一个;

     

     

    补充——可以通过命令:#netca 来调用“Net Configuration Assistant”工具,资料来自:这里

     

     

    ORA12154TNS:能解析服务名 原因:ORACLE的网络服务名没有正确配置。请使用“Net Configuration Assistant”工具向导之“本地网络服务名配置”配置TNS即可。如果仍没有解决,请继续向下看。

     

    ORA-01017:用户名或者密码错误被拒绝,检查数据库的密码和=输入的密码是否一致;

    ORA-01031:使用用户没有执行操作的权限;更换用户或者使用root更改文件权限(前者优先);

     

    ORA-12520/ORA-12516: ORA-12516: TNS: 监听程序无法找到匹配协议栈的可用句柄,这个是解决之道,因为我是用xml解析数据,所以会导致连接数过多!

     

  • 相关阅读:
    C#中的Virtual
    DevExpress控件中LayoutControl的使用
    汉字获取首字母拼音
    工具类
    C# 根据时间创建文件夹
    图片延迟加载
    IIS日志分析的作用
    SQL2008R2 无法读取此系统上以前注册的服务器的列表--网上方法不可行
    windows 服务器系统日志分析及安全
    301跳转
  • 原文地址:https://www.cnblogs.com/ufindme/p/4187284.html
Copyright © 2011-2022 走看看