易截截图软件、单文件、免安装、纯绿色、仅160KB

Oracle体系结构之-数据库、表空间、实例简介

一、数据库
数据库顾名思义是数据的集合,而Oracle则是管理这些数据集合的软件系统,它是一个对象关系型的数据库管理系统。    
二、表空间
表空间是Oracle对物理数据库上相关数据的逻辑映射。一个数据库在逻辑上被划分成一到若干个表空间,每个表空间包含了在逻辑上相关联的一组结构。每个数据库至少有一个表空间(称之为system表空间)。
每个表空间由同一磁盘上的一个或多个文件组成,这些文件叫数据文件(datafile)。一个数据文件只能属于一个表空间。
数据库、表空间、数据文件的关系如下图所示(图片和部分文本引自《Oracle9i 概念手册》)
 
从上面这副图可以看出以下几点:
·每一个数据库都从逻辑上被划分成一个或多个的表空间  
·每一个表空间由一到多个的数据文件构成
·每一个表空间的存储大小等于其所有数据文件的大小之和
·每一个数据库的存储大小等于其所有表空间的大小之和   
三、实例
每一个运行中的数据库都对应着一个Oracle实例。当服务器上的Oracle数据库启动时,Oracle首先会在内存中分配一片区域-称之为System Global Area(SGA),然后启动一个或多个的Oracle进程。
SGA和这些进程合起来就称为一个Oracle的实例。实例中的内存和进程管理器用来高效地访问数据库的数据,同时为单个或多个的用户提供服务。
一个数据库可以由多个实例打开,但任何时刻一个实例只能打开一个数据库。多个实例可以同时运行在同一个机器上,它们彼此访问各自独立的物理数据库。
数据库实例的示意图如下:(图片和部分文本引自《Oracle9i 概念手册》)
当实例启动之后,Oracle会把这个实例以及其对应的物理数据库关联起来,这个过程称为“加载”(Mounting)。这个时候数据库将处于准备打开的状态,数据库在打开之后只有管理员才能够将其关闭,普通用户是无权关闭数据库的。


相关文档:

linux设置 让oracle10g自启动


在/etc/rc.d/init.d/ 创建oracle10g文件
touch oracle10g
chmod a+x oracle10g
[root@test~]# vi /etc/rc.d/init.d/oracle10g
#!/bin/bash
#chkconfig:345 51 49
#description:starts the oracle database deamons
#
ORACLE_HOME=/oracle/product/10.2.0/db_1
ORACLE_OWNER=oracle
case "$1" in
start)
echo ......

Oracle SQL 优化

Oracle
SQL
的优化规
则:
尽量少用IN操作符,基本上所有的IN操作符都可以用EXISTS代替
        用IN写出来的SQL
的优点是比较容易写及清晰易懂,但是用IN的SQL
性能总是比较低的,从ORACLE

行的步骤来分析用IN的SQL
与不用IN的SQL

以下区别:
    ......

oracle 触发器

Create [or replace] trigger [模式.]触发器名
       Before| after |instead of  insert|delete|(update of 列名)
       {insert|delete|(update of 列名) }
On 表名|视图|模式名|数据库名
[for each row]
When 条件
PL/SQL块
说明:
......

用命令行(CMD)中启动和关闭ORACLE服务


用命令行(CMD)中启动和关闭ORACLE服务
 
 
监听启动
lsnrctl start
监听停止
lsnrctl stop
启动Oracle
net start oracleservicesid
停止Oracle
net stop oracleservicesid
 
net命令是win系统命令!其它的服务启动和上面的类似!
......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号