Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1284533
  • 博文数量: 161
  • 博客积分: 10192
  • 博客等级: 上将
  • 技术积分: 2165
  • 用 户 组: 普通用户
  • 注册时间: 2006-07-27 17:09
文章分类

全部博文(161)

文章存档

2012年(2)

2011年(13)

2010年(137)

2009年(5)

2008年(4)

我的朋友

分类: LINUX

2010-11-23 14:44:18

目录
1。ORACLE体系结构
2。安装、使用ORACLE和其常用管理工具
3。管理例程
4。建立数据库
5。数据字典和动态性能视图
6。管理控制文件
7。管理重做日志
8。管理归档日志
9。管理表空间和数据文件
10。管理UNDO表空间
11。管理对象空间
12。管理用户
13。管理权限
14。管理角色
15。管理PROFILE
16。审计
17。管理表
18。管理索引
19。使用约束
20。管理分区表和分区索引
21。管理簇
22。管理视图、序列和同义词
23。EXPDP和IMPDP
24。EXP和IMP
25。使用其它工具

内容:
1。ORACLE体系结构
1.1 ORACLE SERVER
    包括:例程lnstance和数据库database
          例程包括:一组内存结构和后台进程
                        内存结构包括:数据高速缓存、重做日志缓冲区、共享池  (这三个总称system global area SGA)
                        后台进程包括:SMON、PMON、DBWR、CKPT、LGWR、ARCH
          数据库包括:数据文件、控制文件、重做日志。其实就是一组OS文件的集合。
1.2 SGA(共享池、数据高速缓存、重做日志缓冲区)
  1。2.1 共享池(shared pool)
         共享池包括:库高速缓存(library chace)和数据字典高速缓存(dictionary cache)
               库高速缓存用于存放最近执行的SQL语句信息
               数据字典高速缓存用于存放数据字典的信息
         修改共享池的方法:alter system set shared_pool_size=60M;
  1.2.2 数据高速缓存(database buffer cache)
      工作原理:ORACLE采用LRU算法管理数据高速缓存,类似排队机制,先进先出。
          结构:无论读还是写,都是在数据高速缓存中完成的。
      如何修改:alter system set db_cache_size=60M
                 alter system set db_4k_cache_size=20M
  1.2.3重做日志缓冲区(redo log buffer)
      工作原理:用于记载例程变化
          参数:log_buffer
  1.2.4大缓存和java池(SGA的两个可选内存结构)
       大缓冲池:原理:为大内存操作提供相对独立的内存空间。
                 修改参数:alter system set large_pool_size=20M;
       java池:  原理:用于存放java代码。
                 修改参数:alter system set java_pool_size=20M;
  1.2.5 PGA(program global area)
       原理:用于存放服务器进程的数据和控制信息的一块内存,独立于SGA。
       区别:SGA内存是可共享的;PGA内存是私有的。
       组成:排序区(sort area)、会话信息(session information)、游标状态(cursor state)、堆栈空间(stack space)
       参数:pga_aggregate_starget
            
1.3 后台进程
    SMON(system monitor):用于执行例程恢复、合并空间碎片并释放时段。    
    PMON(process monitor) : 用户监视服务器进程的执行,并在服务器进程失败时清除该服务器进程
    DBWR(database writer) : 用于将数据高速缓存的脏缓冲区数据写入到数据文件中。
                            默认只有一个DBW0进程。最多10个。db_writer_processes
    LGWR(log writer)      :用于将重做日志缓冲区所记载的全部内容写入到重做日志文件中。
    CKPT(checkpoint process):用于发出检查点,检查点会同步数据库的数据文件、控制文件和重做日志。
    ARCH(archive process) : 用于将重做日志的事务变化复制到归档日志中,该后台进程只有在ARCHIVELOG模式下才有意义。
                              默认只有一个ARC0进程。最多10个。log_archive_max_processes

1.4 数据库物理结构
   1.4.1 数据库文件
         数据文件(data file):用于存储数据库数据,包括系统数据(数据字典)、用户数据(表、索引、簇)、UNDO数据等。
     重做日志(redo log) :用于记录数据变化,当进行例程恢复或介质恢复时需要使用它。
         控制文件(control file):用于记录和维护数据库的物理结构,每个ORACLE DB至少包含一个控制文件。参数:control_files
    1.4.2 其它文件
          归档日志(archive log):是非活动重做日志的备份。
          参数文件(parameter file): 用于定义启动例程所需的初始化参数。
          口令文件(password file): 用于验证特权用户。即具有SYSDBA或者SYSOPER权限的特殊数据库用户。
          预警文件(alert file): 由连续的消息和错误组成,且都是安装时间顺序存放的。
          后台进程跟踪文件:用于记载后台进程的警告或错误信息。每个后台进程都有相应的跟踪文件。
          服务器进程跟踪文件:用户记载服务器进程的相关信息,主要用于跟踪SQL语句。
1.5 数据库逻辑结构
    表空间(talbe space):是数据库的逻辑组成部分。
    段(segment)        : 用于存储特定逻辑对象(表、簇、索引等)的所有数据,由一个或多个区组成的。
    区(extent)         : 是ORACLE进行空间分配的逻辑单元,有相邻的数据块组成。
    oracle块             :即数据块,是oracle在数据文件上执行I/O操作的最小单位,尺寸为OS块的整数倍。
1.6 oracle server工作原理
   1.6.1 连接到ORACLE SERVER
         用户进程和服务器进程:一对一的关系。
         连接(connection):是用户进程到服务器进程的网络通信通道。一一对应。
         会话(session):是特定用户的连接。连接和会话是一对多的关系。
   1.6.2处理查询操作
         解析
         执行
         提取数据
   1.6.3 处理DML语句
         由服务器进程处理DML,只有解析和执行,不会返回数据,如UPDATE 。
   1.6.4 处理COMMIT
        
1.7 ORACLE DATABASE 10G新特性。


2。开始使用ORACLE SERVER
  2.1 安装ORACLE DATABASE 10G
      OUI(oracle universal install)是基于JAVA引擎设计的ORACLE安装工具,可以安装、升级、删除ORACLE软件。
  2.2 数据库配置助手
        DBCA(database configuration assistant)用于建立数据库、配置数据库选项、删除数据库和管理模板。
             设置全局数据库名时,格式为:db_name.db_domaiin; SID为db_name
  2.3 OEM数据库控制工具
      EMCT(oracle enterprise manager database control)为10G新增的管理工具,基于WEB页面。
              启动:emctl start dbconsole
              登陆:
              管理:
              监视:
              维护:
  2.4 SQL*PLUSE
        sqlplus [username]/[password][@server] [AS SYSDBA|AS SYSOPER]
  2.5 iSQL*PLUS
         它是SQL*PLUS在浏览器中的实现方式。
         启动服务:isqlplusctl start
         登陆:
  2.6 数据库管理员
      SYSDBA特权: 是oracle数据库中具有最高权限的特殊权限。默认只有SYS用户具有SYSDBA特权。
      SYSOPER特权:数据库操作员,也是oracle数据库的一种特殊权限;比SYSDBA特权低些。默认只有SYS用户有SYSOPER特权。
      DBA角色:DBA可以在数据库里执行各种管理操作。比上面两个权限小,无法启/停/建库。默认只有SYSTEM有DBA角色。

3. 管理例程
   3.1 管理初始化参数
        3.1.1常用初始化参数:200多个,多数为默认值。
        3.1.2 参数文件(parameter file):用于存放启动例程所需要的初始化参数,非默认的初始化参数。
               PFILE:oracle9i前,初始化参数都是以文本文件存放的。可直接打开修改。
               SPFILE:是以二进制格式存放的。修改:al ter system set resource_limit=true scope=spfile;oracle建议用它。
               建立PFILE:crea te pfile [='pfile_name'] from spfile [='spfile_name]]
               建立SPFILE: crea te spfile [='spfile_name'] from pfile [='pfile_name]]
               确定例程所使用的参数文件类型:sh ow parameter spfile;
         3.1.3 显示和设置初始化参数
                 sh ow parameter显示:
                 查询v$parameter显示初始化参数:sele ct name,type,value from v$parameter
                 修改动态参数:修改当前会话alt er session set nls_date_format='YYY-MM-DD';
                               修改所有会话al ter system set user_dump_dest='c:\test' scope=memory;
                               修改只对新建立的会话起作用:alter system ... deferred
                               修改静态参数:修改配置文件后重启例程。
          3.2 启动例程
               启动例程并打开数据库一般过程如下:启动例程(nomount状态)、装载数据库(mount状态)、打开数据库(open状态)
               示例一:启动例程:startup nomount
               示例二:启动例程并装载数据库:startup mount
               示例三:启动例程并打开数据库:startup open
               示例四:以受限模式打开数据库:startup restrict
          3.3 停止例程
                默认选项:shutdown normal,系统会等待用户断开后再关闭例程。
                事务选项:shutdown transactional,系统会等待事务结束后才断开会话,然后停止例程。
                立即选项:shutdown immediate,系统立即关闭例程,回退所有未完成事务。
                终止选项:shutdown abort,一般情况下不用它,除非马上断电。
                暂停选项:alter system suspend,暂停库的所有I/O操作;
                           恢复:alter system resume.
          3.4 使用诊断文件
                预警文件:按时间顺序存放错误和消息。路径参数:background_dump_dest
                后台进程跟踪文件:每个后台进程都有相应的跟踪文件。路径参数:backgroup_dump_dest
                用户进程跟踪文件:用于收集客户应用SQL语句的统计信息。路径参数:user_dump_dest
          3.5 使用OEM控制工具管理例程
                即WEB页面方式管理。
4。 建立数据库
  4.1 管理例程服务(该命令是WIN OS下的;LINUX下无建立例程命令,只有直接建立数据库命令:dbca)
       ORADIM -new -sid sid|-srvc service [-intpwd password] [-maxusers number][-startomde a|m][-pfile file]
       ORADIM -edit ...
  4.2 建立数据库
       步骤:建立例程服务 oradim -new -srvc oracleservicedemo -intpwd oracle
             建立参数文件 建立PFILE
                          编辑PFILE
                          建立SPFILE
             启动例程 startup nomount
             建立数据库 create database ...
             完成建立数据库的后续任务
                           安装数据字典视图
                           安装oracle系统包
                           安装product_user_profile表
  4.3 配置网络
          命令: net manager
          概要文件:用来配置网络首选项、日志和跟踪信息。对应sqlnet.ora
          服务命名:用来配置本地的网络服务名.对应tnsnames.ora
          监听程序:用来配置服务器端的监听程序。对应listener.ora
     4.3.1配置监听程序
            当安装完成后,默认会建立监听程序LISTENER,通过它可以同时监听多个数据库。对应配置文件listener.ora
                          当然可以有多个监听程序。
                          当然多个监听程序也可以都监听一个数据库。

     4.3.2配置客户端(在客户端操作)
          命令:netmgr
          图形控制台命令:oemapp  console
         
  4.4 配置OEM控制工具
         手工建库后,需要启动DBCA配置该库。
  4.5 删除数据库
          命令步骤:shutdown
                    startup restrict mount
                    drop database;
5 数据字典和动态性能视图
   5.1数据字典
         作用:记录了数据库的系统信息,是只读表和视图的集合。所有者是SYS,数据存放在SYSTEM表空间中。
         包括:字典基表、数据字典视图
         方案:是用户所拥有对象的集合;用户和方案是一一对应的。
      5.1.1 DBA_XXX 所有数据库对象
      5.1.2 ALL_XXX 当前用户可存取的所有对象
      5.1.3 USER_XXX 当前用户所拥有的对象
      5.1.4 数据字典内容
              对象定义:
              对象占用空间:
              列信息:
              约束信息:
              用户名、权限和角色
  5.2常用数据字典
          DICT:用于显示当前用户可以访问的所有数据字典视图,并给出这些数据字典视图的作用。
          DICT_COLUMNS
          DUAL
          GLOBAL_NAME
          IND
          OBJ
          SEQ
          SYN
          TAB
  5.3动态性能视图
       作用:记录当前例程的活动信息。从SGA和控制文件中取得信息。启动例程时自动建立;停止例程时自动删除。
       名字:以v_$开始。同义词即为v$开始。
       常用动态性能视图:
             v$fixed_table
             ...22个。
6 控制文件
   作用:记载数据库的物理结构、日志序列号、检查点和日志历史信息。
          是一种较小的ORACLE数据库文件,20M~30M间。
   6.2多元化控制文件
       多元化:ORACLE建议每个库应该包含两个或两个以上的控制文件(最多8个),且分布在不同的磁盘上。
       使用PFILE多元化控制文件:
       使用SFILE多元化控制文件:
       处理意外丢失的控制文件:
   6.3建立控制文件
       6.3.1控制文件全部损坏,且无备份。
       6.3.2修改永久参数
       6.3.3修改数据库名称
   6.4删除控制文件
   6.5查看控制文件信息
        显示控制文件名称:sele ct * from v$controlfile;
        显示初始化参数:sho w parameter control_files
        获得控制文件不同部分信息:selec t * from v$controlfile_record_section;
        使用OEM控制工具管理控制文件:WEB方式。
7 管理重做日志
   作用:在出现例程失败或介质失败时实现例程恢复和介质恢复。
  7.1重做日志简介
       7.1重做日志简介
       7.2增加重做日志
       7.3删除重做日志
       7.4改变重做日志位置或名称
       7.5使用OMF方式管理重做日志
       7.6显示重做日志信息
       7.7使用OEM控制工具管理重做日志
8 管理归档日志
     作用:是非活动重做日志的备份,通过它,可以保留所有重做历史记录。
   8.1日志操作模式:指ORACLE数据库处理重做日志的方式,它决定了是否生成重做历史以保留重做日志所记载的事务变化。
         noarchivelog(非归档模式):是指不保留重做历史的日志操作模式,只能用于保护例程失败,不能保护介质失败。oracl默认的日志操作模式。
         archivelog:指保留重做日志历史的日志操作模式。它可以保护例程失败和保护介质失败。
         选择日志操作模式
   8.2控制归档
         改变日志操作模式:检查当前日志操作模式se lect log_mode from v$database;
                           关闭数据库,然后装载数据库:shu tdown immediate
                                                       star tup mount
                           改变日志操作模式,然后打开数据库:al ter database archivelog;
                                                              alt er database open;
          执行手工归档:al ter system archivelog all
          配置归档进程:al ter system set log_archive_max_processes-3;
   8.3配置归档位置和文件格式
         配置归档文件格式:
         使用log_archive_dest配置归档位置:
         使用Log_archive_dest_n配置多个归档位置:
         使用log_archive_dest_n选项:
         控制本地归档成功的最小个数:
         控制归档位置:
   8.4显示归档日志信息
        使用archive log list命令:
        显示日志操作模式:sel ect name,log_mode from v$database;
        显示归档日志信息:
        显示归档日志位置:
        显示日志历史信息:
        显示归档进程信息:
   8.5使用OEM控制工具管理归档日志

9。管理表空间和数据文件
     9.1 数据库逻辑结构:表空间、数据文件、段、区、oracle块
     9.2 建立表空间
         9.2.1建立本地管理表空间:默认空间管理方法是本地管理。
         9.2.2建立字典管理表空间:是为了与早期版本兼容而保留的空间管理特征。
         9.2.3建立大文件表空间:
         9.2.4建立UNDO表空间:
         9.2.5建立临时表空间:
         9.2.6建立非标准块表空间
     9.3维护表空间
           9.3.1改变表空间可用性:
           9.3.2改变表空间读写状态:
     9.3.3改变表空间名称
           9.3.4设置默认表空间
           9.3.5删除表空间
    9.4扩展表空间
    9.5移动数据文件
       9.5.1在open状态下移动数据文件
        9.5.2在mount状态下移动数据文件
    9.6使用OEM方式管理表空间
10 管理UNDO标空间
   10.1 UNDO简介
          作用:回退事务、读一致性、事务恢复、倒叙查询
   10.2 管理UNDO表空间
          10.2.1 使用UNDO参数
          10.2.2 建立UNDO表空间
          10.2.3 修改undo表空间
          10.2.4切换undo表空间
          10.2.5删除undo表空间
   10.3 监视UNDO空间信息
          确定当前例程正在使用的UNDO表空间:sho w parameter undo_tablespace
          显示数据库的所有undo表空间:sel ect tablespace_name from dba_tablespaces where contents='undo';
          显示undo表空间统计信息:
          显示undo段统计信息
          显示活动事务信息
          显示undo区信息
   10.4 使用OEM控制工具管理UNDO表空间
      
11 管理对象空间
    11.1 段:用于存储特定对象的所有数据,有一个或多个区组成。
         11.1.1 段分类
              表段:
              表分区段
              簇段
              索引段
              索引分区段
              索引组织表段
              undo段
              临时段
              lob段
              lob索引段
              嵌套表段
              根引导段
     11.1.2 显示段信息
            显示段类型
            显示段详细信息
           
    11.2 管理存储参数
           11.2.1 存储参数
           11.2.2 使用存储参数
           11.2.3 显示区信息
    11.2 管理数据块空间
           11.3.1 块空间参数
               11.3.2 使用块空间参数
               11.3.3 显示块空间参数

12. 管理用户
  12.1用户和方案
         用户(user):是定义在数据库中的一个名称,使ORACLE数据库的基本访问控制机制。
         特权用户:SYSDBA、SYSOPER
         方案(schema): 是用户所拥有数据库对象的集合。和用户是一一对应的,且名称相同。
   12.2建立用户
      12.2.1建立用户:数据库验证方式
        cre ate user testuser identified by testpw
               default tablespace test01
               temporary tablespace temp
               quota 3M on test01
               password expire;
        给新用户授权,让其可以连接到数据库。
        建立表空间
        在表空间上建表
    12.2.2建立用户:OS验证(一般用于局域网)
            数据库用户格式为:XYZ 域名\OS用户名(必须大写)
                              XYZ为OS_AUTHENT_PREFIX的值。
    12.3修改用户
           修改口令:al ter user username identified by passwd;
           修改表空间配额:al ter user username quota 10M on test01;
           锁定用户帐户:al ter user username account lock;
           解锁用户帐户:al ter user username account unlock;
           设置用户默认角色:al ter user username default role select_role;
     12.4删除用户
             命令:dr op user username [cascade];
             意义:会删除用户、方案及其所有方案对象。cascade参数用来删除包含数据库对象的用户。
     12.5显示用户信息
             显示当前会话用户:sho w user
             显示特权用户:se lect * from v$pwfile_users;
             显示用户信息:se lect * from dba_users;
             显示用户表空间配额:sel ect * from dba_ts_quotas where username=username;
     12.6使用oem控制工具管理用户

13。管理权限
     13.1 权限简介
         定义:权限(privilege)是指执行特定类型SQL命令或访问其他方案对象的权利,包括系统权限和对象权限。
         系统权限:是指执行特定类型SQL命令的权利。如create_session 连接到库、create_table 建表、any。。。
         对象权限:是指访问其他方案对象的权利,用于控制用户对其他方案对象的访问。如alter、delete、update、all...
     13.2管理系统权限
        13。2.1授予系统权限
                操作者:dba or 有grant_any_privilege系统权限的用户 or有with_admin_option的用户。
                命令:gra nt system_priv[,system_priv,...] to {user|role|public},[,{user|role|public}]... [with admin option];
         13.2.2显示所有系统权限:sel ect name from system_privilege_map;
               显示用户或角色所具有的系统权限:se lect * from dba_sys_privs where grantee='username';
               显示当前会话所具有的系统权限:se lect * from session_privs;
          13.2.3回收系统权限:rev oke system_priv[,system_priv,...] to {user|role|public},[,{user|role|public}]...
       13.3管理对象权限
          13.3.1授予对象权限:gra nt {object_priv[column_list]},...to {user|role|public},..[with grant option}
          13.3.2显示对象权限:sel ect * from dba_tab_privs;
                 显示列权限:se lect * from dba_col_privs;
                ...
          13.3.3回收对象权限:revo ke {object_priv[,..|all} on [schema.]object from {user|orle|public}...[cascade constraints];
          13.4使用OEM控制工具管理权限
14 管理角色
    作用:角色是相关权限的命名集合,使用角色的主要目的是简化权限管理。
    14.1 预定义角色
    14.2 管理自定义角色
    14.2.1 建立角色
         建立角色:非验证
         建立角色:数据库验证
    14.2.2 角色授权
         给角色授权、分配角色给用户
    14.2.3 激活和禁止角色
        默认角色
        激活和禁止角色
    14.2.4 修改角色
    14.2.5 删除角色
    14.2.6 显示角色信息
         显示所有角色:sel ect * from dba_roles;
         ...
  14.3 使用OS角色
  14.4 精细访问控制:即使用户可以使用函数、策略实现更加细微的安全访问控制。
      14.4.1 应用上下文
      14.4.2 实现精细访问控制
  14.5 使用OEM控制工具管理角色
15 管理PROFILE
    15.1 简介:profile是口令限制、资源限制的命名集合。默认会建立名为DEFAULT的PROFILE。
    15.2 使用PROFILE管理口令:
            默认情况小客户端连接数据库服务器的用户名和口令以明文方式通过网络传送。
            设置加密:设置客户端环境变量ora_encrypt_log=true。
         15.2.1 帐户锁定:用于控制用户连续登录失败的最大次数。
                          两个参数:failed_login_attempts 最大次数、password_lock_time被锁的天数
                          手工解锁:alt er user username account unlock;
         15.2.2 口令有效期和终止期:默认会一直生效
                          两个参数:password_life_time 有效期、 password_grace_time 到期后还可以使用的天数。
         15.2.3 口令历史:用于控制帐户口令的可重用次数或可重用时间。
             两个参数:password_reuse_time 口令可重用天数、password_reuse_max重用之前需改变的次数
         15.2.4 口令复杂性校验:
                          使用系统口令校验函数verify_function
                          使用自定义口令校验函数
                          禁用口令校验函数,参数:password_verify_function=null
     15.3 使用profile管理资源
            前提:激活资源限制参数:alter system set resource_limit=true;
         15.3.1 限制会话资源:即限制会话在连接期间所占用的总计资源。
         15.3.2 限制调用资源:即限制单条SQL语句可占用的最大资源。
         15.3.3 限制其他资源
     15.4 修改和删除PROFILE
           修改PROFILE:命令:alter profile
                        注意:修改profile,对已经存在的会话不起作用,只对新会话起作用。
           删除PROFILE:命令:drop profile
                        注意:若profile已经被分配各某个用户,删除时须带cascade选项,否则报错。
     15.5 显示PROFILE信息
          显示用户的PROFIEL:sel ect profile from dba_users;
          显示profile的口令和资源限制选项:s lect resource_name,limit from dba_profiles;
     15.6 使用OEM控制工具管理PROFILE

16 审计audit
    作用:为了跟踪数据库用户所执行的各种数据库操作,防止用户执行非法操作。
    16.1 分类:特权用户审计:默认会审计,参数:audit_sys_operations
               数据库审计:默认不会审计,参数:audit_trail
               应用审计:会审计用户名、数据库操作、操作对象、操作时间等,不会审计数据的变化。
    16.2 审计的指导方针:
    16.3 数据库审计
               激活数据库审计:audit_trail
               指定审计选项:命令audit
        16.3.1 设置语句审计:命令 audit table;
               执行语句操作
               显示审计跟踪结果
               显示已经设置的审计选项
               禁止语句审计
        16.3.2 权限审计
               指定权限审计:如:audit create sequence;
               执行与create sequence权限相关的操作
               查询审计跟踪记录
               显示已经设置的权限审计选项
               禁止权限审计
        16.3.3 对象审计:用来审计特定方案对象上的SQL操作。
        16.3.4 删除审计跟踪
   16.4 使用精细审计
   16.5 使用应用审计:用来监视DML操作引起的数据变化。
17 管理表
    17.1.1 表的管理方针
          设计表:
          规划表的类型:普通表、簇表、索引表、分区表
          规划数据块空间使用
          规划表的位置
          使用并行方式建表
          使用nologgin选项建表
          使用compress选贤建表
          预见和规划表尺寸
    17.1.2 行格式
    17.1.3 常用数据类型
    17.1.4 ROWID(是表的伪列,用来唯一标示表行)
    17.2 管理普通表
        172.1 建立普通表:crea te table tablename{ id number(4),...};
        17.2.2 建立临时表:事务临时表、会话临时表
        17.2.3 修改普通表:修改普通表的物理属性:参数 pctfree pctused initrans
                           重新组织表:碎片整理
                           手工分配和释放空间
                           修改列定义
                           增加列
                           修改列名
                           删除列
                           使用unused选项删除列
     17.3 管理索引表
            17.3.1 建立索引表:cre ate tables tablename......organization index...
            17.3.2 修改索引表
     17.4 管理外部表
            17.4.1 建立外部表:cre ate table tablename......organization external...
            17.4.2 修改外部表
     17.5 截断和删除表
            截断:即删数据,保留表结构。trun cate table tablename;
            删除:dro p talbe talbename;
     17.6 显示表信息
            显示特定用户的表:sel ect table_name from dba_tables where owner='usernmae';
            显示表列信息:
            。。。。。。
     17.7 使用OEM控制工具管理表
18.管理索引
    18.1 索引简介:是用于加速数据存取的数据库对象。
            作用:使用索引,可以降低I/O次数,提高数据访问性能。
            分类:单列索引:是基于单个列所建立的索引。
                  复合 索引:是基于两列或多列所建立的索引。
                  唯一索引:是索引列值不能重复的索引。
                  非唯一索引: 是索引列值可以重复的索引。
             索引管理的指导方针:
    18.2 建立索引:create index
           18.2.1建立B*-树索引:是以B*-树结构组织并存放索引数据的。默认升序。
           18.2.2 建立位图索引:是以位值标识索引数据,主要用于DSS系统中执行数据统计、数据汇总等操作。
           18.2.3 建立反向索引:是索引列值按照相反顺序存放的索引。
           18.2.4 建立函数索引:是基于函数或表达式所建立的索引。
    18.3 修改索引:alt er index
    18.4 删除索引:dr op index
    18.5 显示索引信息:se lect * from dba_indexes;
    18.6 使用OEM控制工具管理索引

19 使用约束
     作用:用于确保数据库数据遵从特定的商业规则。通过使用约束,可以实现数据完整性。
           为了保证数据完整性。oracle可用的方法有:约束、触发器、应用代码(过程、函数)
  19.1.1分类: not null: 确保列不能为null
              unique:唯一标识列的数据
              primary key:即主键,唯一标识表行的数据。非空、唯一。
              foreign key:即外键。
              check:用于强制表行数据必须满足的条件。
   19.1.2 约束状态(四种)
            enable validate
            enable novalidate
            disable validate
            disable novalidate
 
  19.2维护约束
       19.2.1建表时定义约束
       19.2.2 建表后增加约束
       19.2.3 修改约束名
       19.2.4 删除约束
  19.3 禁止和激活约束
  19.4 使用延期约束检查
  19.5 显示约束信息:sel ect * from dba_constraints;
  19.6使用OEM控制工具管理约束

20 管理分区表和分区索引表
      作用:为了管理VLDB(very large database)数据库。
             使用分区表,允许将一张大表的数据分布到多个表分区段;
             使用分区索引,允许将一个大索引的数据分布到多个索引分区段。
   20.1 建立分区表
           20.1.1 范围分区:是指按照列值范围将表行的数据分布到不同分区段中。
           20.1.2 散列分区:是按照oracle提供的散列(hash)函数计算列值数据,并最终按照函数结果分区大表数据。
           20.1.3 列表分区:用于将离散数据有效地部署到不同分区中。
           20.1.4 范围/散列组合分区:是范围分区和散列分区的组合,首先按照列值的范围进行逻辑的范围分区,再在每个范围分区的基础上按照散列函数进行散列分区。
           20.1.5 范围/列表合分区:是范围分区和列表分区的组合。
   20.2 修改分区表
   20.3 建立全局索引和分区索引
            建立全局索引:索引数据会存放到一个索引段中。默认情况下在分区表上建立的索引是全局索引。
            建立分区索引:索引数据会存放到几个分区段中。
   20.4 显示分区表和分区索引信息
            显示分区表信息:dba_part_tables 数据库所有分区表的信息
                            all_part_tables 当前用户可访问的所有分区表的信息
                            user_part_tables 当前用户所有分区表的信息
   20.5 使用OEM控制工具管理分区表
21 管理簇
     簇是存储表数据的一种可选方法,它由共享相同数据块的一组表组成。将表组织到簇后,oracle会将不同表的相关数据存放到相同数据块,这样不仅降低了簇建所占用的磁盘空间,还大大降低了特定SQL操作的I/O次数,从而提高数据访问性能。
    21.1 管理索引簇:即使用索引定位簇建列数据的方法。
            使用普通表存储数据
            使用索引簇存储表数据
            连接查询I/O统计
    21.1.1 索引簇管理方针
    21.1.2 建立索引簇
    21.1.3 修改和删除簇
   21.2 管理散列簇:即使用散列(HASH)函数定位行的位置。
     21.2.1 建立散列簇
     21.2.2 建立单表散列簇
     21.2.3 修改和删除散列簇
   21.3 显示簇信息:sele ct * from dba_clusters;

22 管理视图、序列和同义词
     22.1管理视图
          22.1.1 建立视图:cr eate view viewname as se lect .. from ...;
          22.1.2 修改和删除视图
          22.1.3 使用OEM控制工具管理视图
     22.2 管理序列:序列是用于生成唯一数字值的数据库对象。
     22.2.1建立序列:cre ate sequence
          22.2.2 修改和删除序列:al ter sequence; drop sequence;
          22.2.3 使用OEM控制工具管理序列
     22.3管理同义词:同义词是方案对象的别名。使用同义词,可以简化对象访问和提高对象访问的安全性。
            分类:公共同义词:即所有用户都可以直接引用的同义词,这种同义词由PUBLIC用户组拥有。            
                  私有同义词:即只能由其他方案用户直接引用的同义词。
          22.3.1 建立同义词:建立公共同义词cre ate public synonym
                             建立私有同义词cr eate synonym
          22.3.2 删除同义词:删除公共同义词dr op public synonym
                             删除私有同义词dr op synonym
          22.3.3 使用OEM控制工具管理同义词
     22.4 显示视图、序列和同义词信息
23 EXPDP和IMPDP
   23.1 简介:即数据导出导入工具;只能在服务器端使用。
   23.2 使用EXPDP
       23.2.1 expdp命令行选项
       23.2.2 调用expdp: 导出表、导出表空间、导出方案、导出数据库。
   23.3使用impdp
       23.3.1impdp命令行选项
       23.3.2 调用impdp:导入表、导入表空间、导入方案、导入数据库。
   23.4使用expdp和impdp搬移表空间:即将表空间从一个数据库移动到另一个数据库中。可以跨平台。

24 EXP和IMP 
    ORACLE DATABASE 10G前导出导入数据需要用exp imp.
   24.1exp和imp简介
   24.2使用exp
      24.2.1 exp命令行选项
      24.2.2 调用exp: 导出表、导出方案、导出数据库。
   24.3使用imp
      24.3.1 exp命令行选项
      24.3.2 调用exp: 导入表、导入方案、导入数据库。
   24.4 使用EXP和IMP搬移表空间

25 使用其他工具
      25.1 logminer:分析重做日志和归档日志记载的事务操作。
        25.1.2 logminer字典:用于将对象ID号和数据类型转变为对象名和外部数据格式。否则无法读懂logminer的分析结果。
        25.1.3 使用logminer分析DML操作
        25.1.4 使用logminer分析DDL操作
        25.1.5 显示logminer信息
      25.2 DBVERIFY:即用于验证数据文件、表或索引段是否存在损坏块。
      25.3 DBNEWID:用户改变DBID和DBNAME,其中DBID用于标识数据库的内部标识符,而DBNAME则用于标识数据库的名称。




阅读(1385) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~