Oracle
文章平均质量分 72
q30
这个作者很懒,什么都没留下…
展开
-
Oracle EXP && IMP
一、8i EXP常用选项1、FULL,这个用于导出整个数据库,在ROWS=N一起使用时,可以导出整个数据库的结构。例如:exp sys file=./db_str.dmp log=./db_str.log full=y rows=n compress=y direct=y2、BUFFER和FEEDBACK,在导出比较多的数据时,我会考虑设置这两个参数。例如:exp new file=yw97_20原创 2005-09-12 11:03:00 · 1583 阅读 · 0 评论 -
SQL&PL/SQL FAQ
第一部分、SQL&PL/SQL[Q]怎么样查询特殊字符,如通配符%与_[A]select * from table where name like A/_% escape /[Q]如何插入单引号到数据库表中[A]可以用ASCII码处理,其它特殊字符如&也一样,如 insert into t values(i||chr(39)||m); -- chr(39)代表字符或者用两个单引号原创 2004-09-21 08:44:00 · 810 阅读 · 0 评论 -
关于Oracle中Session的干掉问题。
我们知道,在Oracle数据库中,可以通过kill session的方式来终止一个进程,其基本语法结构为:alter system kill session sid,serial# ; 被kill掉的session,状态会被标记为killed,Oracle会在该用户下一次touch时清除该进程.我们发现当一个session被kill掉以后,该session的paddr被修原创 2004-09-17 11:25:00 · 1499 阅读 · 0 评论 -
PerStat常用命令
--login oracle as syssqlplus internal;--schedule auto [email protected]/24 HH 每小时一次 (一般情况用这个)--1/48 MI 每30分钟一次--1/144 MI 每10分钟一次--1/288 MI 每5分钟一次dbms_job.submit(:jobno, statspack.snap;, trun原创 2004-09-15 15:17:00 · 948 阅读 · 0 评论 -
在Oracle中如何删除重复的记录?
表T结构如下 COL1 COL2 COL3中有重复记录(COL1,COL2为主键),如何删除1、有少数重复记录(在col1,col2上有索引比较好)DELETE T WHERE (COL1,COL2) IN (SELECT COL1,COL2 FROM T GROUP BY COL1,COL2 HAVING COUNT(*) > 1) AND ROWID原创 2004-09-15 11:30:00 · 1053 阅读 · 0 评论 -
性能调整 FAQ
[Q]如果设置自动跟踪[A]用system登录执行$ORACLE_HOME/rdbms/admin/utlxplan.sql创建计划表执行$ORACLE_HOME/sqlplus/admin/plustrce.sql创建plustrace角色如果想计划表让每个用户都能使用,则SQL>create public synonym plan_table for plan_table;SQL> grant原创 2004-09-21 08:46:00 · 937 阅读 · 0 评论 -
PL/SQL块或者存储过程中不能执行DDL,可以使用动态SQL
-- 创建临时表v_dynamic_sql :=Create global temporary table || TEST|| on commit preserve rows as select * from || ALL_OBJECTS Where 1= 2 ;EXECUTE IMMEDIATE v_dynamic_sql;原创 2004-09-15 11:22:00 · 1566 阅读 · 0 评论 -
ORACLE构架体系
[A]常见的数据类型有CHAR固定长度字符域,最大长度可达2000个字节 NCHAR多字节字符集的固定长度字符域,长度随字符集而定,最多为2000个字符或2000个字节 VARCHAR2可变长度字符域,最大长度可达4000个字符 NVARCHAR2多字节字符集的可变长度字符域,长度随字符集而定,最多为4000个字符或4000个字节 DATE用于存储全部日期的固定长度(7个字节)字符域,时间作为日期原创 2004-09-21 08:44:00 · 1054 阅读 · 0 评论 -
ORACLE锁的管理
ORACLE里锁有以下几种模式:0:none1:null 空 2:Row-S 行共享(RS):共享表锁 3:Row-X 行专用(RX):用于行的修改4:Share 共享锁(S):阻止其他DML操作5:S/Row-X 共享行专用(SRX):阻止其他事务操作6:exclusive 专用(X):独立访问使用数字越大锁级别越高, 影响的操作越多。一般的查询语句如se原创 2004-09-28 15:23:00 · 966 阅读 · 0 评论 -
Oracle数据库系统使用经验六则
1.having 子句的用法 having 子句对 group by 子句所确定的行组进行控制,having 子句条件中只允许涉及常量,聚组函数或group by 子句中的列. 2.外部联接"+"的用法 外部联接"+"按其在"="的左边或右边分左联接和右联接.若不带"+"运算符的表中的一个行不直接匹配于带"+"预算符的表中的任何行,则前者的行与后者中的一个空行相匹配并被返回.若二者均不带+,则原创 2004-08-20 11:26:00 · 865 阅读 · 0 评论 -
数据库查询优化技术
数据库系统是管理信息系统的核心,基于数据库的联机事务处理(OLTP)以及联机分析处理(OLAP)是银行、企业、政府等部门最为重要的计算机应用之一。从大多数系统的应用实例来看,查询操作在各种数据库操作中所占据的比重最大,而查询操作所基于的SELECT语句在SQL语句中又是代价最大的语句。举例来说,如果数据的量积累到一定的程度,比如一个银行的账户数据库表信息积累到上百万甚至上千万条记录,全表扫描一次往原创 2004-08-24 10:30:00 · 950 阅读 · 0 评论 -
备份与恢复 FAQ
[A]如果开启归档,请保证log_archive_start=true开启自动归档,否则只能手工归档,如果是关闭了归档,则设置该参数为false注意:如果是OPS/RAC环境,需要先把parallel_server = true注释掉,然后执行如下步骤,最后用这个参数重新启动1、开启归档a. 关闭数据库shutdown immediateb. startup mountc. alter datab原创 2004-09-21 08:45:00 · 850 阅读 · 0 评论 -
ORACLE网络与安全 FAQ
[Q]如何限定特定IP访问数据库[A]可以利用登录触发器、cmgw或者是在$OREACLE_HOME/network/admin下新增一个protocol.ora文件(有些os可能是. protocol.ora),9i可以直接修改sqlnet.ora:增加如下内容:tcp.validnode_checking=yes#允许访问的iptcp.inited_nodes=(ip1,ip2,……)#不允许原创 2004-09-21 08:47:00 · 1015 阅读 · 0 评论 -
Oracle9i的Flashback查询
启用Oracle9i的Flashback查询 作者: ZDNet China 2005-01-07 12:12 PM Oracle9i的Flashback查询的用途非常多。终端用户或者开发者几乎每天都要恢复那些由于应用失误造成的丢失数据或者被修改的数据。 Oracle宣称你可以用Flashback查询创建具有内嵌的、面向终端用户的、自服务的纠错能力的应用程序,但是很少有Oracle使用者打原创 2005-09-04 10:18:00 · 1176 阅读 · 0 评论 -
开发存储过程的一些建议
1、开发人员如果用到其他库的Table或View,务必在当前库中建立View来实现跨库操作,最好不要直接使用“databse.dbo.table_name”,因为sp_depends不能显示出该SP所使用的跨库table或view,不方便校验。 2、开发人员在提交SP前,必须已经使用set showplan on分析过查询计划,做过自身的查询优化检查。 3、高程序运行效率,优化原创 2005-08-29 10:27:00 · 907 阅读 · 0 评论 -
SQL*PLUS常用命令列表
命令列表: 假设当前执行命令为:select * from tab; (a)ppend 添加文本到缓冲区当前行尾 a order by tname 结果:select * from tab order by tname; (注:a后面跟2个空格) (c)hange/old/new 在当前行用新的文本替换旧的文本 c/*/tname 结果:select tname fr原创 2005-08-23 09:51:00 · 1239 阅读 · 0 评论 -
Oracle函数列表速查
PL/SQL单行函数和组函数详解 函数是一种有零个或多个参数并且有一个返回值的程序。在SQL中Oracle内建了一系列函数,这些函数都可被称为SQL或PL/SQL语句,函数主要分为两大类: 单行函数; 组函数 本文将讨论如何利用单行函数以及使用规则。SQL中的单行函数 SQL和PL/SQL中自带很多类型的函数,有字符、数字、日期、转换、和混合型等多种函数用于处理单行数据,因此这些都可被统称为原创 2005-08-23 09:47:00 · 932 阅读 · 0 评论 -
优化时遵循的原则
---- 人们在使用SQL时往往会陷入一个误区,即太关注于所得的结果是否正确,而忽略了不同的实现方法之间可能存在的性能差异,这种性能差异在大型的或是复杂的数据库环境中(如联机事务处理OLTP或决策支持系统DSS)中表现得尤为明显。笔者在工作实践中发现,不良的SQL往往来自于不恰当的索引设计、不充份的连接条件和不可优化的where子句。在对它们进行适当的优化后,其运行速度有了明显地提高!下面我将从这原创 2005-08-22 11:37:00 · 1101 阅读 · 0 评论 -
数据库的查询优化技术
数据库系统是管理信息系统的核心,基于数据库的联机事务处理(OLTP)以及联机分析处理(OLAP)是银行、企业、政府等部门最为重要的计算机应用之一。从大多数系统的应用实例来看,查询操作在各种数据库操作中所占据的比重最大,而查询操作所基于的SELECT语句在SQL语句中又是代价最大的语句。举例来说,如果数据的量积累到一定的程度,比如一个银行的账户数据库表信息积累到上百万甚至上千万条记录,全表扫描一次往原创 2005-08-22 11:20:00 · 761 阅读 · 0 评论 -
Oracle sql 性能优化调整
1. 选用适合的ORACLE优化器 ORACLE的优化器共有3种: a. RULE (基于规则) b. COST (基于成本) c. CHOOSE (选择性) 设置缺省的优化器,可以通过对init.ora文件中OPTIMIZER_MODE参数的各种声明,如RULE,COST,CHOOSE,ALL_ROWS,FIRST_ROWS . 你当然也在SQL句级或是会原创 2005-08-11 15:01:00 · 941 阅读 · 0 评论 -
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 USE原创 2005-02-18 16:43:00 · 1931 阅读 · 0 评论 -
Oracle9i 自己管理undo表空间
-- 创建undo表空间create undo tablespace undo_tbs datafile ‘’ size 500m;-- 切换undo表空间alter system set undo_tablespace = undo_tbs scope = both;求教:关于估算undo表空间>>>>>>>>>>>>>>>>>>> 在资料上看到估算undo表空间的大小的脚本如下:SEL原创 2004-12-15 08:22:00 · 2452 阅读 · 0 评论 -
Oracle重设密码文件
机器:Sun sparc ultra60操作系统:solaris 9Oracle: 9.2.0.1问题: 没建库之前,登陆空闲例程,出现权限不够的问题。sqlplus /nologsql>sqlplus / as sysdba 解决:重设Oracle的sys用户密码,重设密码文件。步骤: cd $ORACLE_HOME/dbs orap原创 2004-12-01 08:52:00 · 1111 阅读 · 0 评论 -
Oracle数据库中索引的维护
本文只讨论Oracle中最常见的索引,即是B-tree索引。本文中涉及的数据库版本是Oracle8i。一. 查看系统表中的用户索引在Oracle中,SYSTEM表是安装数据库时自动建立的,它包含数据库的全部数据字典,存储过程、包、函数和触发器的定义以及系统回滚段。一般来说,应该尽量避免在SYSTEM表中存储非SYSTEM用户的对象。因为这样会带来数据库维护和管理的很多问题。一旦SYST原创 2004-08-30 10:08:00 · 2640 阅读 · 0 评论 -
在ORACLE里按用户名重建索引的方法
如果你管理的ORACLE数据库下某些应用项目有大量的修改删除操作, 数据索引是需要周期性的重建的.它不仅可以提高查询性能, 还能增加索引表空间空闲空间大小. 在ORACLE里大量删除记录后, 表和索引里占用的数据块空间并没有释放. 重建索引可以释放已删除记录索引占用的数据块空间. 转移数据, 重命名的方法可以重新组织表里的数据.下面是可以按ORACLE用户名生成重建索引的SQL脚本:-------原创 2004-08-30 09:36:00 · 1023 阅读 · 0 评论 -
ORACLE常用问题1000问全集(九)
801. ALL_DIM_HIERARCHIES 显示维的层次。 802. ALL_DIM_JOIN_KEY原创 2004-08-13 10:27:00 · 1100 阅读 · 0 评论 -
ORACLE常用问题1000问全集(六)
501. DBA_COL_PRIVS 列出数据库中授予列的所有特权。 502. DBA_COLL_TYPES原创 2004-08-13 10:12:00 · 1201 阅读 · 0 评论 -
ORACLE常用问题1000问全集(四)
301. V$BUFFER_POOL 显示实例缓冲池的信息。 302. V$BUFFER_POOL_STATISTICS原创 2004-08-13 10:03:00 · 1132 阅读 · 0 评论 -
ORACLE常用问题1000问全集(一)
1. Oracle安装完成后的初始口令? internal/oracle sys/change_on_install原创 2004-08-13 09:50:00 · 1886 阅读 · 0 评论 -
ORACLE数据库的优化
1.引言 随着信息化时代的到来,人们开始广泛地使用数据库技术对大量而复杂的信息进行科学高效的管理。在数据库领域中的各种应用软件大量涌现,有Visual Foxpro,Power Builder等等,但其中ORACLE是这个领域中最优秀也是最流行的大型数据库应用软件。本文就在ORACAL中如何优化数据库及其应用程序进行了研究。 2.优化数据库 2.1 优化设置控制文件的个数,位置及其备份原创 2004-08-03 16:44:00 · 1167 阅读 · 0 评论 -
Oracle客户端配置tnsnames.ora
examples: DFDZ_DATASRV = (DESCRIPTION = (ADDRESS_LIST = (FAILOVER=ON) (LOAD_BALANCE=off) (ADDRESS = (PROTOCOL = TCP)(HOST = ibmRS6002)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP原创 2004-07-29 11:21:00 · 3257 阅读 · 0 评论 -
ORACLE常用问题1000问全集(三)
201. /*+NOCACHE(TABLE)*/ 当进行全表扫描表LRU的最近使用端时,CACHE提示能够将表的检索块放置在缓冲区缓存中最近最少列 例如:原创 2004-08-13 10:00:00 · 1536 阅读 · 0 评论 -
ORACLE常用问题1000问全集(二)
101. 如何搜索出前N条记录? SELECT * FROM empLOYEE WHERE ROWNUM ORDER BY empno; 102. 如何知道机器原创 2004-08-13 09:54:00 · 1934 阅读 · 0 评论 -
Oracle8.1.7在IBM-AIX4.3上的自动启动和关闭
数据库:Oracle 8.1.7操作系统:IBM-AIX 4.3.3 需要脚本如下: 1./rdbm/orasrv/orasrv #!/bin/ksh usage=" Usage: orasrv [START | STOP]"if test $# -ne 1then echo "$usage" exit 1elif test $1 = STARTthenecho "------原创 2004-08-03 14:45:00 · 1046 阅读 · 0 评论 -
v$sqlarea,v$sql,v$sqltext这三个视图提供的sql语句的区别
v$sqltext存储的是完整的SQL,SQL被分割SQL> desc v$sqltextName Null? Type----------------------------------------- -------- ----------------------------ADDRESS RAW(4) ---------HASH_VALUE NUMBER --------- 和 address原创 2004-08-02 15:52:00 · 813 阅读 · 0 评论 -
ORACLE常用问题1000问全集(五)
401. V$PQ_TQSTAT 包含并行执行操作上的统计量.帮助在一个查询中测定不平衡的问题。 402. V$PROCESS原创 2004-08-13 10:05:00 · 1117 阅读 · 0 评论 -
ORACLE常用问题1000问全集(七)
601. DBA_SNAPSHOT_LOG_FILTER_COLS 列出记录在快照日志上的所有过滤列。 602. DBA_SNAPSHOT_LOGS 数据库中所有的快照日志原创 2004-08-13 10:14:00 · 1298 阅读 · 0 评论 -
使用Explain进行查询及应用优化
使用Explain 摘要: Oracle RDBMS执行每一条SQL语句,都必须经过Oracle优化器的评估。所 以,了解优化器是如何选择(搜索)路径以及索引是如何被使用的,对优化SQL语句有很大的帮助。本文详细讨论了一种用于优化应用的性能诊断工具:Explain的使用方法。 介绍: 应用的优化不仅需要知道应用作了什么,还必须知道应用是如何工作的以及使用何种数据库设计来支持,必须了解使用哪种类型的原创 2004-09-06 09:18:00 · 1287 阅读 · 0 评论 -
用户如何有效地利用数据字典
ORACLE的数据字典是数据库的重要组成部分之一,它随着数据库的产生而产生, 随着数据库的变化而变化, 体现为sys用户下的一些表和视图。数据字典名称是大写的英文字符。 数据字典里存有用户信息、用户的权限信息、所有数据对象信息、表的约束条件、统计分析数据库的视图等。我们不能手工修改数据字典里的信息。 很多时候,一般的ORACLE用户不知道如何有效地利用它。 dictionary 全部原创 2004-08-25 10:14:00 · 799 阅读 · 0 评论 -
Oracle性能调整
Oracle性能调整一般是通过statspack,产生分析跟踪文件来定位效率低下的sql语句。然后通过各种手段,比如可以加入合适的索引,添加合适的hint来调整查询语句;用alter index monitoring usage;跟踪没有使用的索引并把这些索引删除、调整效率低下的索引(尤其使对大表上的索引)、加/*+append*/提示、批量插入等手段调整DML语句。原创 2004-08-24 10:35:00 · 835 阅读 · 0 评论