`
xdw1626
  • 浏览: 171534 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

oracle数据库开发的一些经验积累(二)

阅读更多

一、http://www.winu.cn/htmls/638/076/

1、分析表
analyze table mzbs.db_code ESTIMATE STATISTICS SAMPLE 20 PERCENT;


2、表空间管理和用户管理

--查看表空间和数据文件

select file_name,tablespace_name,autoextensible from dba_data_files;

--数据表空间

CREATE TABLESPACE USER_DATA
    LOGGING
    DATAFILE 'D:ORACLEORADATAORCL est.DBF' SIZE 50m REUSE ,
             'c:USERS01112.DBF' SIZE 50m REUSE 
    AUTOEXTEND
    ON NEXT  1280K MAXSIZE  16383M EXTENT MANAGEMENT LOCAL


--修改表空间数据文件的路径

ALTER TABLESPACE app_data
  RENAME
    DATAFILE '/DISK4/app_data_01.dbf'
    TO   '/DISK5/app_data_01.dbf';


ALTER DATABASE
  RENAME FILE '/DISK1/system_01.dbf'
    TO '/DISK2/system_01.dbf';


--临时表空间

CREATE TEMPORARY
    TABLESPACE  USER_DATA_TEMP TEMPFILE 'D:TEMP0111.DBF'
    SIZE 50M REUSE AUTOEXTEND
    ON NEXT  1024K MAXSIZE  16383M EXTENT MANAGEMENT LOCAL UNIFORM
    SIZE 1024K


--增加数据文件

ALTER TABLESPACE  USER_DATA
  ADD DATAFILE 'c:USERS01113.DBF' SIZE 50M;

ALTER TABLESPACE USER_DATA
  ADD DATAFILE 'c:USERS01114.DBF'  SIZE 50M
  AUTOEXTEND ON
;


--删除表空间

DROP TABLESPACE USER_DATA INCLUDING CONTENTS;

 

--修改表空间的存储参数

ALTER TABLESPACE tablespacename
  MINIMUM EXTENT 2M;


ALTER TABLESPACE tablespacename
  DEFAULT STORAGE (
    INITIAL 2M
    NEXT 2M
    MAXEXTENTS 999 );


--表空间联机/脱机/只读

ALTER TABLESPACE tablespacename OFFLINE/ONLINE/READ ONLY;

 

--修改数据文件大小
 ALTER DATABASE
 DATAFILE 'c:USERS01113.DBF' RESIZE 40M;

--创建用户、赋予权限

CREATE USER USER_DATA PROFILE DEFAULT IDENTIFIED BY  USER_DATA
    DEFAULT
    TABLESPACE USER_DATA  TEMPORARY
    TABLESPACE USER_DATA  ACCOUNT UNLOCK;
 
GRANT CONNECT TO USER_DATA;
GRANT RESOURCE TO USER_DATA;

 

3、表的管理

--创建表

CREAE TABLE TABLENAME
(COLUMN1 COLUTYPE DEFAULT(VALUE) NOT NULL)
(COLUMN2 COLUTYPE DEFAULT(VALUE) NOT NULL);


--建表的索引存储分配


CREATE TABLE summit.employee(id NUMBER(7) CONSTRAINT employee_id_pk PRIMARY KEY DEFERRABLE USING INDEX  STORAGE(INITIAL 100K NEXT 100K)
TABLESPACE indx,
last_name VARCHAR2(25) CONSTRAINT employee_last_name_nn NOT NULL,
dept_id NUMBER(7))
TABLESPACE data;

--修改表的存储分配

ALTER TABLE tablename
PCTFREE 30
PCTUSED 50
STORAGE(NEXT 500K
MINEXTENTS 2
MAXEXTENTS 100);

ALTER TABLE tablename
ALLOCATE EXTENT(SIZE 500K
DATAFILE '/DISK3/DATA01.DBF');

--把表移到另一个表空间

ALTER TABLE TABLENAME MOVE TABLESPACE TABLESPACENAME;


--回收空闲的空间(回收到High-water mark)
  全部回收需要TRUNCATE TABLE tablename

ALTER TABLE tablename
DEALLOCATE UNUSED;

--删除表(连同所用constraint)

DROP TABLE tablename
CASCADE CONSTRAINTS;


--给表增加列

ALTER TABLE TABLENAME
ADD COLUMN COLUTYPE DEFAULT(VALUE) NOT NULL;


--删除表中的列

ALTER TABLE tablename
DROP COLUMN columnname;


ALTER TABLE tablename
DROP COLUMN columnname
CASCADE CONSTRAINTS CHECKPOINT 1000;


--标记列不可用

ALTER TABLE tablename
SET UNUSED COLUMN columnname
CASCADE CONSTRAINTS;

--删除标记为不可用的列

ALTER TABLE tablename
DROP UNUSED COLUMNS CHECKPOINT 1000;

--继续删除列选项

ALTER TABLE tablename
DROP COLUMNS CONTINUE CHECKPOINT 1000;

--把表放到BUFFER_POOL中去

ALTER TABLE tablename
  STORAGE (BUFFER_POOL RECYCLE);

--避免动态分配EXTENT

ALTER TABLE tablename ALLOCATE EXTENT;


--把表放到CACHE中去

ALTER TABLE tablename ALLOCATE CACHE/NOCACHE;


4、索引管理


--创建索引

CREATE INDEX indexname ON TABLENAME(COLUMNNAME);

CREATE INDEX indexname ON TABLENAME(COLUMNNAME) TABLESPACE TABLESPACENAME;

--重新建立索引

ALTER INDEX indexname REBUILD TABLESPACE  TABLESPACE;


--索引分配参数

ALTER INDEX indexname
STORAGE(NEXT 400K
 MAXEXTENTS 100);


--释放索引空间

ALTER INDEX indexname
ALLOCATE EXTENT (SIZE 200K
DATAFILE '/DISK6/indx01.dbf');

ALTER INDEX indexname
DEALLOCATE UNUSED;

--重新整理索引表空间碎片

ALTER INDEX indexname COALESCE;

--删除索引

DROP INDEX indexname


--把索引放到BUFFER_POOL中

ALTER INDEX cust_name_idx
  REBUILD
  STORAGE (BUFFER_POOL KEEP);


5、约束管理


--建立主键

ALTER TABLE TABLENAME
ADD CONSTRAINT CONSTRAINTNAME PRIMARY KEY(COLUMN1,COLUMN2)


--使约束无效

ALTER TABLE TABLENAME ENABLE NOVALIDATE CONSTRAINT constraintname;

ALTER TABLE TABLENAME ENABLE VALIDATE CONSTRAINT constraintname;

--删除约束

ALTER TABLE tablename  DROP CONSTRAINT constraintname;

DROP TABLE tablename CASCADE CONSTRAINTS;(删除表后将所用的外键删除)


--给列增加缺省值

ALTER TABLE TABLENAME
MODIFY columnname  DEFAULT(value) NOT NULL;


--给表增加外键
 ALTER TABLE  tablename
 ADD CONSTRAINT  constraintname
 FOREIGN KEY(column) REFERENCES table1name(column1);


6、安全策略

--加密传输

把客户端环境变量ora_encrypt_login设为true
把服务器端参数dblink_encypt_login设为true

--数据库管理员安全策略

a、建库后立即修改SYS/SYSTEM的口令(9.2后必须修改其口令)
b、只有数据库管理员才能以SYSDBA登录系统
c、建立不同角色的管理员,分配不同的权限

   比如:对象创建于维护
         数据库的调整与维护
         创建用户分配角色
         启动关闭
         恢复备份
        
--应用开发者的安全策略

a、开发者的特权只能在测试开发的数据库中赋予权限
b、自由开发者、受控开发者
   自由开发者:create tableindexprocedurepackage
   受控开发者:没有以上权限


7、日志文件管理

--切换日志文件

ALTER SYSTEM SWITCH LOGFILE;

--增加日志文件

ALTER DATABASE ADD LOGFILE
('/DISK3/log3a.rdo',
'/DISK4/log3b.rdo') size 1M;

--增加日志成员

ALTER DATABASE ADD LOGFILE MEMBER
'/DISK4/log1b.rdo' TO GROUP 1
'/DISK4/log2b.rdo' TO GROUP 2;

--删除日志文件

ALTER DATABASE DROP LOGFILE GROUP 3;

--删除日志成员

ALTER DATABASE DROP LOGFILE MEMBER '/DISK4/log2b.dbf';

--清除日志文件内容

ALTER DATABASE CLEAR LOGFILE '/DISK3/log2a.rdo';

分享到:
评论

相关推荐

    oracle数据库开发的一些经验积累

    oracle数据库开发的一些经验积累

    专家精讲:Oracle数据库管理与维护 完整版 (第三部)

    本书以笔者多年积累的实际经验分析数据库管理员的工作职责。详细介绍Oracle数据库系统的运作原理与组成架构;针对常用的“基本对象”及延伸应用的“高可用性对象”提供详尽说明;详解Oracle数据库的安装、建置,以及...

    专家精讲:Oracle数据库管理与维护 完整版(第2部分)

    本书以笔者多年积累的实际经验分析数据库管理员的工作职责。详细介绍Oracle数据库系统的运作原理与组成架构;针对常用的“基本对象”及延伸应用的“高可用性对象”提供详尽说明;详解Oracle数据库的安装、建置,以及...

    Oracle数据库开发技巧与经典案例讲解一

    本课程以讲解真实开发案例的方式,来巩固、强化Oracle数据库开发知识点和技术技巧,通过经典案例来总结开发中常见的错误,从而能够让学员积累开发规范与开发经验,从而为真实的系统设计、开发打下坚实的基础。

    专家精讲:Oracle数据库管理与维护 完整版(第1部分)

    本书以笔者多年积累的实际经验分析数据库管理员的工作职责。详细介绍Oracle数据库系统的运作原理与组成架构;针对常用的“基本对象”及延伸应用的“高可用性对象”提供详尽说明;详解Oracle数据库的安装、建置,以及...

    Oracle积累.chm

    日常工作中积累的oracle数据库开发经验积累,全是可用的经典案例和说明

    基于oraclespatial的遥感影像数据库系统设计与实现

    它是Oracle数据库的核心组件,它将以往对空间数据的操作转移到了数据库内部, 围绕它进行可扩展的空间计算而不用担心性能和安全问题。在本项目中,基于 Spatial这个组件设计出的空间数据库,既能保证对空间数据的...

    数据库开发设计参考

    oracle数据库开发设计参考,工作的积累

    JAVA ORACLE数据库资料讲解

    数据库设计 以及所有数据库的性能优化 所谓数据库设计就是根据具体应用环境设计出合理的数据库模式。其中应用环境包括:业务需求、数据需求和技术条件等具体情况,而数据库模式包括数据之间的联系、数据应满足的约束...

    通过JDBC连接oracle数据库的十大技巧

     1、在客户端软件开发中使用Thin驱动程序 在开发Java软件方面,Oracle的数据库提供了四种类型的驱动程序,二种用于应用软件、applets、servlets等客户端软件,另外二种用于数据库中的Java存储过程等服务器端软件。...

    精通Oracle+PL+SQL.pdf(超清书签版)

     Connor McDonald 世界著名的Oracle技术专家,Oracle认证专家,具有十多年的Oracle系统开发经验,以精深的PL/SQL造诣享誉业界。他的个人网站www.oracledba.co.uk是极具影响的Oracle技术资源。.  Chaim Katz ...

    通过JDBC连接oracle数据库的十大技巧.doc

    Java数据库连接(JDBC)API是一系列能够让Java编程人员访问数据库的接口,各个开发商的接口并不完全相同。在使用多年的Oracle公司的JDBC后,我积累了许多技巧,这些技巧能够使我们更好地发挥系统的性能和实现更多的...

    Oracle优化日记:一个金牌DBA的故事.pdf

    1999年起致力于Oracle数据库性能优化等方面的研究,参与了大量性能优化项目,积累了许多实际工作案例。2008年起,在博客上连载《DBA日记》,希望将自己在Oracle数据库应用领域的10多年的经验与广大读者分享。

    DB2和 Oracle的并发控制

    笔者在国内很多客户现场都看到开发人员和系统管理人员遇到很多有关于锁而引起的性能问题,进而被多次问起DB2和Oracle中锁的区别比较问题,笔者根据自己在工作中对DB2和Oracle数据库的使用经验积累写下这篇文章。

    让Oracle跑得更快—Oracle10g性能分析与优化思路

    资源名称:让Oracle跑得更快—Oracle 10g性能分析与优化思路...本书适用对象:Oracle DBA、Oracle开发人员,和其他对Oracle数据库感兴趣的人员作者简介: 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。

    DB2和 Oracle的并发控制(锁)比较

    笔者在国内很多客户现场都看到开发人员和系统管理人员遇到很多有关于锁而引起的性能问题,进而被多次问起DB2和Oracle中锁的区别比较问题,笔者根据自己在工作中对DB2和Oracle数据库的使用经验积累写下这篇文章

Global site tag (gtag.js) - Google Analytics