`

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

阅读更多
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:\ORACLE\ORADATA\ORCL\test.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 table\index\procedure\package
   受控开发者:没有以上权限


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';



作者Blog:http://blog.csdn.net/great_domino/
分享到:
评论

相关推荐

    JSp+oracle数据库应用系统开发与实例

    《JSP+Oracle数据库应用系统开发与...通过对这本书的学习,开发者不仅能够深入理解JSP与Oracle数据库的协同工作,还能积累实战经验,提升解决实际问题的能力。无论是初学者还是有一定经验的开发者,都能从中受益匪浅。

    Oracle数据库服务器配置

    Oracle数据库服务器配置是数据库管理员和IT专业人员在部署和管理Oracle...随着经验的积累,还应深入学习Oracle数据库的体系结构、性能调优、备份恢复、安全管理等高级主题,以便更好地管理和维护Oracle数据库环境。

    Oracle数据库教程.txt

    - Oracle数据库是由美国Oracle公司开发的一款关系型数据库管理系统。它以其高性能、高可靠性及强大的功能在众多数据库产品中脱颖而出。 - **历史发展**: - Oracle数据库自1979年发布以来,经历了多次重大版本更新...

    10-Oracle数据库(学习4天).txt

    - **Oracle数据库简介**:Oracle数据库是由美国Oracle公司开发的一款关系型数据库管理系统,它在金融、电信、政府等领域有着广泛的应用。Oracle数据库支持多种操作系统平台,并以其高性能、高可靠性、丰富的功能和...

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

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

    Oracle数据库学习文档(详细)

    Oracle数据库是全球广泛使用的大型关系型数据库管理系统之一,由甲骨文公司开发。它具备高级的数据保护、可靠性和高性能,适用于处理大规模数据和复杂事务处理。本文档为初学者提供了Oracle数据库学习的详细知识点。...

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

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

    最好最全的Oracle 数据库教程(内含命令使用实例)

    "java"、"j2ee"、"struts"、"spring"和"hibernate"则与Java后端开发相关,这些技术常常与Oracle数据库结合,用于构建企业级应用。Java JDBC(Java Database Connectivity)是连接Oracle数据库的标准接口,而J2EE框架...

    Oracle数据库应用开发综合设计实验.7z

    理解并熟练运用这些SQL语法是Oracle数据库开发的基础。 在开发过程中,你将学习到PL/SQL,这是Oracle专有的过程化语言,它扩展了SQL的功能,允许编写包含循环、条件判断和异常处理的程序块。通过PL/SQL,开发者可以...

    Oracle数据库管理相关讲解.pptx

    - 掌握Oracle数据库管理能提升个人竞争力,因为雇主倾向于雇佣具有多领域经验的求职者。 2. **学习Oracle的方法**: - 首先,学习一种编程语言,如Java或.NET,这是与数据库交互的基础。 - 其次,如果之前有其他...

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

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

    ORACLE数据库知识、操作方法。安装ORACLE

    以上只是Oracle数据库学习的基础,随着经验的积累,你将深入到更复杂的主题,如数据仓库、分布式数据库、XML支持、数据加密等。Oracle数据库的学习是一个不断探索和实践的过程,只有通过实践才能真正掌握其精髓。

    Oracle 大型数据库

    Oracle数据库开发是一项专业技能,涉及到数据库设计、安装配置、数据管理、性能优化等多个方面。本教程将带你深入学习Oracle数据库的基础知识,助你成为一名熟练的Oracle数据库开发者。 首先,我们从第1章“Oracle...

    oracle数据库基础知识.pptx

    Oracle数据库基础知识的学习需要具备一定的数据库基础知识和SQL语言基础,逐步掌握Oracle的体系结构、基本概念、实际操作、PL/SQL语言、开发和管理等方面的知识,并通过实践和经验的积累和提炼过程来提高自己的技能...

    计算机Oracle数据库优化措施的相关研究.pdf

    Oracle数据库是目前广泛应用的关系型数据库管理系统,由美国甲骨文公司开发。随着互联网时代的快速发展,对...这需要专业人士深入研究,不断积累经验,以确保Oracle数据库在应对互联网时代的挑战时,保持其领先地位。

    找个oracle 数据库工作到底还该做什么啊?

    以下是一些专业技能和知识点,它们能帮助你更好地准备Oracle数据库工作的求职过程。 1. 数据库基础知识:首先,你需要对数据库的基本概念有深入的了解,包括数据模型(关系型、对象型等)、数据库设计(实体-关系...

    为什么要学习oracle数据库1

    总的来说,学习Oracle数据库技术不仅可以开启一个高薪且有前景的IT职业,也是提升个人在数据库管理和开发领域专业素养的关键。对于那些致力于在这个领域深耕的人来说,投资于Oracle技术的学习无疑是明智的选择。

    关于手工创建Oracle数据库的研究.pdf

    在解决问题的过程中,不断学习和积累经验,可以更好地应对各种复杂的数据库管理问题,从而扩大Oracle数据库系统的应用范围。 总之,手工创建Oracle数据库是一项技术性强且需要细致操作的工作。通过深入分析问题原因...

Global site tag (gtag.js) - Google Analytics