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;
oracle知识杂记的更多相关文章
- [未完成]关于Oracle知识总结
关于Oracle知识总结关于Oracle知识总结关于Oracle知识总结关于Oracle知识总结
- Oracle知识梳理(三)操作篇:SQL基础操作汇总
Oracle知识梳理(三)操作篇:SQL基础操作汇总 一.表操作 1.表的创建(CREATE TABLE): 基本语句格式: CREATE TABLE table_name ( col_ ...
- 测试人员应该掌握的oracle知识体系
闲来无事,总结了一下,软件测试人员应该掌握的基本的oracle数据库知识体系 1.安装 1.1 oracle安装 1.2 oracle升级 1.3 oracle补丁 2.管理 2.1数据库创建(dbc ...
- Oracle知识分类之异常
Oracle异常分类 ...
- oracle 知识
sqlplus / as sysdba; 使用操作系统登录oracle数据库 conn panie/panie; 使用普通用户连接数据库 --开启归档模式shutdown immediate;s ...
- Oracle知识整理
1.自带三种登录方式: Scott/tiger sys/manager system/manager 2.基本的操作 1) 建数据库 create tablespace 表空间的名称 dat ...
- 【面试虐菜】—— Oracle知识整理《收获,不止Oracle》
普通堆表不足之处: 表更新有日志开销 表删除有瑕疵 表记录太大检索较慢 索引回表读开销很大 有序插入难有序读出 DELETE产生的undo最多,redo也最 ...
- 【面试虐菜】—— Oracle知识整理《DBA的思想天空》
Inventory Oracle安装工具OUI用来管理Oracle安装目录的 Oracle的参数文件,启动后按照下面的顺序读取参数文件,如果读取失败,启动数据库 失败: 1 $ORACLE_HO ...
- Oracle知识梳理(一)理论篇:基本概念和术语整理
理论篇:基本概念和术语整理 一.关系数据库 关系数据库是目前应用最为广泛的数据库系统,它采用关系数据模型作为数据的组织方式,关系数据模型由关系的数据结构,关系的操作集合和关系的完整 ...
随机推荐
- 【BZOJ3439】 Kpm的MC密码 (TRIE+主席树)
3439: Kpm的MC密码 Description 背景 想Kpm当年为了防止别人随便进入他的MC,给他的PC设了各种奇怪的密码和验证问题(不要问我他是怎么设的...),于是乎,他现在理所当然地忘记 ...
- VisualSvn Server安装和使用
原文地址:http://www.cnblogs.com/jiahuafu/archive/2012/12/22/2828955.html VisualSvn Server介绍 1 .VisualSvn ...
- 最简单的CRC32源码---逐BIT法
CRC其实也就那么回事,却在网上被传得神乎其神.单纯从使用角度来说,只需要搞明白模二除法,再理解一些偷懒优化的技巧,就能写出自己的CRC校验程序. 下面的代码完全是模拟手算过程的,效率是最低的,发出来 ...
- 再探CRC
之前写了CRC16的程序,虽说能用,却不知其所心然,现在要用CRC32,重温一遍,一下就通了.笔记如下 CRC我没记错的话是Cyclic Redundancy Code,Cyclic和Redundan ...
- Android Bitmap是不能比较的,这样做是错误的
代码1: Bitmap dir = BitmapFactory.decodeResource(context.getResources(), R.drawable.netdisc_search_lis ...
- 【HDOJ】1072 Nightmare
bfs,使用ttl进行剪枝. #include <iostream> #include <cstdio> #include <cstring> #include & ...
- bzoj3875
悲伤地回忆,当初写了一个作死的算法爆零了为什么不好好写暴力呢……显然设w[i]表示彻底干掉这个怪物的代价注意发现这里的转移具有后效性,但是干掉每个怪物的最优值是一定的我们用spfa来转移,详见那篇sp ...
- Makefile中include、-include、sinclude的区别
如果指示符“include”指定的文件不是以斜线开始(绝对路径,如/usr/src/Makefile...),而且当前目录下也不存在此文件:make将根据文件名试图在以下几个目录下查找:首先,查找使用 ...
- ORA-00368 ORA-00353 ORA-00312
在昨天客户突然打电话过来,说系统进不去了,经过咨询发现是Oracle数据库没启动起来,经过一番折腾,最终弄好了. 解决方法还是在网络上的一般方法,最磨人的是Oracle的一个redo日志文件出现问题, ...
- 分布式基础通信协议:paxos,totem和gossip
转:http://blog.csdn.net/cloudresearch/article/details/23127985 背景: 在分布式中,最难解决的一个问题就是多个节点间数据同步问题.为了解决这 ...