关于索引及主键放入不同表空间

oracel里默认是表及索引都是放同一个表空间下。在数据量少的情况下。放同一个表空间没什么问题,一旦数据量大还是建意分开放。

对于磁盘IO 操作来讲。提高IO总体性能;

索引文件丢失的话,可以直接重建;

移动索引表空间:

alter index idx_***** rebuild tablespace  ***(新的索引表空间);

可以利用以下语句获取的某个表空间下所以索引的移动

select ‘alter index ‘||owner|‘.‘||index_name||‘ rebuild tablespace ***(新的索引表空间)‘

from dba_indexes

where table_owner=‘SCHEMA_Name‘

order by index_name;

有点需要注意的是,一旦把表和索引放在不同表空间后,在创建新表时,如果有主键或唯一约束,记的指定到索引的表空间,

语句如下:

create table tmp(mon varchar(6),

indo varchar2(10),

constraint pk_name primary key(mon,idno)

using index tablespace index_tabs(索引空间)

时间: 2024-10-09 15:43:13

关于索引及主键放入不同表空间的相关文章

SQL存储原理及聚集索引、非聚集索引、唯一索引、主键约束的关系(补)

索引类型 1.          唯一索引:唯一索引不允许两行具有相同的索引值 2.          主键索引:为表定义一个主键将自动创建主键索引,主键索引是唯一索引的特殊类型.主键索引要求主键中的每个值是唯一的,并且不能为空 3.          聚集索引(Clustered):表中各行的物理顺序与键值的逻辑(索引)顺序相同,每个表只能有一个 4.          非聚集索引(Non-clustered):非聚集索引指定表的逻辑顺序.数据存储在一个位置,索引存储在另一个位置,索引中包含指

唯一索引与主键索引的比较

唯一索引与主键索引的比较 唯一索引唯一索引不允许两行具有相同的索引值.如果现有数据中存在重复的键值,则大多数数据库都不允许将新创建的唯一索引与表一起保存.当新数据将使表中的键值重复时,数据库也拒绝接受此数据.例如,用户表中的身份证(idcard) 列上创建了唯一索引,则所有身份证不能重复 主键索引主键索引是唯一索引的特殊类型.数据库表通常有一列或列组合,其值用来唯一标识表中的每一行.该列称为表的主键.在数据库关系图中为表定义一个主键将自动创建主键索引,主键索引是唯一索引的特殊类型.主键索引要求主

聚集索引、非聚集索引、主键

关于这几个概念的理解 首先要知道索引是一种数据结构,这个数据结构是由数据库本身来维护的,当删除.插入.更新数据的时候,索引自身的数据结构也在不断维护中. 索引是基于二叉树的结构来维护的,主要是为了快速检索数据 二叉树结构中有叶节点和非叶节点,叶节点就是没有分支的最后节点,顾名思义就像叶子一样 那么聚集索引,聚集索引的叶节点存储的就是数据本身,这就意味着,聚集索引决定了数据的物理存储顺序.因此聚集索引在单叶节点中是一个连续存储的数据.所以对于between < > 等范围查询,聚集索引效率会很高

Oracle创建表、索引、主键、字段描述

-- 创建表 create table SX04_LBALANCE ( YEAR VARCHAR2(10) not null, PROGRAMNO VARCHAR2(40) not null, FDATE VARCHAR2(10) not null, FACCTCODE VARCHAR2(50) not null, FCURCODE VARCHAR2(3) not null, FAACCCREDIT NUMBER(19,4) default 0 not null, FAENDBAL NUMBER

通俗易懂 索引、单列索引、复合索引、主键、唯一索引、聚簇索引、非聚簇索引、唯一聚簇索引 的区别与联系

索引 数据库只做两件事情:存储数据.检索数据.而索引是在你存储的数据之外,额外保存一些路标(一般是B+树),以减少检索数据的时间.所以索引是主数据衍生的附加结构. 一张表可以建立任意多个索引,每个索引可以是任意多个字段的组合.索引可能会提高查询速度(如果查询时使用了索引),但一定会减慢写入速度,因为每次写入时都需要更新索引,所以索引只应该加在经常需要搜索的列上,不要加在写多读少的列上. 单列索引 与 复合索引 只包含一个字段的索引叫做单列索引,包含两个或以上字段的索引叫做复合索引(或组合索引).

面试|简单描述MySQL中,索引,主键,唯一索引,联合索引 的区别,对数据库的性能有什么影响(从读写两方面)

索引是一种特殊的文件(InnoDB 数据表上的索引是表空间的一个组成部分),它们 包含着对数据表里所有记录的引用指针. 普通索引(由关键字 KEY 或 INDEX 定义的索引)的唯一任务是加快对数据的访问速度. 普通索引允许被索引的数据列包含重复的值.如果能确定某个数据列将只包含彼 此各不相同的值,在为这个数据列创建索引的时候就应该用关键字 UNIQUE 把它 定义为一个唯一索引. 也就是说,唯一索引可以保证数据记录的唯一性. 主键,是一种特殊的唯一索引,在一张表中只能定义一个主键索引,主键用于

创建索引和主键

一.      主建的创建与删除 1.       创建表时同时创建主键(加primary key) Create Table Book ( ID int identity(1,1) primary key, Name nvarchar(50) not null, StudentID int not null ) 2.       用SQL语句单独创建主键 1)创建主键同时会自动在该主键上创建聚集索引 语句:alter table [表名] add constraint PK_Book_ID p

索引和主键

主键:唯一标识一行数据,可以作为一个被外键有效引用的对象, 索引:一种特殊的文件它包含着对数据表里所有记录的引用指针.可以很方便的查询想要的数据 主键与索引的区别:主键就是书的页码,索引就是书的目录 主键一定是唯一性的索引,唯一性的索引不一定是主键. 主键可以保证记录的唯一和主键域非空 数据库管理系统对于主键自动生成唯一索引,所以主键也是一个特殊的索引 一个表中可以有多个唯一索引,但只能有一个主键 主键列不允许为空唯一性索引可以为空值 索引可以提高查询的速度

SQL server 聚集索引与主键的区别

主键是一个约束(constraint),他依附在一个索引上,这个索引可以是聚集索引,也可以是非聚集索引. 所以在一个(或一组)字段上有主键,只能说明他上面有个索引,但不一定就是聚集索引. 例如下面: 1 USE [pratice] 2 GO 3 CREATE TABLE #tempPKCL 4 ( 5 ID INT PRIMARY KEY CLUSTERED --聚集索引 6 ) 7 8 9 --------------------------------- 10 USE [pratice] 1