Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1177038
  • 博文数量: 312
  • 博客积分: 12522
  • 博客等级: 上将
  • 技术积分: 3376
  • 用 户 组: 普通用户
  • 注册时间: 2008-02-27 18:35
文章分类

全部博文(312)

文章存档

2016年(3)

2015年(1)

2013年(1)

2012年(28)

2011年(101)

2010年(72)

2009年(13)

2008年(93)

分类: Oracle

2008-02-27 18:41:19

Oracle基本操作

一,约束操作  

1:更改约束名称: 

ALTER TABLE TName RENAME CONSTRAINT oldname TO newname; 

2:删除约束 >

ALTER TABLE TName DROP CONSTRAINT cname '

3:停止约束 

ALTER TABLE TName MODIFY CONSTRAINT cname DISABLE;

4:起用约束 

ALTER TABLE TName MODIFY CONSTRAINT cname ENABLE VALIDATE;

5:新增约束 

ALTER TABLE TName ADD CONSTRAINT cname FOREIGN KEY (ORG_ID) REFERENCES ref_table (ORGID); }

二,字段操作

1:更改字段数据类型:

ALTER TABLE TName MODIFY(ORG_ID VARCHAR2(50 BYTE));

2:更改字段数据长度:

ALTER TABLE TName MODIFY(ORG_ID VARCHAR2(80 BYTE)); ­

3:修改表的列名 

alter table TName rename column xx to yy;

 

三,表操作

1:删除表数据:

truncate table TName;

2:复制空表结构

create table new_table as select * from old_table where 1=2; 

3:复制表(含记录) 

create table new_table as select * from old_table ;

 

四,存储过程

1:命令行编译存储过程

ALTER PROCEDURE procedure_name COMPILE;

 

五,数据库链接(DBlink)

1:建立数据库连接 ={BQrR"CW 

CREATE DATABASE LINK DBaseLinkName CONNECT TO UserName IDENTIFIED BY Password USING 'NetServiceName';

 

,Oracle服务器常用命令行

1)数据库管理相关

Q/z]U3

 

bbed.exe 数据块浏览和编辑工具  

 

dbv.exe 数据文件逻辑检测工具

 

exp.exe 数据导出工具

 

imp.exe 数据导入工具 

 

mig.exe 数据库移植工具 

 

nmumigrate.exe Data Gatherer移植工具

-6d!1js78‑ 

ocopy.exe 裸分区数据文件备份工具

oradim.exe Oracle服务创建、删除工具

orakill.exe Oracle线程删除工具 )

orapwd.exe Oracle密码文件创建工具

orastack.exe Oracle进程堆栈修改工具

oratclsh.exe TCL脚本解释器

otrccol.exe trace命令行服务管理工具

otrccref.exe trace管理文件生成工具

otrcfmt.exe trace数据格式化工具

otrcrep.exe trace数据统计报表生成工具

rman.exe 备份与恢复工具

setlinks.exe 磁盘分区管理工具

sqlldr.exe sql Load数据批量导入工具

sqlplus.exe 命令行的sqlplus

svrmgrl.exe Oracle实例管理工具

tkprof.exe SQL语句跟踪文件解析工具

vppcntl.exe Data Gatherer服务管理工具

2Internet Directory相关

bulkload.exe 使用SQL*Loader生成目录对象的工具 3

bulkdelete.exe 子树删除工具

bulkmodify.exe 目录对象修改工具

ldifwrite.exe 将目录中的信息转换成LDIF格式 }

ldapadd.exe 向目录中增加目录对象、属性、值的工具

ldapaddmt.exe ldapadd的多线程版本

ldapbind.exe 客户端认证工具

ldapcompare.exe 属性值比较工具

ldapdelete.exe 将目录对象从目录中删除的工具

ldapmoddn.exe 修改DNRDN的工具

ldapmodify.exe 属性修改工具

ldapmodifymt.exe ldapmodify的多线程版本

ldapsearch.exe 查找和获取目录中目录对象工具

oidpasswd.exe Internet Directory密码管理工具 n

oidreconcile.exe 目录对象同步工具

3NLS相关

csscan.exe 数据库字符集转换测试工具

lxbcnf.exe NLS配置工具

lxegen.exe 自定义日期格式生成工具

lxinst.exe 自定义字符集生成工具

4Net8相关

agtctl.exe 异构服务代理控制程序

cmctl.exe 连接服务管理工具

lsnrctl.exe 监听服务管理工具

naegen.exe 哈夫曼参数生成工具

namesctl.exe 名字服务管理工具

okdstry.exe 删除Kerberos证书工具

okinit.exe 创建Kerberos证书工具

oklist.exe 检查Kerberos证书工具

tnsping.exe 服务名连接测试工具

trcasst.exe SQL*Net跟踪文件解析工具

5interMedia相关

ctxhx.exe ConText文本转换工具 }

ctxkbtc.exe ConText词典编译工具

ctxload.exe ConText词典导入/导出工具

6)开发相关

lmsgen.exe OCI使用的消息文件转换工具

loadpsp.exe PL/SQL Server Page装载器

ott.exe Oracle对象类型转换工具

sqlj.exe sqlj翻译器

wrap.exe 存储过程加密工具

xml.exe XML解析器

xmlcg.exe XML C++ Class 生成器

七,Soralis环境下Oracle管理

1:启动数据库管理命令:dbca ;

八,Oracle性能优化  

1ORACLE的优化器共有3: 

  a. RULE (基于规则)  b. COST (基于成本) c. CHOOSE (选择性) 

 2.ORACLE 采用两种访问表中记录的方式:

a.全表扫描

全表扫描就是顺序地访问表中每条记录. ORACLE采用一次读入多个数据块(database block)的方式优化全表扫描.

b.通过ROWID访问表

采用基于ROWID的访问方式情况,提高访问表的效率, , ROWID包含了表中记录的物理位置信息..ORACLE采用索引(INDEX)实现了数据和存放数据的物理位置(ROWID)之间的联系. 通常索引提供了快速访问ROWID的方法,因此那些基于索引列的查询就可以得到性能上的提高.

3:选择最有效率的表名顺序(只在基于规则的优化器中有效) 0"Ngi>Gua 

    ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名,因此FROM子句中写在最后的表(基础表 driving table)将被最先处理. FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表.ORACLE处理多个表时, 会运用排序及合并的方式连接它们.首先,扫描第一个表(FROM子句中最后的那个表)并对记录进行派序,然后扫描第二个表(FROM子句中最后第二个表),最后将所有从第二个表中检索出的记录与第一个表中合适记录进行合并.

    如果有3个以上的表连接查询, 那就需要选择交叉表(intersection table)作为基础表, 交叉表是指那个被其他表所引用的表.

5. WHERE子句中的连接顺序. 

    ORACLE采用自下而上的顺序解析WHERE子句,根据这个原理,表之间的连接必须写在其他WHERE条件之前, 那些可以过滤掉最大数量记录的条件必须写在WHERE子句的末尾.

 

九,Oracle数据库重建

1:数据库重建应注意的问题  

  在利用import进行数据库重建过程中,有些视图可能会带来问题,因为结构输入的顺序可能造成视图的输入先于它低层次表的输入,这样建立视图就会失败.要解决这一问题,可采取分两步走的方法:首先输入结构,然后输入数据: ,Z

  imp user/pwd@dabaseSID file=empdata.dmp rows=N

  

  imp user/pwd@dabaseSID file=empdata.dmp full=Y buffer=64000

  

  commit=Y ignore=Y 

2:快速编译所有视图

  ---- 当在把数据库倒入到新的服务器上后(数据库重建),需要将视图重新编译一遍,因为该表空间视图到其它表空间的表的连接会出现问题,可以利用PL/SQL的语言特性,快速编译。

  SQL >SPOOL ON.SQL

  SQL >SELECT ALTER VIEW ||TNAME||

  COMPILE; FROM TAB; 

  SQL >SPOOL OFF `

  然后执行ON.SQL即可。

  SQL >@ON.SQL 

  授权和创建同义词也可以快速进行:

  SQL >SELECT GRANT SELECT ON

  ||TNAME|| TO USERNAME; FROM TAB;

  SQL >SELECT CREATE SYNONYM  

  ‘||TNAME|| FOR USERNAME.||TNAME||; FROM TAB;

 

   

  第一条命令输入所有数据库结构,但无记录.第二次输入结构和数据,64000字节提交一次.ignore=Y选项保证第二次输入既使对象存在的情况下也能成功.

阅读(858) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~