oracle数据库开发的一些经验积累(二)
来源: 作者: 出处:综艺读书 2006-02-261、分析表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';
相关图文阅读
频道图文推荐
相关专题
·数据库专栏 (4467篇文章)
·数据库处理专题 (7207篇文章)
·城域网专题 (6665篇文章)
·数据库安全技术专题 (11203篇文章)
·数据库安装与卸载 (8925篇文章)
·Oracle 10g基础应用 (4017篇文章)
·Wlan组网----家庭专题 (3308篇文章)
·Linux数据库宝典 (11147篇文章)
·数据库相关文章 (4468篇文章)
·数据库体系架构 (952篇文章)
·数据库处理专题 (7207篇文章)
·城域网专题 (6665篇文章)
·数据库安全技术专题 (11203篇文章)
·数据库安装与卸载 (8925篇文章)
·Oracle 10g基础应用 (4017篇文章)
·Wlan组网----家庭专题 (3308篇文章)
·Linux数据库宝典 (11147篇文章)
·数据库相关文章 (4468篇文章)
·数据库体系架构 (952篇文章)
·如何使用分析函数进行行列转换 (0次浏览)
·改变非归档模式的Oracle数据库 (0次浏览)
·如何调试oracle, sql server存储过程 (0次浏览)
·oltp系统,数据块大小用4k还是8k好? (0次浏览)
·在RHEL4U4上安装Oracle10GS2 (0次浏览)
·如何在Python下连接Oracle数据库 (0次浏览)
·Oracle中对COLUMNS_UPDATED()返回值解析 (0次浏览)
·Oracle 容灾复制解决方案分析Shar Plex (0次浏览)
·简述数据库导入Oracle SQL*Loader指南 (0次浏览)
·详细解述oracle数据库九个基本操作 (0次浏览)
·改变非归档模式的Oracle数据库 (0次浏览)
·如何调试oracle, sql server存储过程 (0次浏览)
·oltp系统,数据块大小用4k还是8k好? (0次浏览)
·在RHEL4U4上安装Oracle10GS2 (0次浏览)
·如何在Python下连接Oracle数据库 (0次浏览)
·Oracle中对COLUMNS_UPDATED()返回值解析 (0次浏览)
·Oracle 容灾复制解决方案分析Shar Plex (0次浏览)
·简述数据库导入Oracle SQL*Loader指南 (0次浏览)
·详细解述oracle数据库九个基本操作 (0次浏览)
·如何使用Logmnr方法分析数据库日志 (18次浏览)
·Oracle-Decode()函数和CASE语句的比较 (18次浏览)
·Oracle9i数据挖掘介绍 (16次浏览)
·Linux 9i下Dataguard配置 (14次浏览)
·日志分析logmnr使用方法 (12次浏览)
·Oracle数据库如何查询记录时给记录加锁 (12次浏览)
·保持Oracle数据优良性能的若干诀窍 (10次浏览)
·Oracle体系框架及SQL语句性能探讨 (9次浏览)
·如何利用QCTO开发可重复使用的测试库 (8次浏览)
·理解物化视图刷新过程中出现的约束冲突 (8次浏览)
·Oracle-Decode()函数和CASE语句的比较 (18次浏览)
·Oracle9i数据挖掘介绍 (16次浏览)
·Linux 9i下Dataguard配置 (14次浏览)
·日志分析logmnr使用方法 (12次浏览)
·Oracle数据库如何查询记录时给记录加锁 (12次浏览)
·保持Oracle数据优良性能的若干诀窍 (10次浏览)
·Oracle体系框架及SQL语句性能探讨 (9次浏览)
·如何利用QCTO开发可重复使用的测试库 (8次浏览)
·理解物化视图刷新过程中出现的约束冲突 (8次浏览)
·Oracle的初学者入门心得 (588次浏览)
·Oracle SQL性能优化技巧大总结 (461次浏览)
·Oracle DBA数据库日常维护完全手册 (294次浏览)
·用ORACLE数据库存储海量图像数据 (286次浏览)
·Oracle体系结构:内存结构和进程结构 (248次浏览)
·开启企业殿堂的钥匙 Oracle服务器的安装 (185次浏览)
·将Oracle的数据导入EXCEL中的方法 (167次浏览)
·简单冷备份恢复操作步骤 (130次浏览)
·oracle下导出某用户所有表的方法 (128次浏览)
·ORACLE的客户端如何连接到数据库 (127次浏览)
·Oracle SQL性能优化技巧大总结 (461次浏览)
·Oracle DBA数据库日常维护完全手册 (294次浏览)
·用ORACLE数据库存储海量图像数据 (286次浏览)
·Oracle体系结构:内存结构和进程结构 (248次浏览)
·开启企业殿堂的钥匙 Oracle服务器的安装 (185次浏览)
·将Oracle的数据导入EXCEL中的方法 (167次浏览)
·简单冷备份恢复操作步骤 (130次浏览)
·oracle下导出某用户所有表的方法 (128次浏览)
·ORACLE的客户端如何连接到数据库 (127次浏览)
最新技术文档
·Oracle Lite 10g数据库第三版正式问世 06-25
·Oracle 动态SQL返回单条结果和结果集 06-25
·Oracle多行记录字符串综合操作几种方法 06-24
·如何通过实例配置Oracle监听器 06-24
·Oracle数据库中LONG类型字段的存取 06-24
·介绍几个基本的 SQLPLUS 命令 06-22
·与数据库无关的处理放到数据库以外来实现 06-22
·简析Oracle数据库最大可用性体系结构 06-22
·数据库开发者常犯的十大错误,你有吗? 06-21
·Oracle数据复制技术有效解决数据冗余 06-21
·Oracle 动态SQL返回单条结果和结果集 06-25
·Oracle多行记录字符串综合操作几种方法 06-24
·如何通过实例配置Oracle监听器 06-24
·Oracle数据库中LONG类型字段的存取 06-24
·介绍几个基本的 SQLPLUS 命令 06-22
·与数据库无关的处理放到数据库以外来实现 06-22
·简析Oracle数据库最大可用性体系结构 06-22
·数据库开发者常犯的十大错误,你有吗? 06-21
·Oracle数据复制技术有效解决数据冗余 06-21
站内各频道最新更新文档
站内最新制作专题
|
|||
| ·ACDSEE专题教程-下载使用 ·迅雷专题教程-下载使用 ·Windows XP频道 ·Windows Vista频道 ·Windows 2000频道 ·win2003频道 ·Freebsd频道 ·Oracle频道 |
·Linux频道 ·Windows频道 ·邮件服务器专题 ·协议大全 ·数据恢复指南教程 ·FreeBSD使用教程 ·Linux数据库宝典 ·Linux基础知识 |
||
热门关键字导读
站内频道文章精选
| · 秘密:Vista隐蔽的动态屏保 · 腾讯开发新电子宠物--QQ熊 · 惠普否认2999元PC有价无货 |
· 驱逐Win系统“流氓”文件 · WinXP中获取未使用的IP地址 · 尝试format C:格式化硬盘? |
| · 在DOS下恢复回收站中的文件 · 拯救WinXP崩溃的救命稻草 · Linux系统中超级权限的应用 |
· 搜狗PK谷歌:谁能代言拼... · 昨日重现,一键GHOST轻松.. · 实现Web迅雷在空闲时杀毒 |
| · AVIFile函数制做AVI文件 · VC中链接动态链接库的方法 · 熊猫烧香核心源码(Delphi) |
· DateDiff函数祥解 · JavaScript去除空格的三种 · js效果 图片加载进度实时.. |
| · SQL Server数据库优化方案 · Oracle的初学者入门心得 · JSP连接Mysql数据库 |
· Photoshop为美女做艺术处理 · 用Freehand创建发光字特效 · 设计自己的个性QQ动态表情 |
百度推荐,商机无限
搜索您感兴趣的内容




