♣题目部分在Oracle中,SELECT ... FOR UPDATE加的是什么锁? ♣答案部分 SELECT ... FOR UPDATE语句的语法如下: SELECT ......FOR UPDATE [OF column_list][WAIT n|NOWAIT][SKIP LOCKED]; 其中,这个OF子句在涉及到多个表时,具有较大作用。...“使用FOR UPDATE WAIT”子句的优点如下: ① 防止无限期地等待被锁定的行 ② 允许应用程序中对锁的等待时间进行更多的控制 ③ 对于交互式应用程序非常有用,因为这些用户不能等待不确定的时间...④ 若使用了SKIP LOCKED,则可以越过锁定的行,不会报告由wait n引发的“资源忙”异常报告 在Oracle 10g之前,SELECT ......FOR UPDATE获取的是2级TM锁,而从Oracle 10g开始,SELECT ... FOR UPDATE获取的是3级TM锁。 本文选自《Oracle程序员面试笔试宝典》,作者:小麦苗
♣ 题目部分 在Oracle中,直方图使用示例。...NUM_BUCKETS表示桶数,一共有11个Buckets,所以在DBA_TAB_HISTOGRAMS中,ENDPOINT_VALUE列记录的就是这11个不同的DISTINCT值。...=1时候使用了索引扫描,而SAL=5000时候,已经使用全表扫描了,说明直方图起了作用。...,而在现实很多时候,列的唯一值是超过254的,那么只能使用高度平衡直方图了。...如果需要删除直方图信息,在Oracle 10g中可以通过设置“METHOD_OPT=>'FOR COLUMNS SAL SIZE 1'”,但这却得再次收集表的统计信息,十分不合理,所以,在Oracle
♣ 题目部分 在Oracle中,OGG的命令接口是哪个?...进行交互的命令为GGSCI(GoldenGate Software Command Interface),GGSCI提供了十分丰富的命令来对OGG进行各种操作,如创建、修改、监控OGG进程等等,如下所示: [oracle...@rhel6lhr gg11]$ ggsci Oracle GoldenGate Command Interpreter for Oracle Version 11.2.1.0.1 OGGCORE_11.2.1.0.1..._PLATFORMS_120423.0230_FBO Linux, x64, 64bit (optimized), Oracle 11g on Apr 23 2012 08:32:14 Copyright...(C) 1995, 2012, Oracle and/or its affiliates.
♣ 题目部分 在Oracle中,简述Oracle中的游标。 ♣ 答案部分 在介绍游标之前先介绍一下Oracle数据库中库缓存(Library Cache)的作用及其组成结构。...当同样的SQL语句和PL/SQL语句再次被执行的时候就可以直接利用已经缓存在库缓存中的那些相关对象而无须再次从头开始解析,这样就提高了这些SQL语句和PL/SQL语句在重复执行时的执行效率。...库缓存(Library Cache)在SGA中的位置如下图所示: ?...可以使用视图V$DB_OBJECT_CACHE(基表为X$KGLOB)来查询当前缓存在库缓存中的所有对象。...当Oracle要执行目标SQL“select * from lhr.emp”时,首先会对该SQL的SQL文本进行哈希运算,然后根据得到的哈希值找到相关的Hash Bucket,在Hash Bucket中遍历对应的库缓存对象句柄链表
♣ 题目部分 在Oracle中,什么是Oracle Directory?...♣ 答案部分 Oracle Directory(目录)可以让用户在Oracle数据库中灵活地对文件进行读写操作,极大地提高了Oracle的易用性和可扩展性。...赋予普通用户使用Directory的权限包括READ、WRITE、EXECUTE,也可以直接写ALL,如下所示: GRANT READ,WRITE,EXECUTE ON DIRECTORY EXP_DIR_LHR...TO LHR; GRANT ALL ON DIRECTORY EXP_DIR_LHR TO LHR; 需要注意的是,在创建Directory数据库对象时对应的路径不存在也不会报错,Oracle数据库并不会到操作系统上检验路径的存在性...,只有在使用时才会校验,因此在创建Directory时谨记对应的路径的真实存在性,否则可能会报ORA-29913或ORA-29400的错误。
问题 【DB笔试面试863】在Oracle中,如何让Oracle DB、监听和oem开机启动?...答案 Oracle提供了伴随操作系统自动重启的功能,在Windows中,可以修改“我的电脑-->管理-->服务-->OracleService$ORACLE_SID”,或直接使用Win+R键打开运行窗口...的位置:Oracle 11g的dbstart在第80行,dbshut文件中在第50行。...建立启动脚本 使用root用户创建脚本: [root@oracle ~]#vim /etc/rc.d/init.d/oracle #!...》,作者:小麦苗 公众号:DB宝,学习最实用的数据库技术。
♣ 题目部分 在Oracle中,Oracle的DBLINK是什么?...其实,DBLINK和数据库中的VIEW差不多,创建DBLINK的时候需要知道待读取数据库的IP地址、ORACLE_SID以及数据库用户名和密码。...LIKE UPPER('%LINK%'); 可以看出,在数据库中DBLINK有3种权限:CREATE DATABASE LINK(所创建的DBLINK只能是创建者自己使用,别的用户不能使用)、CREATE...LINK,DROP PUBLIC DATABASE LINK TO SCOTT; 查询数据库的DBLINK可以使用SQL语句:SELECT * FROM DBA_DB_LINKS。...,是在本地数据库tnsnames.ora文件中没有配置要访问的远程数据库的时候,而直接将相关的内容写到DBLINK的配置中,如下所示: CREATE DATABASE LINK DBL_BJLHR CONNECT
♣ 题目部分 在Oracle中,如何监控索引的使用状况?...♣ 答案部分 在开发应用程序时,可能会建立很多索引,那么这些索引的使用到底怎么样,是否有些索引一直都没有用到过,在这种情况下就需要对这些索引进行监控,以便确定它们的使用情况,并为是否可以清除它们给出依据...可以从视图DBA_HIST_SQL_PLAN中获取到数据库中所有索引的扫描次数情况,然后根据扫描次数和开发人员沟通是否需要保留索引。...从图中可以看到有一个3.6G大的索引在13号到22号从没使用过,接下来,可以继续查询该索引是否是联合索引,创建是否合理,分析为何不走该索引,从而判断是否可以删除索引。...& 说明: 有关索引的监控过程可以参考我的BLOG:http://blog.itpub.net/26736162/viewspace-2120752/ 本文选自《Oracle程序员面试笔试宝典》,作者:
♣ 题目部分 在Oracle中,为什么索引没有被使用? ♣ 答案部分 “为什么索引没有被使用”是一个涉及面较广的问题。有多种原因会导致索引不能被使用。...还有很多其它原因会导致不能使用索引,这个问题在MOS(MOS即My Oracle Support)“文档1549181.1为何在查询中索引未被使用”中有非常详细的解释,作者已经将相关内容发布到BLOG(...n 索引是否应该被使用? 二、索引本身的问题 n 索引的索引列是否在WHERE条件中(Predicate List)? n 索引列是否用在连接谓词中(Join Predicates)?...n 在总体成本中,表扫描的成本是否占大部分? n 访问空索引并不意味着比访问有值的索引高效? n 参数设置是否正确? 四、其它问题 n 是否存在远程表(Remote Table)?...n 是否使用了并行执行(PX)? n 是否包含了子查询的UPDATE语句? n 查询是否使用了绑定变量? n 查询是否引用了带有延迟约束的列? n 索引提示(Hint)是否不工作?
♣ 题目部分 在Oracle中,SPM的使用有哪些步骤?...]:/oracle>ORACLE_SID=dlhr [ZHLHRSPMDB2:oracle]:/oracle>sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0...因为只有标记为ENABLE和ACCEPT的plan才可以被使用。 下面示例将我们的第一个走全表扫描的执行计划标记为fixed。标记为fixed的执行计划会被优先使用。...例如,如果有10个基线计划,其中的三个计划被标记为FIXED,则优化程序将仅使用这三个计划中的最佳计划,而忽略其它所有计划。...如果在修复的SQL计划基线中添加了新计划,则在手动将这些新计划声明为FIXED之前,无法使用这些新计划。
♣ 题目部分 在Oracle中,LogMiner是什么?其有哪些用途?请简述LogMiner的使用过程。...♣ 答案部分 众所周知,所有对用户数据和数据字典的改变都记录在Oracle的Redo日志中,因此,Redo日志包含了所有进行恢复操作所需要的信息。...但是,原始的Redo日志文件无法看懂,所以,Oracle从8i以后提供了一个非常有用的分析工具,称为LogMiner。使用该工具可以轻松获得Redo日志文件(包含归档日志文件)中的具体内容。...特别是该工具可以分析出所有对于数据库的DML操作(INSERT、UPDATE、DELETE等)语句。Oracle 9i后可以分析DDL语句,另外还可分析得到一些必要的回滚SQL语句。...确保在创建Flat File文件的过程中,不能有DDL操作被执行。
♣ 题目部分 在Oracle中,什么是OLR?...因此,Oracle在11gR2版本中推出了另一种注册表OLR(Oracle Local Registry,Oracle本地注册表)。...OLR类似于Oracle集群注册表,但是OLR只存储与本地节点有关的信息。OLR不与集群中的其它节点共享。...OLR存储了集群启动初期ohasd(Oracle High Availability Service)使用的重要环境,如Oracle集群件的版本、配置等。...Oracle在一个名为/etc/oracle/olr.loc(Linux或AIX)或者/var/opt/oracle/olr.loc(Solaris系统)的文本文件中存储了OLR配置文件的位置。
问题 在Oracle中,响应文件在什么位置?...答案 可以在root用户下执行以下命令,获取所有的响应文件的位置: find -name *.rsp / 1、创建数据库的响应文件:$ORACLE_HOME/assistants/dbca/dbca.rsp...: ①安装完成之后:$ORACLE_HOME/inventory/response/db_install.rsp 例如:/u01/app/oracle/product/11.2.0/dbhome..._1/inventory/response/db_install.rsp ②安装之前:解压后的文件夹/response/db_install.rsp ③18c安装之前:$ORACLE_HOME.../install/response/db_install.rsp 4、安装GRID软件的响应文件: ①安装完成之后:$GRID_HOME/inventory/response/grid_install.rsp
♣ 题目部分 在Oracle中,什么是XTTS?...在企业越来越大的数据量、相对停机时间要求日益减少的情况下,利用XTTS可以完成使用增量备份方式实现跨平台的数据迁移。XTTS能够减少停机时间、可以进行增量备份,并且能实现跨平台的数据迁移。...在“去IOE”(即IBM、Oracle、EMC,其中,IBM代表硬件以及整体解决方案服务商;Oracle代表数据库;EMC代表数据存储。...Oracle其实是很难去掉的,我国很多领域的核心业务系统都运行在“IOE”的软硬件架构之上。)的浪潮下,XTTS成为了如今U2L(Unix to Linux)迁移的最有效、最安全的解决方案之一。...有关XTTS的使用在MOS文档“11G - Reduce Transportable Tablespace Downtime using Cross Platform Incremental Backup
♣ 题目部分 在Oracle中,什么OSWatcher工具?...♣ 答案部分 OSWbb(OSWatcher Black Box)是Oracle开发、提供的一个小巧,但是实用、强大的系统工具,它可以用来抓取操作系统的性能指标,用于辅助监控系统的资源使用。...OSWbb的安装非常简单,使用oracle用户进行解压即可使用(tar -xvf oswbb801.tar),参考MOS文档“OSWatcher(包括:[视频]) (文档 ID 1526578.1)”。.../startOSWbb.sh 10 2 后面参数表示10秒采集一次数据,只保留最后采集2个小时的数据在归档文件中。...② 参数2:指定采集的数据文件在归档路径保留多少个小时。 ③ 参数3:可选参数,打包压缩工具,在完成收集后OSW将使用其来打包压缩归档文件。
♣ 题目部分 【DB笔试面试817】在Oracle中,什么是ASH?...Oracle性能调整最重要的就是对最影响性能的SQL的调整。在一个应用中,能够影响到数据库的只有SQL,也只能是SQL。...在分析ASH报告、AWR报告和ADDM报告的时候,最重要的工作就是找出对性能影响最大的SQL语句,并对其进行优化。...ASH(Active Session History,活动会话历史信息)每秒从VSESSION中取ACTIVE状态会话的信息,存储在VACTIVE_SESSION_HISTORY中,并收集所有活动会话的等待信息...众所周知,动态性能视图实质是Oracle自行构造的一堆存在于SGA内存区的虚表,也就是说,ASH的数据是保存在内存里的,实际上,Oracle分配给ASH的空间并不是无限大,ASH buffers的最小值为
♣ 题目部分 在Oracle中,SCN是什么? ♣ 答案部分 SCN(System Change Number,系统改变号)是一个由系统内部维护的序列号,在数据库全局是唯一的。...在数据库中,SCN作为一种时钟机制来标记数据库动作,比如,当事务发生时,数据库会用一个SCN来标记它。...SCN是在某个时间点定义数据库已提交版本的时间戳标记,Oracle为每个已提交的事务分配一个唯一的SCN。SCN的值是对数据库进行更改的逻辑时间点。SCN是一个只会增加、不会减少的数字。...由于SCN描述的是数据一致性的状态,所以,它会在各种涉及数据一致性的场合中起到重要作用。...本文选自《Oracle程序员面试笔试宝典》,作者:小麦苗 ?
♣ 题目部分 在Oracle中,什么是GPnP?...mDNS(Multicast Domain Name Service)负责在节点内部进行IP的解析,在添加节点的时候不需要手动修改每个节点的/etc/hosts文件。...在集群中,CSS、GPnP等服务的启动都依赖于GPnP profile文件,该文件引导节点加入集群。如果GPnP profile文件被破坏或丢失,那么集群将无法正常启动。...在集群启动期间,CSS守护进程将使用GPnP profile文件中的DiscoveryString参数发现表决磁盘文件,所以,若DiscoveryString参数配置不正确,则CSS守护进程无法启动,进而导致整个...gpnptool来修改该文件,使用命令“gpnptool get”可以获取profile.xml文件的内容。
♣ 题目部分 在Oracle中,如何禁用HAIP? ♣ 答案部分 使用root用户执行以下命令。...1、停止所有节点的CRS crsctl stop crs 2、依次在每个节点中执行以下命令(节点1执行完毕后再在节点2执行) crsctl start crs -excl -nocrs crsctl...ora.drivers.acfs) STOP_DEPENDENCIES=hard(intermediate:ora.cssd,shutdown:ora.cluster_interconnect.haip) 3、依次在每个节点启动...STOP_DEPENDENCIES='hard(intermediate:ora.cssd,shutdown:ora.cluster_interconnect.haip)'" -init 本文选自《Oracle
♣ 题目部分 【DB笔试面试819】在Oracle中,什么是AWR?...Oracle性能调整最重要的就是对最影响性能的SQL的调整。在一个应用中,能够影响到数据库的只有SQL,也只能是SQL。...在AWR里面存储着近一段时间内(Oracle 10g默认是7天,Oracle 11g及其之后的版本默认是8天)数据库活动状态的详细信息。...AWR使用几个表来存储采集的统计数据,所有的表都存储在新的名称为SYSAUX的特定表空间中的SYS模式下,并且以WRM_*和WRH_*的格式命名。...视图的名称直接与表相关;例如,视图DBA_HIST_SYSMETRIC_SUMMARY是在WRH AWR的前身是Statspack,Statspack在Oracle 10g和Oracle 11g中也有提供
领取专属 10元无门槛券
手把手带您无忧上云