• oracle知识杂记


    • 索引类型

                 1、B-树索引

                       分区索引、压缩索引、函数索引等都属于B-树索引

                  2、位图索引

                  3、索引组织表

    • 索引管理       

                 1、普通单列索引
                       对where条件、group by,order by的列创建索引

                       语法:create index IDX_aa on tblName(columnName)


                 2、位图索引:
                       适用于大量重复值的列

                       语法:create bitmap index IDX_aa on tblName(columnName)


                  3、唯一索引:
                        创建主键和Unique constraint(唯一约束)时会自动创建唯一索引

                        语法:CREATE UNIQUE INDEX IDX_UNIQUEColumn ON table (column);


                  4、组合索引

                        多列组成的索引,引导列放在前面


                  5、分区索引

                        分区索引分为分区内局部索引和分区全局索引


                  6、函数索引
                        oracle支持对函数表达式(算数表达式、PL/SQL函数、程序包函数、SQL函数、用户自定义函数)创建索引

                        语法:CREATE INDEX index ON table (FUNCTION(column));


                  7、反向键索引

              create unique index IDX_sale on sales(id) global reverse;

                  8、压缩索引

              create index sales_fact_c1 on sales_fact(product, year, week) compress 2;

                  9、is null 或is not null

                        当列值与null进行比较时,不会使用单列索引,需要通过虚拟列创建多列索引

              create index IDX_n10 on t1(n1, 0)

                  10、索引组织表

                        在索引组织表中,表本身被组织成索引,所有的列值存储在索引树里面,使用主键进行数据行访问将只会包含索引访问,索引组织表适用于以下情况

                        1、数据行长度较短的表

                        2、大多使用主键列进行访问的表

    • oracle进入命令界面
           sqlplus /nolog
           connect  /as sysdba
    • oracle删除用户下的所有对象和数据文件

                 1、删除rrtong用户及其下面的所有对象

              drop user userName cascade;
              drop user rrtong 必须是这个用户下面没有任何对象才能使用
              drop user rrtong cascade 删除这个用户以及这个用户下的所有对象了
    

                 2、删除数据文件
                      方法一:
                                   

                    drop tablespace tbs_name including contents and datafiles;

                      方法二:

                     cd /usr/oracle/app/oradata/orcl/
                      mv /usr/oracle/app/oradata/orcl/rrtong.dbf /home/backup/rrtong.dbf
    • oracle数据库导入/导出

                  方法一:使用toad界面导入/导出操作
                                 1、先执行第5点删除用户和数据库实例
                                 2、创建要导入的数据库用户和对应的表空间
                                 3、参考以下链接,进行操作
                                       参考:http://blog.csdn.net/zouqingfang/article/details/36196431
                                       说明:含有虚拟列的表无法成功导出
                  方法二:直接命令方式导入/导出操作
                                  1、expdb导出
        
                                  2、impdb导入 

    • oracle定时备份

                  impdp edu_adm/pujinet DIRECTORY="DMP_DIR"  DUMPFILE="edu140611.dmp" SCHEMAS= "edu_adm"  logfile="import_20140612.log"  ;

    • 压缩表

                1、NOCOMPRESS
                      表或分区不压缩,当没有具体指定压缩子句时这是默认行为
                2、COMPRESS
                      这个选项被认为适合于数据仓库系统,只在直接路径插入过程中在表或分区上启用压缩。
                3、COMPRESS FOR DIRECT_LOAD OPERATIONS
                      这个选项与COMPRESS关键字有同样的影响。
                4、COMPRESS FOR ALL OPERATIONS
                      这些选项被认为适合于OLTP系统,如名字暗示的那样,这些选项为所有操作启用了压缩,包括普通的DML语句。
                      这个选项需要COMPATIBLE初始化参数设置为11.1.0或更高。

    • 数据库链路配置

                方法一:       

                             在A服务器上操作

              vi /usr/oracle/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora
              #添加以下内容
    DBLINKB =
    (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = B服务器ip地址)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SERVICE_NAME = orcl)
        )
    )
    

                      然后再使用pl/sql创建数据库链路,输入数据库链路名称,输入对方数据库用户名和密码,再输入DBLINK(对应上面设置)

              方法二: 同时也可以通过以下方式进行操作

             create database link link名称  connect to 对方数据库用户名 identified by 对方数据库用户密码 using '对方数据库ip:端口/实例名'
    • oracle查询失效的索引,并进行重建
          --查询失效的索引记录
          select index_name ,status  from user_indexes where Status = 'UNUSABLE' ;
          --重建失效的索引
          alter index  PK_NOTICEKEY rebuild;


  • 相关阅读:
    Mysql(二)
    Mysql(一)
    JS图表插件(柱形图、饼状图、折线图)
    如何让Table中的第一列和第二列的值相乘然后赋值给第三列
    js生成验证码并验证
    IIS配置默认文档
    DropDownList如何添加一个空白的选项
    GridView如何合并同类项
    .NET后台如何获取前台HMTL控件的值
    Json数据报错
  • 原文地址:https://www.cnblogs.com/wala-wo/p/5119226.html
Copyright © 2020-2023  润新知