网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > Oracle教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
本月文章推荐
.J2EE应用开发中与Oracle数据库的.
.如何将Oracle的数据倒入EXCEL中的.
.32bit oracle 扩展SGA原理.
.DBMS_REPAIR包修复损坏数据块.
.Oracle E-Business多个未明SQL注.
.Windows NT平台下Oracle优化策略.
.ORACLE性能诊断―学习statspack笔.
.留言簿(带Oracle数据库分页的显.
.Oracle10g EM乱码之快速解决.
.用orabm测试oracle服务器的TPS值.
.分享一条有用的sql文(ORACLE).
.捕捉运行很久的SQL.
.使用Oracle基础架构 在医疗行业运.
.关于Oracle数据库热备份脚本深入.
.Oracle 9与Oracle 8中CPU_COSTIN.
.Oracle sql 語句分析.
.经典的问题与解答(1).
.学习:怎样才是一个真正的DBA?.
.加速SQL查询的特征函数法.
.oracle中如何删除重复数据.

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

发表日期:2008-2-9



  
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 tablenamePCTFREE 30PCTUSED 50STORAGE(NEXT 500KMINEXTENTS 2MAXEXTENTS 100);

ALTER TABLE tablenameALLOCATE EXTENT(SIZE 500KDATAFILE '/DISK3/DATA01.DBF');

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

ALTER TABLE TABLENAME MOVE TABLESPACE TABLESPACENAME;

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

ALTER TABLE tablenameDEALLOCATE UNUSED;

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

DROP TABLE tablenameCASCADE CONSTRAINTS;

--给表增加列

ALTER TABLE TABLENAMEADD COLUMN COLUTYPE DEFAULT(VALUE) NOT NULL;

--删除表中的列

ALTER TABLE tablenameDROP COLUMN columnname;

ALTER TABLE tablenameDROP COLUMN columnnameCASCADE CONSTRAINTS CHECKPOINT 1000;

--标记列不可用

ALTER TABLE tablenameSET UNUSED COLUMN columnnameCASCADE CONSTRAINTS;

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

ALTER TABLE tablenameDROP UNUSED COLUMNS CHECKPOINT 1000;

--继续删除列选项

ALTER TABLE tablenameDROP 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 indexnameSTORAGE(NEXT 400K MAXEXTENTS 100);

--释放索引空间

ALTER INDEX indexnameALLOCATE EXTENT (SIZE 200KDATAFILE '/DISK6/indx01.dbf');

ALTER INDEX indexnameDEALLOCATE UNUSED;

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

ALTER INDEX indexname COALESCE;

--删除索引

DROP INDEX indexname

--把索引放到BUFFER_POOL中

ALTER INDEX cust_name_idx  REBUILD  STORAGE (BUFFER_POOL KEEP);

5、约束治理

--建立主键

ALTER TABLE TABLENAMEADD 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 TABLENAMEMODIFY 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';
上一篇:当Oracle9i的OPTIMIZER_MODE = FIRST_ROWS时EXP过慢的解决方法 人气:632
下一篇:oracle数据库开发的一些经验积累(一) 人气:1663
浏览全部Oracle教程的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐