`
woainichenxueming
  • 浏览: 44727 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Oracle数据库如何创建表空间

 
阅读更多

oracle如何创建表空间和备份数据

1.创建数据表空间

create tablespace "chenxm"

logging

datafile 'e:\spaces_eu\chenxm.ora' size 500m extent

management local segment space management  auto ;

alter database

datafile 'e:\spaces_eu\chenxm.ora' autoextend

on next  1m;

2.创建临时表空间(日志文件)

create

temporary tablespace "chenxm_temp" tempfile

'e:\spaces_eu\chenxm_temp.ora' size 100m autoextend

on next  1m maxsize unlimited extent management local uniform

size 1m;

3.创建用户和授权

create user "eucrm"  profile "default"

identified by "1" default tablespace "chenxm"

temporary tablespace "chenxm_temp"

account unlock;

grant unlimited tablespace to "eucrm";

grant create database link to "eucrm";

grant create any table to "eucrm";

grant create any trigger to "eucrm";

grant create any view to "eucrm";

grant create database link to "eucrm";

grant create procedure to "eucrm";

grant create table to "eucrm";

grant create tablespace to "eucrm";

grant create trigger to "eucrm";

grant drop any table to "eucrm";

grant insert any table to "eucrm";

grant update any table to "eucrm";

grant "connect" to "eucrm";

alter user "eucrm" default role all;

4.删除表空间与用户

drop user eucrm cascade;

drop tablespace chenxm including contents;

drop tablespace chenxm_temp including contents;

 

5.创建表

建表时最好依照第三范式去建表(三个范式),这样可以最大程度避免出现数据冗余,

而且表结构合理的情况下,可以加快查询速度

 

第一范式:表中每一个字段的数据都不可分割。

在目前的数据库软件及其设计中,基本只有char类字段要考虑这一范式

(而不是像有些人说的现有数据库完全不需要考虑,实际上很多垃圾软件公司设计数据库为了方便以后变更,很多都用varchar型的字段)

,但适当合并一些char类字段,可简化数据库结构,如将电话1、电话2、电话3(定长字符串)类的设计改为电话(varchar型变长字符串)

采用适当的正则表达式确保输入数据的正确性.

第二范式:非主键列完全依赖主键列。

与完全依赖所对应的部分依赖,是指某些非主键列仅依赖复合主键中的部分列,而不是整个复合主键。因此所有单主键的表都符合第二范式。

(学号, 课程名称) (姓名, 年龄, 成绩, 学分)

违反第二范式:

课程名称 学分,学分实际上只依赖于课程名(与学号无任何关系)

学号 姓名, 年龄,同理,姓名、年龄与课程名无任何关系。

第三范式:非主键列不可传递依赖主键,即非主键列互不依赖。

(学号) (姓名, 年龄, 所在学院, 学院地点, 学院电话)

违反第三范式:(学号) (所在学院) (学院地点, 学院电话)

6.建立索引

索引:在经常查询的字段上面建立索引,

利用index对查询进行优化,(index可以避免对表的一个全面扫描)

原理:当以某个字段建立一个索引的时候,数据库就会生成一个索引页,

索引页不单单保存索引的数据,还保存了索引在数据库的具体的物理地址[rowid],

单我们查询数据时,oracle会先查索引页,这样就能够很快的定位查找到要找的记录)

注意:

如果表的列很少,不适合建索引.

当执行过多次的insert,delete,update,会出现索引碎片,

影响查询速度,我们应该对索引进行重组.

7. sql语句的优化

尽量使你的sql语句能够使用索引。

怎样使sql语句能够使用到索引呢:

sql语句中包含not in,<>,is null,is not null,like '%%'的时候不会用索引。

IN: in会拆成一堆or,可以使用表的索引。

NOT IN:强列推荐不使用,因为它不能应用表的索引。优化方案:用NOT EXISTS 或(外连接+判断为空)方案代替

<> 操作符(不等于): 不等于操作符是永远不会用到索引的,因此对它的处理只会产生全表扫描。

优化方案:用其它相同功能的操作运算代替,如a<>0 改为 a>0 or a<0;a<>’’ 改为 a>’’.

IS NULL IS NOT NULL操作(判断字段是否为空):

判断字段是否为空一般是不会应用索引的,因为B树索引(oracle大多是使用B树索引)是不索引空值的。

优化方案:用其它相同功能的操作运算代替,如 a is not null 改为 a>0 a>’’等。

is null 时,用一个缺省值代替空值,例如业扩申请中状态字段不允许为空,缺省为申请。

LIKELIKE操作符可以应用通配符查询,里面的通配符组合可能达到几乎是任意的查询,但是如果用得不好则会产生性能上的问题,

优化方案:LIKE %001% 这种查询不会引用索引,会产生全表扫描,

LIKE 001%’则会引用范围索引。进行范围的查询,性能肯定大大提高。

8.备份数据

导出:

exp 用户名/密码@服务名 file=d:\file name.dmp

 

数据导出:

1 将数据库test完全导出,用户名system 密码manager 导出到d:\daochu.dmp

exp system/manager@test file=d:\daochu.dmp full=y

2 将数据库中system用户与sys用户的表导出

exp system/manager@test file=d:\daochu.dmp owner=(system,sys)

3 将数据库中的表table1 table2导出

exp system/manager@test file=d:\daochu.dmp tables=(table1,table2)

4 将数据库中的表table1中的字段filed1"00"打头的数据导出

exp system/manager@test file=d:\daochu.dmp tables=(table1) query=\" where filed1 like '00%'\"

 

导入

imp system/admin@服务名  file=d:\daochu.dmp

数据的导入

1 d:\daochu.dmp 中的数据导入 test数据库中。

imp userid=system/manager@test fromuser=  touser=  file=d:\daochu.dmp

上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。

在后面加上 ignore=y 就可以了。

2 d:\daochu.dmp中的表table1 导入

imp system/manager@test  file=d:\daochu.dmp  tables=(table1)

 

例如:

imp username/password@servicename file=e:\filename.dmp full=y ignore=y log=log.txt

exp username/password@servicename file=e:\filename.dmp full=y

 

 

 

分享到:
评论
1 楼 a465492689 2013-09-17  
太有用了,谢谢!

相关推荐

    oracle数据库创建表空间和用户

    oracle数据库导入、导出数据、创建表空间、创建用户、用户授权等操作

    Oracle数据库创建表空间和用户.doc

    在Oracle数据库管理中,创建表空间和用户是基础但至关重要的操作,这直接影响到数据库的性能、安全性和数据管理效率。以下将详细解析如何在Oracle数据库中创建表空间和用户,以及这一过程中涉及的关键概念和步骤。 ...

    oracle数据库用户 表空间创建

    根据给定的文件信息,我们可以总结出以下关于Oracle数据库中用户和表空间创建的相关知识点: ### 一、Oracle表空间创建 #### 1. 表空间概念 在Oracle数据库中,表空间是逻辑存储单元,它由一个或多个数据文件组成...

    Oracle数据库创建表空间

    –Oracle数据库创建表空间 create tablespace new_taspace –表空间名 DATAFILE 'D:NEWTABLESPACE.DBF' –表空间关联的数据文件和位置 size 200M –文件初始大小 autoextend on next 20MB MAXSIZE 400MB; –...

    oracle数据库、表空间及数据文件之间的关系

    ### Oracle数据库、表空间及数据文件之间的关系 在Oracle数据库管理系统的架构中,数据库、表空间与数据文件之间存在着紧密的联系。理解这些组件之间的相互作用对于有效地管理和维护Oracle数据库至关重要。 #### ...

    oracle数据库_实例_用户_表空间之间的关系

    Oracle 数据库实例用户表空间之间的关系 Oracle 数据库实例用户表空间之间的关系是 Oracle 数据库管理系统的核心概念。了解它们之间的关系对于数据库的设计、管理和优化至关重要。 数据库 Oracle 数据库是一个...

    第04章 Oracle数据库创建与表空间维护

    第04章 Oracle数据库创建与表空间维护 oracle学习资料

    Oracle数据库_实例_用户_表空间之间的关系.doc

    ### Oracle数据库、实例、用户、表空间的关系解析 #### 一、Oracle数据库概述 Oracle数据库是一种高度复杂的数据库管理系统,主要用于企业级数据管理和处理。与其他数据库系统不同,Oracle数据库中的“数据库”这一...

    Oracle RAC增加ASM盘,创建表空间

    Oracle RAC 增加 ASM 盘, 创建表空间 Oracle RAC 是一种高可用、高性能的数据库解决方案,通过将多个服务器节点组成一个集群,提供了高可用性和高性能的数据库服务。在 Oracle RAC 中,ASM(Automated Storage ...

    oracle 创建表空间命令

    在Oracle数据库管理系统中,创建表空间是管理数据库存储空间的关键操作。表空间是数据库中用于存储数据对象(如表、索引、视图等)的逻辑结构。它将物理磁盘上的一个或多个数据文件组织成一个逻辑单元,使得数据库...

    Oracle应用项目——使用OracleEM创建表空间.pdf

    7. 配置存储选项:返回表空间创建界面,勾选"启用日志记录",这将跟踪对表空间的更改,有利于故障恢复。选择适当的"块大小"(8MB),这将影响数据库的I/O性能和存储效率。 8. 最后,点击"确定"以提交这些设置并创建...

    oracle数据库建表空间、分配权限

    oracle数据库建表空间、分配权限 create temporary tablespace cppa_w_temp tempfile 'd:\oracle\datafile\cppa_w_temp.dbf' size 200m autoextend on next 100m maxsize 500m extent management local;

    oracle 数据库创建ppt

    理解这些核心概念后,创建Oracle数据库涉及创建表空间、定义表结构(包括列、约束等)、分配权限和角色、设置索引等步骤。在实际操作中,还需要考虑数据安全性、备份恢复策略、性能优化等方面,确保数据库高效稳定...

    第04章Oracle数据库创建与表空间维护.pptx

    在本章中,我们将深入探讨Oracle数据库的创建与表空间维护。Oracle数据库是企业级数据库管理系统,用于存储、管理和检索大量结构化数据。创建数据库是一个关键步骤,涉及到多个层次的规划和配置,包括物理结构、逻辑...

    第04章 Oracle数据库创建与表空间维护.ppt

    第04章 Oracle数据库创建与表空间维护

    手动创建数据库 oracle

    本篇文章将深入探讨如何手动创建一个Oracle数据库,这是一个基础但至关重要的过程,对于理解Oracle数据库体系结构和管理至关重要。 首先,创建Oracle数据库涉及以下几个关键步骤: 1. **系统环境准备**:确保你的...

    Oracle数据库常见表空间故障恢复方案.pdf

    Oracle 数据库常见表空间故障恢复方案 本文主要阐述用户表...本文对 Oracle 数据库常见表空间故障恢复方案进行了详细的介绍,包括用户表空间、临时表空间、系统表空间、回滚表空间和控制文件丢失或损坏的恢复方案。

    Oracle数据库用户、表、表空间之间关系.doc

    模式对象是Oracle数据库中用户创建的各种应用对象,如表、索引、视图、序列、同义词、存储过程等。每个模式对象都在某个表空间内占用一定的存储空间,这可以理解为文件夹中的文件,而文件夹代表数据文件,抽屉代表表...

Global site tag (gtag.js) - Google Analytics