Oracle 11g学习1——基础介绍

一、Oracle的相关服务

成功安装Oracle 11g后,共有7个服务,这七个服务的含义分别为:

注:ORCL是数据库实例名,默认的数据库是ORCL,你可以指定其他的实例名

1、Oracle ORCL VSS Writer Service 

        Oracle卷映射拷贝写入服务,VSS(Volume Shadow Copy Service)能够让存储基础设备(比如磁盘,阵列等)创建高保真的时间点映像,即映射拷贝(shadow copy)。它可以在多卷或者单个卷上创建映射拷贝,同时不会影响到系统的系统性能。(非必须启动)

2. OracleDBConsoleorcl

        Oracle数据库控制台服务,在运行Enterprise Manager(企业管理器OEM)的时候,需要启动这个服务。(非必须启动)

3. OracleJobSchedulerORCL

        Oracle作业调度(定时器)服务。(非必须启动)

4. OracleMTSRecoveryService

        服务端控制。该服务允许数据库充当一个微软事务服务器MTS、COM/COM+对象和分布式环境下的事务的资源管理器。(非必须启动)

5. OracleOraDb11g_home1ClrAgent

       Oracle数据库.NET扩展服务的一部分。 (非必须启动)

6、OracleOraDb11g_home1TNSListener

       监听器服务,服务只有在数据库需要远程访问的时候才需要。(非必须启动)。

7. OracleServiceORCL

      数据库服务(数据库实例),是Oracle核心服务该服务,是数据库启动的基础, 只有该服务启动,Oracle数据库才能正常启动。(必须启动)

对于开发者来讲,要是只用Oracle自带的sql*plus的话,只要启动OracleServiceORCL即可,要是使用PL/SQL Developer等第三方工具的话,OracleOraDb11g_home1TNSListener服务也要开启。OracleDBConsoleorcl是进入基于web的EM必须开启的,其余服务很少用。

 

二、操纵工具

1、SQLPlus

      Oracle自带的与Oracle进行交互的客户端工具。在SQL plus中除了可以使用SQL语句,也可以执行对结果格式化的语句,这些语句称为SQL*Plus命令。

主要功能:

     -- 数据库的维护,如启动,关闭等,这一般在服务器上操作。

     -- 执行sql语句执行pl/sql

     -- 执行sql脚本

     -- 数据的导出,报表

     -- 应用程序开发、测试sql/plsql

     -- 生成新的sql脚本

     -- 供应用程序调用,如安装程序中进行脚本的安装

     -- 用户管理及权限维护等

连接数据库:

       以管理员登录:用户名  /as sysdba

2、PL/SQL Developer

      PL/SQL也是一种程序语言,叫做过程化SQL语言(Procedural Language/SQL)。是Oracle数据库对SQL语句的扩展。

      PL/SQL Developer是一个集成开发环境,由Allround Automations公司开发,专门面向Oracle数据库存储程序单元的开发。

3、OEM

Orace Enterprise Manager(OEM) 是通过一组Oracle程序,为管理分布式环境提供了管理服务。OEM包括了一组DBA工具,一个repository,以及一个图形化显示的控制台。OEM控制台与每一个服务器上的智能化代理(IntelligentAgent)相对应。它是一个基于Web界面的、可用于管理单个Oracle数据库的工具,OEM对数据库的访问采用Http/Https协议,即使用3层结构访问Oracle数据库系统。

  智能化代理能够监控系统的特定事件并且执行任务(作业)就象你在系统本地一样。事件和作业的结果会被送回控制台,这样可以在一个地方管理所有的系统。
OEM与ServerManagerMotif相比,有以下优点:
 1)从适用范围看,OEM可以同时监控管理多个系统上的多个数据库,因而特别适合分布式环境;而ServerManager只能监控管理一个数据库。
 2)从管理对象看,OEM可以监控管理节点,数据库和监听进程(listener),而ServerManager只能监控数据库。
 3)从适用版本看,OEM可以同时监控管理Oracle7.x和8.x,而从8版开始,ServerManager已不存在。

登录地址格式为: https://hostname:1158/em (10g 11g 的默认端口是1158),可以到Oracle安装目录下dbhome1/install/portlist.ini文件中查看端口号。

 

三、Oracle体系结构

        Oracle存储结构分为物理存储结构和逻辑存储结构
        实例结构分为内存结构和进程结构


1、物理存储结构
        物理存储结构由存储在磁盘上的操作系统文件所组成,Oracle运行时需要这些文件,一般,Oracle数据库在物理上主要由3种类型的文件组成,分别是数据文件(*.dbf)、控制文件(*.ctl)和重做日志文件(*.log)。

(1)、数据文件(Data File)
        是存储数据库数据的文件,数据库中的所有数据最终都保存在数据文件中。例如,表中的记录和索引等。如果数据文件中的某些数据被频繁访问,则这些数据会被存储在内存的缓冲区中。读取数据时,Oracle系统会先从内存的数据缓冲区中查找相关数据信息,如果找不到,则从数据库文件中把数据读取出来,存放到内存的数据缓冲区中,供查询使用;存储数据时,修改后的数据信息,也是先存放在内存的数据缓冲区中,在满足写入条件(例如执行提交操作)时,由Oracle的后台DBWn将数据写入数据文件。

//查询数据库的数据文件
select file_name from dba_data_files;


(2)、控制文件(Control File)
        控制文件是一个很小的二进制文件,用于描述和维护数据库的物理结构。在Oracle数据库中,控制文件相当重要,它存放有数据库中数据文件和日志文件的信息。Oracle数据库在启动时需要访问控制文件,在数据库的使用过程中,数据库需要不断更新控制文件,由此可见,一旦控制文件受损,那么数据库将无法正常工作。
   怎样设置多份控制文件

//查询控制文件信息
select name from v$controlfile;

(3)、重做日志文件(Redo Log File)
         重做日志文件是记录数据库中所有修改信息的文件,简称日志文件。其中,修改信息包括数据库中数据的修改信息和数据库结构的修改信息等,例如删除表中的一行数据或删除表中的一列。如果只是进行了查询操作,则该操作不会被记录到日志文件中。日志文件是数据库系统的最重要的文件之一,它可以保证数据库安全,是进行数据库备份与恢复的重要手段。如果日志文件受损,数据库同样可能会无法正常运行。

//查询日志文件信息
select * from v$logfile;
或select MEMBER from v$logfile;

 

2、逻辑存储结构

        Oracle数据库从逻辑存储结构上来讲,主要包括表空间、段、区和数据块。这4者之间存在如下关系:多个数据块组成一个区;多个区组成一个段;多个段组成一个表空间;而一个Oracle数据库由多个表空间组成。

(1)、表空间
        表空间是Oracle中最大的逻辑存储结构,它与物理上的一个或多个数据文件相对应,每个Oracle数据库都至少拥有一个表空间,表空间的大小等于构成该表空间的所有数据文件大小的总和。表空间用于存储用户在数据库中创建的所有内容,例如用户在创建表时,可以指定一个表空间存储该表,如果用户没有指定表空间,则Oracle系统会将用户的内容存储到默认的表空间中。

//系统默认安装的表空间
-- system
系统表空间,用于存储系统的数据字典、系统的管理信息和用户数据表等

-- sysaux
辅助系统表空间。用于减少系统表空间的负荷,提高系统作业效率。该表空间由Oracle系统自动维护,一般不用于存储用户数据

-- temp
临时表空间。用于存储临时的数据,例如存储排序时产生的临时数据。一般情况下,数据库中的所有用户都使用temp作为默认的临时表空间。

-- undotbs1
撤销表空间。用于在自动撤销管理方式下存储撤销信息。在撤销表空间中,除了回退段以外,不能建立任何其他类型的段。所以,用户不可以在撤销表空间中创建任何数据库对象。

-- users
用户表空间。用于存储永久性用户对象和私有信息

//查看表空间信息
select tablespace_name from dba_tablespaces;

(2)、数据字典

       数据字典是Oracle存放数据库实例信息的一组表和视图,通过数据字典可以了解数据的详细信息。
       Oracle数据字典(Data Dictionary)是存储在数据库中的所有对象信息的知识库,Oracle数据库管理系统使用数据字典获取对象信息和安全信息,而用户和数据库系统管理员则用数据字典来查询数据库信息。
       Oracle数据字典保存有数据库中对象和段的信息,例如表、视图、索引、包、存储过程以及与用户、权限、角色、审计和约束等相关的信息。

数据字典的分类:

主要分为4部分:

-- 内部RDBMS表:x$...

-- 数据字典表: ...$

-- 动态性能视图:gv$...、v$...

-- 数据字典视图:user_...、all_...、dba_...


USER视图:
   以user_为前缀,用来记录用户对象的信息。例如user_tables视图

ALL视图:
   以all_为前缀,用来记录用户对象的信息以及被授权访问的对象信息。例如all_synonyms视图

DBA视图:
   以dba_为前缀,用来记录数据库实例的所有对象的信息。例如dba_table视图

V$视图:
   以v$为前缀,用来记录与数据库活动相关的性能统计动态信息。例如v$datafile视图

GV$视图:
   以gv$为前缀,用来记录分布式环境下所有实例的动态信息,例如gv$lock视图

基本的数据字典:
dba_tables:        所有用户的所有表的信息
dba_tab_columns:   所有用户的表的字段信息
dba_views:         所有用户的所有视图信息
dba_synonyms:      所有用户的同义词信息
dba_sequences:     所有用户的序列信息
dba_constraints:   所有用户的表的约束信息
dba_indexes:       所有用户的表的索引简要信息
dba_ind_columns:   所有用户的索引的字段信息

与数据库组件相关的数据字典
数据库  v$datafile 记录系统的运行情况
表空间  dba_tablespace 系统表空间的基本信息
        dba_free_space 系统表空间的空闲空间的信息
控制文件 v$controlfile:系统控制文件的基本信息
         v$controlfile_record_section :系统控制文件中记录文档段的信息
         v$parameter:系统各参数的基本信息
数据文件 dba_data_files :系统数据文件以及表空间的基本信息
         v$filestat:来自控制文件的数据文件信息
         v$datafile_header:记录数据文件头部分的信息

常用的动态性能视图
v$fixed_table :显示当前发行的固定对象的说明
v$instance :显示当前实例的信息
v$latch: 显示锁存器的统计数据
v$librarycache:显示有关库缓存性能的统计数据
v$rollstat:显示联机的回滚段的名字
v$rowcache:显示活动数据字典的统计
v$sga: 显示有关系统全局区的总结信息
v$sgastat: 显示有关系统全局区的详细信息
v$sort_usage:显示临时段的大小及会话
v$sqlarea:显示SQL区的SQL信息

//查看SCOTT用户的table信息
COLUMN tablespace_name FROMAT A10;
select table_name, tablespace_name, owner from dba_tables where owner='SCOTT';

//查看所有用户的终端信息
select username, terminal from v$session where username is not null;

//获取数据库实例信息
select instance_name, host_name, status from v$instance;
 

参看:http://www.cnblogs.com/ronaldHU/archive/2013/07/02/3167715.html

参看:http://www.cnblogs.com/halfacre/archive/2012/04/18/2455766.html

参看:http://blog.chinaunix.net/uid-22539324-id-2644071.html

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值