`
kaminlee
  • 浏览: 264612 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

Oracle学习手册:新手常见错误小集

 
阅读更多
没有人会否认ORACLE是全球最有影响的数据库产品之一;不过好的东西似乎总不是那么好用(初看起来如此),甚至有些无情--总会给layman们一个个无情的错误号。下面是我个人的总结,条条有用,希望能给初学者一点启示。
  关于"好的东西似乎总不是那么好用(初看起来如此)"的一个笑话:在参加 IBM DB2 512、513培训前,在校园网上下载到了安装程序,不过任凭我们几个同学研究个半天,也不知哪个文件是安装文件,竟没有安装成功。最后,一致认为:看来这个培训真是太有必要了!事后,才知道--我们下载的是4linux的!
  [以8.1.6为例]:
  1、ORA-12541:TNS:没有监听器

  原因:没有启动监听器或者监听器损坏。如果是前者,使用命令net start OracleOraHome TNSListener(名字可能有出入)即可;如果是后者,则使用"Net Configuration Assistant"工具向导之"监听程序配置"增加一个监听器即可(基本不用写任何信息,一路OK。在添加之前可能需要把所有的监听器先删除!)
  2、ORA-12500:TNS:监听程序无法启动专用服务器进程

  或
  ORA-12560:TNS:协议适配器错误
  原因:ORACLE的数据库服务没有启动。使用命令net start ORACLESERVICEORADB(ORADB为数据库名字)即可。如果仍没有解决,请继续向下看。
  3、如果数据库服务启动失败,则很有可能是其注册表项值损坏,最好的做法是以下两步:

  1)ORADIM -DELETE -SID oradb 删除数据库服务项
  2)ORADIM -NEW -SID oradb 新增数据库服务项
  注:这个过程中如果出错,就重启计算机!
  4、ORA-12154:TNS:能解析服务名

  原因:ORACLE的网络服务名没有正确配置。请使用"Net8 Configuration Assistant"工具向导之"本地网络服务名配置"配置TNS即可。如果仍没有解决,请继续向下看。
  5、ORA-1034 :TNS:ORACLE不可用

  原因:ORACLE的数据库服务正确启动,但是数据库没有打开!
  使用命令:
  1)svrmgrl 启动服务管理器
  2)connect internal 以internal身份登陆
  3)startup 打开数据库
  6、ORA-12560:TNS:协议适配器错误(顽固性的)

  原因:未知。
  解决:必杀技--打开"Windows任务管理器",杀死ORACLE.exe及ORADIM.exe进程,书写自己的ora_startup.bat,执行之!
  PS:
  1、我的ora_startup.bat:
  net start OracleOraHome81TNSListener
  net start ORACLESERVICEORADB
  svrmgrl 一般情况下不用,不过有时少不了它的,具体步骤见第5步。
  2、我的ora_shutdown.bat:
  net stop OracleOraHome81TNSListener
  net stop ORACLESERVICEORADB
  3、ORACLE相关服务名请参见"管理工具"之"服务"中以ORACLE开头的服务名。
    
·Oracle 10g绿色客户端 plus PL/SQL Developer-搭建方便的Oracle客户端使用环境

    
整个一个暑假都在做基于Oracle的一个数据处理程序。但是一直没有找到合适的人工访问实验室的数据库的方便的方法。
最酷的时候我的做法是自己写个程序用JDBC连接数据库自己扒下想要的表格……
后来发现实验室里边有很多机器是装过Oracle客户端的,但是ms都是当时实验室搭建数据库时用正版的安装光盘装的,我对这样臃肿的客户端有一种生理上的恐惧,于是还是用原始的方法进行自己的开发。
直到有一天,看到Oracle的官方网站上边有10g的绿色版的简易客户端……
http://www.oracle.com/technology/tech/oci/instantclient/index.html
Oracle的官方网站下载软件是要帐户的,这个申请一个就是了,本人没有网上的空间存放相关的软件,即使有也没有官网上的可靠和持久,所以就只给一个链接了。
http://www.allroundautomations.nl/plsqldev.html
PL/SQL Developer是一个开发与数据库相关工程的软件,ms是Free的,不大了解,只不过看到很多开发Oracle相关数据库的人都在用,我一般只用来当作与数据库服务器交互用的Client界面……,最多的时候主要是开一个窗口敲SQL语句,(杀鸡用牛刀了……)
下边是安装的过程,由于是免安装的,所以要自己配置一些环境变量和文件,比较麻烦……
首先将下载的Oracle客户端的压缩包解压到一个路径,在本机上解压到了E:\OracleClient下边,所以,实际上Oracle客户端的路径是E:\OracleClient\instantclient_10_2
然后进入instantclient_10_2文件夹,新建一个network文件夹,并在network文件夹下新建admin文件夹,在admin文件夹中新建名为tnsnames.ora文件,这个文件是用来配置连接远程数据库的登录信息的(客户端软件都会从这个相对路径下的文件中获取连接数据库的信息),内容如下:
databasename =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = ip address)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = database name)
)
)
例如我链接实验室数据库的对应文件内容是:
TCM =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = *.*.*.*)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = TCM)
)
)
IP我就不写出来了,我所用的数据库名为TCM,so……
    
然后安装PL/SQL Developer,过程是傻瓜式的。进入PL/SQL后(开始进入时会要求登录数据库,但是现在PL/SQL现在还找不到你的Oracle客户端,所以登录是不会成功的,但是可以进入软件),选择Tools->Preferences,在Oracle Home OCI Library两栏中分别填入Oracle客户端的路径和OCI文件的路径(oci.dll文件直接在instantclient_10_2文件夹下),所以我在这两个选项中填写的内容是"E:\OracleClient\instantclient_10_2"和"E:\OracleClient \instantclient_10_2\oci.dll"。这时再登录就可以登录成功了。如若还不行就重启一下PL/SQL。
    
绿色版的客户端可能会出现对于中文支持的问题,这主要是因为服务器端指定的字符集和客户端所默认的字符集是不相同的导致的,只要找到服务器端的字符集设置,然后将客户端的字符集设置与服务器端保持一致就好了。修改客户端字符集设置的方法有好几种,可以修改注册表,也可以用环境变量的方法解决。不过我这里介绍的客户端是绿色版的,只是解压到某一个路径而已,所以注册表的方法在这里不是很适用,所以我写了一个启动脚本,在启动PL/SQL之前,先建一个临时环境变量 nls_lang,并给变量赋值,再启动软件。(我曾经做过实验,通过建立系统环境变量的方法在这里是行不通的,具体的原因我说不清楚><)
    
我的脚本plsql.bat的内容如下:
    
set nls_lang=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
cd "c:\Program Files\PLSQL Developer"
PLSQLDev.exe
其中第二行进入的路径是PL/SQL Developer安装到的路径。
    
我这里的实际情况是服务器端的字符集设置为SIMPLIFIED CHINESE_CHINA.ZHS16GBK,所以我将这个值赋给nls_lang。通过运行plsql.bat脚本就可以正常的访问服务器数据库了。
分享到:
评论

相关推荐

    PLSQL_Developer9.0使用技巧

    二、Oracle 学习手册:新手常见错误小集 1. ORA-12541:TNS:没有监听器 原因:没有启动监听器或者监听器损坏。如果是前者,使用命令 net start OracleOraHome81TNSListener(名字可能有出入)即可;如果是后者,则...

    Oracle_win32_11gR1_database出错误及解决办法

    Oracle新手使用常见错误小集,1、ORA-12541:TNS:没有监听器。2、ORA-12500:TNS:监听程序无法启动专用服务器进程或ORA-12560:TNS:协议适配器错误。 3、如果数据库服务启动失败,则很有可能是其注册表项值损坏。。。4...

    c++常见错误集锦

    首先,**c++常见错误小集.doc**可能涵盖了一些基础的C++编程错误,如拼写错误、未声明的变量、括号不匹配、分号遗漏等。这些错误通常在编译阶段就会被发现,被称为编译错误。学习如何解读编译器的错误信息是解决这类...

    公务员公基础知识:儒家圣人小集.pdf

    "公务员公基础知识:儒家圣人小集" 儒家思想是中国古代最具影响力的思想体系之一,对中国文化和社会产生了深远的影响。本文主要介绍儒家思想的重要代表人物和儒家思想的发展历程。 一、至圣孔子 孔子(前551-前...

    C语言的错误小集 C语言的错误

    ### C语言中的常见错误 C语言作为一种广泛应用的编程语言,其语法严谨且功能强大,但同时也容易出现各种错误。本文将根据提供的文件信息,详细解释其中提到的一些C语言中的常见错误,帮助读者更好地理解并避免这些...

    dtx.zip:分布式事务英文资料小集

    收集的一些关于在现代开发运行环境(微服务等)下,解决分布式事务的论文。包括古老的saga论文,Atomikos公司Guy同学的一些想法及其它。

    计算机等考一级知识辅导:WPS2000实用技巧小集.docx

    WPS2000 实用技巧小集 本文档主要介绍了 WPS2000 软件的实用技巧和功能,旨在帮助用户更好地使用 WPS2000 软件,提高工作效率和质量。下面我们将详细介绍文档中的知识点: 1. 美化字体 WPS2000 软件提供了丰富的...

    常见SQL查询小集<原创>

    这篇“常见SQL查询小集”将探讨一些在数据库操作中常见的SQL查询方法,这些技巧和知识点对于任何涉及数据处理的开发者或DBA来说都极具价值。博主江5495在iteye博客上分享了这篇原创文章,旨在帮助读者提升SQL查询...

    微信小程序demo:桃花小集

    微信小程序是腾讯公司推出的一种轻量...通过学习和实践"桃花小集"这个微信小程序demo,开发者不仅可以掌握微信小程序的基础开发技能,还能了解到如何设计和实现一个具有特定主题的应用,从而提升自己的小程序开发能力。

    知识小集微信小程序

    这个“知识小集微信小程序”很可能是为分享、学习和交流IT知识而设计的一个平台。JavaScript是微信小程序的主要开发语言,因此对JavaScript的深入理解和熟练运用是开发微信小程序的基础。 1. **JavaScript基础**:...

    程序员JAVA常见面试题小集

    1. **基础语法**:Java的基础语法是学习任何高级特性的基石,包括变量类型(如基本类型与引用类型)、运算符、流程控制(如if-else,switch-case,for,while,do-while)、异常处理(try-catch-finally,throw,...

    Excel实用技巧小集

    这篇"Excel实用技巧小集"正是为了帮助用户提升Excel技能而准备的。以下将详细阐述一些关键知识点,结合提供的文件名,我们可以期待内容涵盖文档和文本资料。 首先,"Excel技巧.doc"很可能是一份详细的教程文档,它...

    GAS汇编指令小集html格式

    GAS汇编指令小集GAS汇编指令小集GAS汇编指令小集GAS汇编指令小集GAS汇编指令小集GAS汇编指令小集GAS汇编指令小集

    FreeRTOS资料小集.CHM

    FreeRTOS资料小集.CHM

    ISO9000国家注册审核员考试试题小集.pdf

    本文档为ISO9000国家注册审核员考试试题小集,涵盖了质量管理、统计技术、过程控制、质量控制等方面的知识点。 1. 统计技术:本部分考查统计技术的基本概念和方法,包括实验设计、假设检验、回归分析、计数型抽样...

    关于讲解批处理命令的视频小集

    在这个视频小集中,我们可能将学习到批处理命令的基本概念、用法以及如何创建和应用批处理脚本。 1. **批处理基本概念**:批处理源于DOS时代,延续至今,在Windows系统中仍然广泛应用。它通过简单的文本编辑器创建...

    经典java类书籍小集

    【标题】"经典java类书籍小集"所涵盖的知识点主要集中在Java编程语言的学习和进阶上。这个压缩包很可能是包含了一些Java编程的经典书籍章节或者摘要,旨在帮助学习者深入理解和掌握Java语言的核心概念、设计模式以及...

    知识小集微信小程序.zip

    【标题】"知识小集微信小程序.zip"是一个包含微信小程序源码的压缩文件,它旨在为开发者提供一个简单、易用且便于学习交流的平台。这个小程序可能包含了各种功能模块,便于用户快速理解和实践微信小程序的开发。 ...

    linux资料小集

    【Linux资料小集】是一个包含了丰富Linux学习资源的压缩包,涵盖了从基础操作到进阶编程的多个方面。其中的四个文件分别为: 1. **Linux+C函数库参考手册.rar**:这是一份关于Linux系统下C语言编程的重要参考资料。...

Global site tag (gtag.js) - Google Analytics