Oracle 多个实例 没有listener.ora/sqlnet.ora/tnsnames.ora
今天有个项目需要迁移数据,情况是同一个数据库不同实例,由于需要用到database link,就去network/admin下的tnsnames.ora文件,奇怪并没有这个文件,后来在网上找资料,据说是oracle用了动态注册功能。[@more@]那怎么产生这个文件呢?我用的vncserver启动桌面环境,用命令netca重新创建这个文件。然后把其它的实例名手动加进去:xpd_dev = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = jocpro_db)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = xpd_dev) ) )webs = (DESCRIPTION =
2007数据库技术年度综述与趋势展望
2007年是整个数据库市场快速发展的一年,包括Oracle、IBM和SQL Server为代表的主流商用数据库以及MySQL代表的开源数据库在这一年里都有不错的进步,随着SOA和Enterprise 2.0概念的升温,数据库领域也适时的出现很多新的技术趋势。[@more@]1. 数据库市场发展概况 1.1 竞争格局保持稳定 虽然2007年数据库市场仍然以Oracle、IBM和微软三大商用数据库厂商为主导,但随着MySQL等开源厂商的加入,其他数据库厂商的既有市场份额正在Oracle、IBM、微软三家的技术优势和开源数据库的成本优势双重挤压下进一步萎缩。 从市场份额看,根据IDC公布的数据
ORACLE回滚段管理
回滚段管理一直是ORACLE数据库管理的一个难题,本文通过实例介绍ORACLE回滚段的概念,用法和规划及问题的解决。[@more@]回滚段概述回滚段用于存放数据修改之前的值(包括数据修改之前的位置和值)。回滚段的头部包含正在使用的该回滚段事务的信息。一个事务只能使用一个回滚段来存放它的回滚信息,而一个回滚段可以存放多个事务的回滚信息。回滚段的作用事务回滚:当事务修改表中数据的时候,该数据修改前的值(即前影像)会存放在回滚段中,当用户回滚事务(ROLLBACK)时,ORACLE将会利用回滚段中的数据前影像来将修改的数据恢复到原来的
ORACLE回滚段(转)
创建回滚段 语法:[@more@] CREATE [PUBLIC] ROLLBACK SEGMENT rollback_segment [TABLESPACE tablespace] [STORAGE ([INITIAL integer[K|M]] [NEXT integer[K|M]] [MINEXTENTS integer] [MAXTENTS {integer|UNLIMITED}] [OPTIMAL {integer[K|M]|NULL}]) ] 注: 回滚段可以在创建时指明PRIVATE或PUBLIC,一旦创建将不能修改。 MINEXTENTS 必须大于等于2 PCTINCREASE必须是0 OPTIMAL如果要指定,必须大于等于回滚段的初
裸设备基础知识(转)
裸设备,也叫裸分区(原始分区),是一种没有经过格式化,不被Unix通过文件系统来读取的特殊字符设备。本文收集裸设备和Oracle问答20例。[@more@] 1.什么叫做裸设备? 裸设备,也叫裸分区(原始分区),是一种没有经过格式化,不被Unix通过文件系统来读取的特殊字符设备。它由应用程序负责对它进行读写操作。不经过文件系统的缓冲。 2.如何辨别裸设备? 在Unix的/dev 目录下,有许多文件,其中有两个大类:字符设备文件和块设备文件。 字符设备特殊文件进行I/O操作不经过操作系统的缓冲区,而块设备特殊文件用来同外设进
Oracle Tuning的一些总结
关于Oracle的性能调整,一般包括两个方面,一是指Oracle数据库本身的调整,比如SGA、PGA的优化设置,二是连接Oracle的应用程序以及SQL语句的优化。做好这两个方面的优化,就可以使一套完整的Oracle应用系统处于良好的运行状态[@more@]本文主要是把一些Oracle Tuning的文章作了一个简单的总结,力求以实际可操作为目的,配合讲解部分理论知识,使大部分具有一般Oracle知识的使用者能够对Oracle Tuning有所了解,并且能够根据实际情况对某些参数进行调整。关于更加详细的知识,请参见本文结束部分所提及的推荐书籍,同时由于该话题内容太多且
Set autotrace命令及解释
Set autotrace命令及解释![@more@]二、设置Autotrace的命令。序号命令解释1SET AUTOTRACE OFF此为默认值,即关闭Autotrace2SET AUTOTRACE ON EXPLAIN只显示执行计划3SET AUTOTRACE ON STATISTICS 只显示执行的统计信息4SET AUTOTRACE ON包含2,3两项内容5SET AUTOTRACE TRACEONLY 与ON相似,但不显示语句的执行结果。三、Autotrace执行计划的各列的涵义序号列名 解释1ID_PLUS_EXP每一步骤的行号2PARENT_ID_PLUS_EXP每一步的Parent的级别号3PLAN_PLUS_EXP实际的每步4OBJECT_NODE_PLUS_EXP Dblink或并行查询时才会用到四、AUTOTRACE Statist
Oracle锁简单介绍
ORACLE数据库是现今数据库领域应用最广泛的,同时它也是一个庞大的系统,全面了解它、玩转它不但需要一定的理论知识,更需要开发经验与工程经验。本人是ORACLE一爱好者,以下是本人对ORACLE锁的一些经验,希望能与大家共同分享。[@more@] 预备知识: DDL(DATABASE DEFINITION LANGUAGE):数据库定义语言,如create table、drop table..... DML(DATABASE MODIFICATION LANGUAGE):数据库修改语言,如insert、delete、update...... 参考资料:Oracle8 Administrator"s Guide, Release 8.0 Oracle8 Tuning, Release
内存管理简介
对于oracle的内存的管理,截止到9iR2,都是相当重要的环节,管理不善,将可能给数据库带来严重的性能问题。下面我们将一步一步就内存管理的各个方面进行探讨。[@more@] l 概述 oracle的内存可以按照共享和私有的角度分为系统全局区和进程全局区,也就是SGA和PGA(process global area or private global area)。对于SGA区域内的内存来说,是共享的全局的,在UNIX上,必须为oracle设置共享内存段(可以是一个或者多个),因为oracle在UNIX上是多进程;而在WINDOWS上oracle是单进程(多个线程),所以不用设置共享内存段。PGA是属
32bit和64bit的问题
对于oracle来说,存在着32bit与64bit的问题。这个问题影响到的主要是SGA的大小。[@more@]在32bit的数据库下,通常oracle只能使用不超过1.7G的内存,即使我们拥有12G的内存,但是我们却只能使用1.7G,这是一个莫大的遗憾。假如我们安装64bit的数据库,我们就可以使用很大的内存,几乎不可能达到上限。但是64bit的数据库必须安装在64bit的操作系统上,可惜目前windows上只能安装32bit的数据库,我们通过下面的方式可以查看数据库是32bit还是64bit: SQL> select * from v$version;BANNER---------------------------------------------
优化数据库的三板斧大幅提高Oracle性能
几个简单的步骤大幅提高Oracle性能--我优化数据库的三板斧[@more@] 数据库优化的讨论可以说是一个永恒的主题。资深的Oracle优化人员通常会要求提出性能问题的人对数据库做一个statspack,贴出数据库配置等等。还有的人认为要抓出执行最慢的语句来进行优化。但实际情况是,提出疑问的人很可能根本不懂执行计划,更不要说statspack了。而我认为,数据库优化,应该首先从大的方面考虑:网络、服务器硬件配置、操作系统配置、Oracle服务器配置、数据结构组织、然后才是具体的调整。实际上网络、硬件等往往无法决定更换,应用程序一般也
ORACLE学习笔记--性能优化二
10.Oracle什么时候会使用跳跃式索引扫描[@more@]这是9i的一个新特性跳跃式索引扫描(Index Skip Scan).例如表有索引index(a,b,c),当查询条件为where b=?的时候,可能会使用到索引index(a,b,c),如,执行计划中出现如下计划:INDEX (SKIP SCAN) OF “TEST_IDX“ (NON-UNIQUE)Oracle的优化器(这里指的是CBO)能对查询应用Index Skip Scans至少要有几个条件:<1> 优化器认为是合适的。<2> 索引中的前导列的唯一值的数量能满足一定的条件(如重复值很多)。<3> 优化器要知道前导列的值分布(通过分析/统计表得到)
ORACLE学习笔记--性能优化三
18.怎么清理临时段[@more@]可以使用如下办法<1>、 使用如下语句查看一下认谁在用临时段SELECT username,sid,serial#,sql_address,machine,program,tablespace,segtype, contentsFROM v$session se,v$sort_usage suWHERE se.saddr=su.session_addr<2>、 那些正在使用临时段的进程SQL>Alter system kill session “sid,serial#“;<3>、把TEMP表空间回缩一下SQL>Alter tablespace TEMP coalesce;还可以使用诊断事件<1>、 确定TEMP表空间的ts#SQL> select ts#, name FROM v$tablespace
ORACLE学习笔记--性能优化四
22. SQL语句的优化方法[@more@]<1> /*+ALL_ROWS*/表明对语句块选择基于开销的优化方法,并获得最佳吞吐量,使资源消耗最小化.例如:SELECT /*+ALL+_ROWS*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO=“CCBZZP“;<2>. /*+FIRST_ROWS*/表明对语句块选择基于开销的优化方法,并获得最佳响应时间,使资源消耗最小化.例如:SELECT /*+FIRST_ROWS*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO=“CCBZZP“;<3>. /*+CHOOSE*/表明如果数据字典中有访问表的统计信息,将基于开销的优化方法,并获得最
ORACLE学习笔记--性能优化一
1. 查询正在执行语句的执行计划(也就是实际语句执行计划)[@more@]select * from v$sql_plan where hash_value = (select sql_hash_value from v$session where sid = 1111);其中id和parent_id表示了执行数的结构,数值最大的为最先执行比如ID PARENT_ID-------------01 02 13 24 35 46 3则执行计划树为 0 1 2 3 6 4 52.如何设置
Oracle笔记-优化策略与工具
第 10 章 优化策略与工具[@more@] 10.1 标识问题 10.2 我的方法 10.3 绑定变量与分析(再次) 不使用绑定变量将增加语句分析,除了消耗CPU时间外,还会增加字典高速缓存上的闩锁。 显示会话等待的事件:V$SESSION_EVENT.具体事件名和含义可以参考Oracle Reference Manual的附录Oracle Wait Events. CURSOR_SHARING CURSOR_SHARING参数缺省为EXACT,若指定为FORCE,则优化器可能将语句中所有的常数转换为绑定变量,虽然减少了语句分析,但是也会带来如下副作用: 优化器可供利用的信息可能减少,从而改变执行路径,
使用智能优化器提高Oracle的性能极限
消耗在准备新的SQL语句的时间是Oracle SQL语句执行时间的最重要的组成部分。但是通过理解Oracle内部产生执行计划的机制,你能够控制Oracle花费在评估连接顺序的时间数量,并且能在大体上提高查询性能。[@more@] 准备执行SQL语句 当SQL语句进入Oracle的库缓存后,在该语句准备执行之前,将执行下列步骤: 1) 语法检查:检查SQL语句拼写是否正确和词序。 2) 语义分析:核实所有的与数据字典不一致的表和列的名字。 3) 轮廓存储检查:检查数据字典,以确定该SQL语句的轮廓是否已经存在。 4) 生成执行
ORACLE数据库体系框架介绍及SQL语句性能探讨
“我们公司主要的业务是软件开发和系统集成,而这两个方面都会涉及到数据库软件,公司大多数的产品和工作都和ORACLE数据库有关;[@more@] 因此,可以说我们宏智科技在ORACLE数据库应用方面是高手云集、藏龙卧虎!下面,我本着“鲁班门前弄大斧”的动机和“成功就是把犯错误的速度提高一倍”的精神,战战兢兢地写下了一些个人认为重要的观点和一点点个人的体会,希望大家不要吝啬给我成长的机会,多提意见。 摘要:基于数据库的业务系统的核心是数据库和数据。理解ORACLE数据的体系框架有助于我们成功开发基于数据库的业务系统。通过增加
查询语句(SELECT)的优化
这篇文章是基于Informix数据库写的。希望对大家有用。[@more@] 程序设计中的一个著名定律是20%的代码用去了80%的时间,在数据库应用程序中也同样如此。数据库应用程序的优化通常可分为两个方面:源代码的优化和SQL语句的优化。源代码的优化在时间成本和风险上代价很高;另一方面,源代码的优化对数据库系统性能的提升收效有限。 许多程序员认为查询优化是DBMS(数据库管理系统)的任务,与程序员所编写的SQL语句关系不大,这是错误的。一个好的查询计划往往可以使程序性能提高数十倍。查询计划是用户所提交的SQL语句的集合,查
Oracle数据库中大型表查询优化的研究
摘 要:对海量数据进行访问查询时,常常遇到系统响应时间过长,占用系统资源过多的问题。本文结合实例着重对Oracle数据库中的查询优化进行了研究,测试结果表明采用的方法是很有效的,大大缩短了测试用例表的响应时间,最后对海量数据的优化方法提出了实用性的建议。[@more@] 关键词:海量数据;Oracle数据库;查询优化;数据查询 1 引 言 在直升机飞行地面数据处理平台中,需要查询历史飞行数据来进行飞行状态的模拟及其飞行事故的分析,从而对当前飞机状态进行评判。其数据量非常巨大。如何对其进行快速访问,提高系统