随笔分类 -  Oracle

摘要:Oracle Precompiler: Pro*C/C++ Release 3.0 MessagesPCC-02010: found end-of-file while scanning string literalCause: A string in a SQL statement, which should be delimited by single quotation marks, was not terminated properly.Action: Check that all strings are delimited.PCC-02011: found identifier gr 阅读全文
posted @ 2012-02-10 18:42 leanman 阅读(4147) 评论(0) 推荐(0)
摘要:有了oracle环境后,开始在Linux下编写proc*c 初始例子一般都是一个连接到数据库的程序:#include <stdio.h>#include <string.h>#include <stdlib.h>#include "sqlca.h"EXEC SQL BEGIN DECLARE SECTION; char *uid = "scott/tiger@CENTOS";EXEC SQL END DECLARE SECTION;int main(){ EXEC SQL CONNECT :uid; printf(&q 阅读全文
posted @ 2012-02-10 18:37 leanman 阅读(4240) 评论(0) 推荐(0)
摘要:Linux中在Oracle安装完毕以后,如果重新启动Linux ,Oracle是不会自动启动的,你可以通过手动调用dbstart命令来进行启动,不过这样似乎也很繁琐.我们可以通过配置Oracle的自动启动脚本,然后利用Linux的Service来启动Oracle服务器.首先在/etc/init.d/目录下配置Oracle的服务文件.touch oracle10gchmod a+x oracle10g然后编辑此oracle10g文件.内容如下.# !/bin/bash# whoami# root# chkconfig: 345 51 49# /etc/init.d/oracle10g# desc 阅读全文
posted @ 2012-02-10 10:59 leanman 阅读(2117) 评论(0) 推荐(0)
摘要:我们知道oracle客户端连接时涉及用到的几个配置文件有:sqlnet.ora、tnsnames.ora、listener.ora。其中sqlnet.ora和tnsnames.ora是在客户端的配置文件,listener.ora则是在服务器端的监听配置文件。想要顺利的连接上服务器端,首先要确保两者之间的网络通畅。其二在服务器上配置好监听程序。其三是客户端配置好相应的tnsnames.ora。 在配置服务器端监听程序时要注意几点: 1、在服务器上的/etc/hosts文件中需要有127.0.0.1 localhost 这一条.默认情况下是有的。若没有则在启动监听器是会报TNS-1253... 阅读全文
posted @ 2012-02-09 17:17 leanman 阅读(10130) 评论(0) 推荐(0)
摘要:控制文件 控制文件是一个小型二进制文件,是成功启动和操作数据库所必需的。每个控制文件只与一个oracle数据库相关联。在打开一个数据库之前,系统将读取控制文件以确定该数据库是否处于有效状态以供使用。 因为oracle服务器在数据库使用的过程中会不断更新控制文件,所以控制文件必须在数据库打开时随时都可供写入。只有oracle服务器才能修改控制文件中的信息;DBA或终端用户不能编辑控制文件。 如果由于某些原因控制文件无法访问,则数据库将无法正确运行。如果数据库控制文件的所有副本都丢失,则必须先恢复数据库,然后才能将其打开。控制文件的内容控制文件中的信息包括下列内容: ·数据库名称取自初始 阅读全文
posted @ 2011-07-13 13:30 leanman 阅读(345) 评论(0) 推荐(0)
摘要:启动数据库 启动数据库时,选择启动状态。下面将说明启动例程的各个阶段的情况。 启动例程(NOMOUNT): 仅在创建数据库或重新创建控制文件过程中,例程才会在nomount阶段启动。 启动例程包括下列任务: ·按以下顺序从$ORACLE_HOME/dbs读取初始化文件: 首先读取spfileSID.ora 如果找不到,则读取spfile.ora 如果仍然找不到,则读取initSID.ora 使用startup指定pfile参数已覆盖缺省行为。 ·分配SGA ·启动后台进程 ·打开alertSID.log文件和跟踪文件 必须在初始化文件中使用DB_NAME 阅读全文
posted @ 2011-07-12 11:20 leanman 阅读(530) 评论(0) 推荐(0)
摘要:初始化参数文件 oracle服务器在启动例程时读取初始化参数文件。共有两种类型的初始化参数文件。 ·静态参数文件pfile,一般名为initSID.ora。 ·动态参数文件spfile,一般名为spfileSID.ora。 初始化参数文件内容: ·例程参数列表 ·与该例程相关联的数据库的名称 ·系统全局区(SGA)的内存结构的分配 ·如何处理已满的联机重做日志文件 ·控制文件的名称和位置 ·有关撤消段的信息 为在各个不同情况下优化性能,一个例程可有多个初始化参数文件。 pfile Pfile是可使用标准的操作系统编 阅读全文
posted @ 2011-07-11 21:23 leanman 阅读(437) 评论(0) 推荐(0)
摘要:逻辑结构的层次如下所述: ·oracle数据库至少包含一个表空间。 ·表空间包含一个或多个段。(segment) ·段由区组成。(extends) ·区由逻辑块组成。(block) ·块是读写操作的最小单位。oracle数据库体系结构包括构成数据库的逻辑结构和物理结构。 ·物理结构包括构成数据库的控制文件、联机重做日志文件和数据文件。 ·逻辑结构包括表空间、段、区和数据块。oracle服务器通过表空间和逻辑存储结构(包括段、区和数据块),使您能够实现磁盘空间使用的小粒度控制。 表空间: oracle数据库内的数据存储在表空间 阅读全文
posted @ 2011-07-11 16:22 leanman 阅读(326) 评论(0) 推荐(0)
摘要:用户进程:在数据库用户请求连接到oracle服务器时启动 服务器进程:与oracle例程相连接,在用户建立会话时启动 后台进程:在oracle例程启动时启动用户进程 需要从数据库请求信息的数据库用户必须先建立与oracle服务器的连接。连接有SQL*Plus这类的数据库接口工具请求,并开始用户进程。用户进程并不与oracle服务器直接进行互交操作,而是通过用户程序接口(UPI)生成各种调用。用户程序接口则可以创建会话并启动服务器进程。服务器进程 用户建立连接后,服务器进程便会启动,以处理用户进程的请求。服务器进程可以是专用服务器进程或共享服务器进程。在专用服务器环境中,服务器进程只处理一个用. 阅读全文
posted @ 2011-07-08 17:17 leanman 阅读(825) 评论(0) 推荐(0)
摘要:程序全局区或进程全局区(PGA)是内存区,它包含有关单个服务器进程或单个后台进程的数据和控制信息。PGA在创建进程时分配,并在终止进程时回收。与由若干个进程共享的SGA相比,PGA是仅供一个进程使用的区。PGA的内容: PGA内存的内容会因不同情况而变化,这取决于例程是在专用服务器配置还是在共享服务器配置下运行。一般来讲,PGA内存包括下列组件: ·专用SQL区:包含绑定信息和运行时内存结构之类的数据。发出SQL语句的每个会话均拥有一个专用SQL区。提交同一SQL语句的每个用户都拥有自己的使用单个共享SQL区的专用SQL区。因此,许多专用SQL区都与同一个共享SQL区相关联。一个游标 阅读全文
posted @ 2011-07-08 14:55 leanman 阅读(1763) 评论(0) 推荐(0)
摘要:数据库的一般用途是存储和检索相关信息。oracle数据库具有逻辑结构和物理结构。数据库的物理结构是数据库中操作系统文件的集合。oracle数据库包含以下三类文件: ·数据文件,包含数据库中的实际数据 ·重做日志文件,包含数据库的更改记录,可以在出现故障时恢复数据 ·控制文件,包含维护和验证数据库完整性所需的信息其它关键文件结构oracle服务器还是用一些其它文件,这些文件并不是数据库的一部分: ·参数文件,用来定义oracle例程的特性。例如,它包含调整SGA中一些内存结构大小的参数。 ·口令文件,验证哪些用户有权启动和关闭oracle例程。 阅读全文
posted @ 2011-07-07 17:22 leanman 阅读(411) 评论(0) 推荐(0)
摘要:建立连接: 用户只有在连接到例程后,才能向oracle数据库提交SQL语句。 1.用户启动SQL*PLUS之类的工具,或者运行使用oracle Forms之类的工具开发的应用程序。该应用程序或工具将作为用户进程来执行。 2.在最基本的配置中,用户登录到oracle服务器时,运行oracle服务器的计算机上就会创建一个进程。这个进程称为服务器进程。服务器进程代表客户机上运行的用户进程与oracle例程进行通讯。服务器进程代表用户执行SQL语句。 连接是用户进程和oracle服务器之间的通信路径。数据库用户可以采用以下三种方式之一连接到oracle服务器: 1.用户登录到运行oracle例程的操作 阅读全文
posted @ 2011-07-01 12:04 leanman 阅读(2922) 评论(0) 推荐(0)