当前位置:首页>文档>IT类方向专业面高频考查知识点--数据库数据...(1)_2025春招题库汇总_国企-运营商题库_中国移动面试全套资料_移动面试专业部分

IT类方向专业面高频考查知识点--数据库数据...(1)_2025春招题库汇总_国企-运营商题库_中国移动面试全套资料_移动面试专业部分

  • 2026-03-11 18:25:24 2026-01-25 23:11:33

文档预览

IT类方向专业面高频考查知识点--数据库数据...(1)_2025春招题库汇总_国企-运营商题库_中国移动面试全套资料_移动面试专业部分
IT类方向专业面高频考查知识点--数据库数据...(1)_2025春招题库汇总_国企-运营商题库_中国移动面试全套资料_移动面试专业部分
IT类方向专业面高频考查知识点--数据库数据...(1)_2025春招题库汇总_国企-运营商题库_中国移动面试全套资料_移动面试专业部分
IT类方向专业面高频考查知识点--数据库数据...(1)_2025春招题库汇总_国企-运营商题库_中国移动面试全套资料_移动面试专业部分
IT类方向专业面高频考查知识点--数据库数据...(1)_2025春招题库汇总_国企-运营商题库_中国移动面试全套资料_移动面试专业部分
IT类方向专业面高频考查知识点--数据库数据...(1)_2025春招题库汇总_国企-运营商题库_中国移动面试全套资料_移动面试专业部分
IT类方向专业面高频考查知识点--数据库数据...(1)_2025春招题库汇总_国企-运营商题库_中国移动面试全套资料_移动面试专业部分
IT类方向专业面高频考查知识点--数据库数据...(1)_2025春招题库汇总_国企-运营商题库_中国移动面试全套资料_移动面试专业部分
IT类方向专业面高频考查知识点--数据库数据...(1)_2025春招题库汇总_国企-运营商题库_中国移动面试全套资料_移动面试专业部分
IT类方向专业面高频考查知识点--数据库数据...(1)_2025春招题库汇总_国企-运营商题库_中国移动面试全套资料_移动面试专业部分
IT类方向专业面高频考查知识点--数据库数据...(1)_2025春招题库汇总_国企-运营商题库_中国移动面试全套资料_移动面试专业部分
IT类方向专业面高频考查知识点--数据库数据...(1)_2025春招题库汇总_国企-运营商题库_中国移动面试全套资料_移动面试专业部分
IT类方向专业面高频考查知识点--数据库数据...(1)_2025春招题库汇总_国企-运营商题库_中国移动面试全套资料_移动面试专业部分
IT类方向专业面高频考查知识点--数据库数据...(1)_2025春招题库汇总_国企-运营商题库_中国移动面试全套资料_移动面试专业部分
IT类方向专业面高频考查知识点--数据库数据...(1)_2025春招题库汇总_国企-运营商题库_中国移动面试全套资料_移动面试专业部分
IT类方向专业面高频考查知识点--数据库数据...(1)_2025春招题库汇总_国企-运营商题库_中国移动面试全套资料_移动面试专业部分
IT类方向专业面高频考查知识点--数据库数据...(1)_2025春招题库汇总_国企-运营商题库_中国移动面试全套资料_移动面试专业部分

文档信息

文档格式
doc
文档大小
0.131 MB
文档页数
17 页
上传时间
2026-01-25 23:11:33

文档内容

http://51jobs.taobao.com/独家提供,版权所有 IT类方向专业面高频考查知识点--数据库数据结构网络等--天天向上图文工作室独家整理 复习笔记知识点 数据库 1)什么是范式、1范式、2范式、3范式?(百度,中航信,新华社,中国信保) 所谓范式就是符合某一种级别的关系模式的集合。通过分解把属于低级范式的关系模式转换为几个属于高级范 式的关系模式的集合。这一过程称为规范化。 1、 第一范式(1NF):一个关系模式R的所有属性都是不可分的基本数据项。 2、 第二范式(2NF):关系模式R属于第一范式,且每个非主属性都完全函数依赖于键码。 3、 第三范式(3NF):关系模式R属于第一范式,且每个非主属性都不传递依赖于键码。 4、 BC范式(BCNF):关系模式R属于第一范式,且每个属性都不传递依赖于键码。即每个决定因素都包含码。 2)事务具有哪些特性? 数据库事务是指作为单个逻辑工作单元执行的一系列操作。 事务的:原子性、一致性、分离性、持久性 (1) 原子性  事务的原子性指的是,事务中包含的程序作为数据库的逻辑工作单位,它所做的对数据修改操作要么全部执 行,要么完全不执行。这种特性称为原子性。  事务的原子性要求,如果把一个事务可看作是一个程序,它要么完整的被执行,要么完全不执行。就是说事务 的操纵序列或者完全应用到数据库或者完全不影响数据库。这种特性称为原子性。 假如用户在一个事务内完成了对数据库的更新,这时所有的更新对外部世界必须是可见的,或者完全没有更新。 前者称事务已提交,后者称事务撤消(或流产)。DBMS必须确保由成功提交的事务完成的所有操纵在数据库内 有完全的反映,而失败的事务对数据库完全没有影响。 (2) 一致性 事务的一致性指的是在一个事务执行之前和执行之后数据库都必须处于一致性状态。这种特性称为事务的一致 性。假如数据库的状态满足所有的完整性约束,就说该数据库是一致的。 一致性处理数据库中对所有语义约束的保护。假如数据库的状态满足所有的完整性约束,就说该数据库是一 致的。例如,当数据库处于一致性状态S1时,对数据库执行一个事务,在事务执行期间假定数据库的状态是不 一致的,当事务执行结束时,数据库处在一致性状态S2。 (3) 分离性 分离性指并发的事务是相互隔离的。即一个事务内部的操作及正在操作的数据必须封锁起来,不被其它企图 进行修改的事务看到。 分离性是DBMS针对并发事务间的冲突提供的安全保证。DBMS可以通过加锁在并发执行的事务间提供不同 级别的分离。假如并发交叉执行的事务没有任何控制,操纵相同的共享对象的多个并发事务的执行可能引起异 常情况。 DBMS可以在并发执行的事务间提供不同级别的分离。分离的级别和并发事务的吞吐量之间存在反比关系。http://51jobs.taobao.com/独家提供,版权所有 较多事务的可分离性可能会带来较高的冲突和较多的事务流产。流产的事务要消耗资源,这些资源必须要重新 被访问。因此,确保高分离级别的DBMS需要更多的开销。 (4)持久性 持久性意味着当系统或介质发生故障时,确保已提交事务的更新不能丢失。即一旦一个事务提交,DBMS保 证它对数据库中数据的改变应该是永久性的,耐得住任何系统故障。持久性通过数据库备份和恢复来保证。 持久性意味着当系统或介质发生故障时,确保已提交事务的更新不能丢失。即对已提交事务的更新能恢复。 一旦一个事务被提交,DBMS必须保证提供适当的冗余,使其耐得住系统的故障。所以,持久性主要在于DBMS 的恢复性能。 3)请说说什么是外连接、左外连接、右外连接? 内联接(典型的联接运算,使用像 = 或 <> 之类的比较运算符)。包括相等联接和自然联接 。 内联接使用比较运算符根据每个表共有的列的值匹配两个表中的行。例如,检索 students 和 courses 表中学生标识号相同的所有行。 外联接。外联接可以是左向外联接、右向外联接或完整外部联接。 在 FROM 子句中指定外联接时,可以由下列几组关键字中的一组指定: LEFT JOIN 或 LEFT OUTER JOIN。 左向外联接的结果集包括 LEFT OUTER 子句中指定的左表的所有行,而不仅仅是联接列所匹配的行。如 果左表的某行在右表中没有匹配行,则在相关联的结果集行中右表的所有选择列表列均为空值。 RIGHT JOIN 或 RIGHT OUTER JOIN。 右向外联接是左向外联接的反向联接。将返回右表的所有行。如果右表的某行在左表中没有匹配行,则将为左表 返回空值。 FULL JOIN 或 FULL OUTER JOIN。 完整外部联接返回左表和右表中的所有行。当某行在另一个表中没有匹配行时,则另一个表的选择列表列包含 空值。如果表之间有匹配行,则整个结果集行包含基表的数据值。 交叉联接。 交叉联接返回左表中的所有行,左表中的每一行与右表中的所有行组合。交叉联接也称作笛卡尔积。 4)请说说关系代数中的几种基本运算? 层次知识点:五个基本操作的含义和运算应用 (1)并(∪):两个关系需有相同的关系模式,并的对象是元组,由两个关系所有元组构成。 RUS≡{t| t∈R ∨t∈S} (2) 差(-):同样,两个关系有相同的模式,R和S的差是由属于R但不属于S的元组构成的集合。http://51jobs.taobao.com/独家提供,版权所有 R-S≡{t| t∈R ∧t 不属于S} (3)笛卡尔积(×):对两个关系R和S进行操作,产生的关系中元组个数为两个关系中元组个数之积。 R×S≡{t| t=< tr,ts>∧tr∈R∧ts ∈S} (4) 投影(σ):对关系进行垂直分割,消去某些列,并重新安排列的顺序。 (5) 选择(π):根据某些条件关系作水平分割,即选择符合条件的元组。 关系代数的四个组合操作 考核要求:达到“简单应用” 层次知识点:四个组合操作的含义和运算应用 (1)交(∩):R和S的交是由既属于R又属于S的元组构成的集合。 (2)联接:包括θ(算术比较符)联接和F(公式)联接。 选择R×S中满足iθ(r+j)或F条件的元组构成的集合; 概念上比较难理解,关键理解运算实例等值联接(θ为等号“=”的联接)。 (3)自然联接(RS):在R×S中,选择R和S公共属性值均相等的元组,并去掉R×S中重复的公共属性列。 如果两个关系没有公共属性,则自然联接就转化为笛卡尔积。 (4)除法(÷):首先除法的结果中元数为两个元数的差, R÷S的操作思路如下——把S看作一个块,如果R 中相同属性集中的元组有相同的块, 且除去此块后留下的相应元组均相同,那么可以得到一条元组, 所有这些 元组的集合就是除法的结果 对于上述的五个基本操作和四个组合操作,应当从实际运算方面进行理解和运用。http://51jobs.taobao.com/独家提供,版权所有 计算机网络 1)请解释一下OSI参考模型。 ★物理层(PhysicalLayer) ----提供机械、电气、功能和过程特性。如规定使用电缆和接头的类型,传送信号的电压等。在这一层,数据还没 有被组织,仅作为原始的位流或电气电压处理。 ----★数据链路层(DataLinkLayer) ----实现数据的无差错传送。它接收物理层的原始数据位流以组成帧(位组),并在网络设备之间传输。帧含有源 站点和目的站点的物理地址。 ----★网络层(NetworkLayer) ----处理网络间路由,确保数据及时传送。将数据链路层提供的帧组成数据包,包中封装有网络层包头,其中含 有逻辑地址信息——源站点和目的站点地址的网络地址。 ----★传输层(TransportLayer)提供建立、维护和取消传输连接功能,负责可靠地传输数据。 ----★会话层(SessionLayer) ----提供包括访问验证和会话管理在内的建立和维护应用之间通信的机制。如服务器验证用户登录便是由会话 层完成的。 ----★表示层(PresentationLayer) ----提供格式化的表示和转换数据服务。如数据的压缩和解压缩,加密和解密等工作都由表示层负责。 ----★应用层(ApplicationLayer)http://51jobs.taobao.com/独家提供,版权所有 ----提供网络与用户应用软件之间的接口服务。 2)请解释一下TCP/IP参考模型。(中国信保) TCP/IP参考模型分为四层:应用层(Application Layer)、传输层(Transport Layer)、网络层(Internet Layer)、链路层(Link Layer)。 TCP/IP分层 协议 OSI 分层 应用层 FTP,SMTP,Telnet,DNS,SNMP 7 传输层 TCP,UDP 4 网络层 IP, ICMP,(RIP, OSPF),ARP, RARP 3 链路层 Ethernet,Token Bus,Token Ring,FDDI,WLAN 2,1 1,应用层 该层包括所有和应用程序协同工作,利用基础网络交换应用程序专用的数据的协议。如, HTTPS(Hypertext Transfer Protocol over Secure Socket Layer, or HTTP over SSL),安全超文本传输 协议。 HTTP(Hypertext Transfer Protocol),超文本传输协议。 TELNET (Teletype over the Network, 网络电传) ,通过一个终端(terminal)登陆到网络(运行在TCP协议上)。 FTP (File Transfer Protocol, 文件 传输协议) ,由名知义(运行在TCP协议上) 。 SMTP (Simple Mail Transfer Protocol,简单邮件传输协议) ,用来发送电子邮件(运行在TCP协议上) 。 DNS (Domain Name Service,域名服务) ,用于完成地址查找,邮件转发等工作(运行在TCP和UDP协议 上) 。 NTP? (Network Time Protocol,网络时间协议) ,用于网络同步(运行在UDP协议上) 。 SNMP (Simple Network Management Protocol, 简单网络管理协议) ,用于网络信息的收集和网络管理。 2,传输层 该层提供端对端的通信。最重要的传输层协议是传输控制协议TCP。 传输控制协议TCP (Transport Control Protocol) - 数据流传输(面向连接,可靠) 用户数据报文协议UDP (User Datagram Protocol) - 数据报文传输(无连接不可靠) 3,网络层 该层负责数据转发和路由。从该层上面往下看,可以认为底下存在的是一个不可靠无连接的端对端的数据通路。 最核心的协议当然是IP协议。此外还有ICMP,RIP,OSPF,IS-IS,BGP,ARP,RARP等。 1.主机到网络层(网络接口层) TCP/IP参考模型对IP层之下未加定义,只指出主机必须通过某种协议连接到网络,才能发送IP分组。该层协议 未定义,随不同主机、不同网络而不同,因此主机到网络层又称为网络接口层。 这是T C P / I P模型的最低层,负责接收从I P层交来的I P数据报并将I P数据报通过低层物理网络发送出去, 或者从低层物理网络上接收物理帧,抽出I P数据报,交给I P层。网络接口有两种类型。第种是设备驱动程序,http://51jobs.taobao.com/独家提供,版权所有 如局域网的网络接口;第二种是含自身数据链路协议的复杂子系统。TCP/IP未定义数据链路层,是因为在TCP/ 1P最初的设计中已经使其可以使用包括以太网、令牌环网、FDDI网、ISDN和X.25在内的多种数据链路层协议。 TCP/IP可使用于多种传输介质。例如,在以太网中,TCP/IP可支持同轴电缆、双绞线和光纤。TCP/IP在x.25上 的应用可以支持微波传输或电话线路。 2.互连网络层(IP层) 互联网层的主要功能是负责相邻结点之间的数据传送。它的主要功能包括三个方面。第一,处理来自传输层的分 组发送请求:将分组装入IP数据报,填充报头,选择去往目的结点的路径,然后将数据报发往适当的网络接口。 第二,处理输入数据报:首先检查数据报的合法性,然后进行路由选择,假如该数据报已到达目的结点(本机), 则去掉报头,将IP报文的数据部分交给相应的传输层协议;假如该数据报尚未到达目的结点,则转发该数据报。 第三,处理ICMP报文:即处理网络的路由选择、流量控制和拥塞控制等问题。TCP/IP网络模型的互联网层在功 能上非常类似于O S I参考模型中的网络层。 互连网络层是网络互连的基础,提供了无连接的分组交换服务,它是对大多数分组交换网所提供服务的抽象。其 任务是允许主机将分组放到网上,让每个分组独立地到达目的地。分组到达的顺序可能不同于分组发送的顺序, 由高层协议负责对分组重新进行排序。与避免拥挤一样,分组的路径选择是本层的主要工作。 由于在IP层提供数据报服务,常将报文分组称为IP数据报 3.传输层(TCP) TCP/IP参考模型中传输层的作用与OSI参考模型中传输层的作用是一样的,即在源结点和目的结点的两个进程 实体之间提供可靠的端到端的数据传输。为保证数据传输的可靠性,传输层协议规定接收端必须发回确认,并且 假定分组丢失,必须重新发送。传输层还要解决不同应用程序的标识问题,为在一般的通用计算机中,常常是多 个应用程序同时访问互联网。为区别各个应用程序,传输层在每一个分组中增加识别信源和信宿应用程序的标 记。另外,传输层的每一个分组均附带校验和,以便接收结点检查接收到的分组的正确性。 TCP/IP模型提供了两个传输层协议:传输控制协议TCP和用户数据报协议UDP。TCP协议是一个可靠的面向连 接的传输层协议,它将某结点的数据以字节流形式无差错投递到互联网的任何一台机器上。发送方的TCP将用 户交来的字节流划分成独立的报文并交给互联网层进行发送,而接收方的TCP将接收的报文重新装配交给接收 用户。TCP同时处理有关流量控制的问题,以防止快速的发送方淹没慢速的接收方。用户数据报协议UDP是一 个不可靠的、无连接的传输层协议,UDP协议将可靠性问题交给应用程序解决。UDP协议主要面向请求/应答式 的交易型应用,一次交易往往只有一来一回两次报文交换,假如为此而建立连接和撤销连接,开销是相当大的。 这种情况下使用UDP就非常有效。另外, UDP协议也应用于那些对可靠性要求不高,但要求网络的延迟较小的 场合,如话音和视频数据的传送。IP、TCP和UDP的关系如图3-8所示。 4.应用层 TCP/IP参考模型中没有会话层与表示层。OSI模型的实践发现,大部分的应用程序不涉及这两层,故TCP/IP参 考模型不予考虑。在传输层之上就是应用层,它包含了所有高层协议。早期高层协议有虚拟终端协议(Telnet),文 件传输协议(FTP),电子邮件传输协议(SMTP)。 如上图所示,Telnet允许用户登录到远程机器并在其上工作。文件传输协议TFTP提供了有效地将数据从一台机 器传送到另一台机器的机制。早期的电子邮件仅仅是文件传送,后来为它开发了专门的协议SMTP。在应用层又 加入厂许多其他协议,如域名服务(DNS)用于将主机名映射到它们的网络地址,NNTP是用于发布新闻的协议, HTTP是用于搜索WWW上超文本的协议等等。 3)为什么现在的网络最后采用了TCP/IP参考模型而没用OSI参考模型? 1) TCP/IP一开始就考虑到多种异构网的互联问题,并将网际协议IP作为TCP/IP的重要组成部门。但ISO最初 只考虑到使用一种标准的公用数据网将各种不同的系统互联在一起。 2) TCP/IP一开始就对面向连接各无连接并重,而OSI在开始时只强调面向连接服务。http://51jobs.taobao.com/独家提供,版权所有 3) TCP/IP有较好的网络管理功能,而OSI到后来才开始这个问题,在这方面两者有所不同。 osi只是参考,一般用不到 互联网就是用的tcp/ip OSI参考模型与TCP/IP协议的比较 OSI参考模型与TCP/IP协议作为两个为了完成相同任务的协议体系结构,因此二者有比较紧密的关系,下 面我们从以下几个方面逐一比较它们之间的联系与区别。 2.1 分层结构 OSI参考模型与TCP/IP协议都采用了分层结构,都是基于独立的协议栈的概念。OSI参考模型有7层,而 TCP/IP协议只有4层,即TCP/IP协议没有了表示层和会话层,并且把数据链路层和物理层合并为网络接口层。 不过,二者的分层之间有一定的对应关系,如图3所示。 图3 TCP/IP协议分层与OSI模型对比及传递的对象 2.2 标准的特色 OSI参考模型的标准最早是由ISO和CCITT(ITU的前身)制定的,有浓厚的通信背景,因此也打上了深厚 的通信系统的特色,比如对服务质量(QoS)、差错率的保证,只考虑了面向连接的服务。并且是先定义一套功能 完整的构架,再根据该构架来发展相应的协议与系统。 TCP/IP协议产生于对Internet网络的研究与实践中,是应实际需求而产生的,再由IAB、IETF等组织标准化, 而并不是之前定义一个严谨的框架。而且TCP/IP最早是在UNIX系统中实现的,考虑了计算机网络的特点,比 较适合计算机实现和使用。 2.3 连接服务 OSI的网络层基本与TCP/IP的网际层对应,二者的功能基本相似,但是寻址方式有较大的区别。 OSI的地址空间为不固定的可变长,由选定的地址命名方式决定,最长可达160byte,可以容纳非常大的网 络,因而具有较大的成长空间。根据OSI的规定,网络上每个系统至多可以有256个通信地址。 TCP/IP网络的地址空间为固定的4byte(在目前常用的IPV4中是这样,在IPV6中将扩展到16byte)。网络 上的每一个系统至少有一个唯一的地址与之对应。 2.4 传输服务 OSI与TCP/IP的传输层都对不同的业务采取不同的传输策略。OSI定义了五个不同层次的服务:TP1, TP2,TP3,TP4,TP5。TCP/IP定义了TCP和UPD两种协议,分别具有面向连接和面向无连接的性质。其中TCP 与OSI中的TP4,UDP与OSI中的TP0在构架和功能上大体相同,只是内部细节有一些差异。 2.5 应用范围 OSI由于体系比较复杂,而且设计先于实现,有许多设计过于理想,不太方便计算机软件实现,因而完全实 现OSI参考模型的系统并不多,应用的范围有限。而TCP/IP协议最早在计算机系统中实现,在UNIX、Windows 平台中都有稳定的实现,并且提供了简单方便的编程接口(API),可以在其上开发出丰富的应用程序,因此得到 了广泛的应用。TCP/IP协议已成为目前网际互联事实上的国际标准和工业标准。 3 OSI参考模型与TCP/IP协议的发展趋势 从以上的比较可以看出,OSI参考模型和TCP/IP协议大致相似,也各具特色。虽然TCP/IP在目前的应用中 占了统治地位,在下一代网络(NGN)中也有强大的发展潜力,甚至有人提出了“Everything is IP”的预言。但 是OSI作为一个完整、严谨的体系结构,也有它的生存空间,它的设计思想在许多系统中得以借鉴,同时随着它 的逐步改进,必将得到更广泛的应用。 TCP/IP目前面临的主要问题有地址空间问题、QoS问题、安全问题等。地址问题有望随着IPV6的引入而 得到解决,QoS、安全保证也正在研究,并取得了不少的成果。因此,TCP/IP在一段时期内还将保持它强大的生命 力。 OSI的确定在于太理想化,不易适应变化与实现。因此,它在这些方面做出适当的调整,也将会迎来自己的http://51jobs.taobao.com/独家提供,版权所有 发展机会。 Oracle 1:列举几种表连接方式 hash join/merge join/nest loop(cluster join)/index join 2:不借助第三方工具,怎样查看sql的执行计划 set autot on explain plan set statement_id = &item_id for &sql; select * from table(dbms_xplan.display); 3:如何使用CBO,CBO与RULE的区别 在optimizer_mode=choose时,如果表有统计信息(分区表外),优化器将选择CBO,否则选RBO。RBO遵循简单的 分级方法学,使用15种级别要点,当接收到查询,优化器将评估使用到的要点数目, 然后选择最佳级别(最少的 数量)的执行路径来运行查询。 CBO尝试找到最低成本的访问数据的方法,为了最大的吞吐量或最快的初始响应时间,计算使用不同的执行计划 的成本,并选择成本最低的一个,关于表的数据内容的统计被用于确定执行计划。 4:如何定位重要(消耗资源多)的SQL select sql_text from v$sql where disk_reads > 1000 or (executions > 0 and buffer_gets/executions > 30000); 5:如何跟踪某个session的SQL exec dbms_system.set_sql_trace_in_session(sid,serial#,&sql_trace);http://51jobs.taobao.com/独家提供,版权所有 select sid,serial# from v$session where sid = (select sid from v$mystat where rownum = 1); exec dbms_system.set_ev(&sid,&serial#,&event_10046,&level_12,''''); 6:SQL调整最关注的是什么 查看该SQL的response time(db block gets/consistent gets/physical reads/sorts (disk)) 7:说说你对索引的认识(索引的结构、对dml影响、对查询影响、为什么提高查询性能) b-tree index/bitmap index/function index/patitional index(local/global) 索引通常能提 高select/update/delete的性能,会降低insert的速度 8:使用索引查询一定能提高查询的性能吗?为什么 索引就是为了提高查询性能而存在的, 如果在查询中索引没有提高性能, 只能说是用错了索引,或者讲是场合不 同 9:绑定变量是什么?绑定变量有什么优缺点? 绑定变量是相对文本变量来讲的,所谓文本变量是指在SQL直接书写查询条件,这样的SQL在不同条件下需要反复 解析,绑定变量是指使用变量来代替直接书写条件,查询bind value在运行时传递,然后绑定执行。优点是减少硬 解析,降低CPU的争用,节省shared_pool ;缺点是不能使用histogram,sql优化比较困难 10:如何稳定(固定)执行计划 query_rewrite_enabled = true star_transformation_enabled = true optimizer_features_enable = 9.2.0 创建并使用stored outline 11:和排序相关的内存在8i和9i分别怎样调整,临时表空间的作用是什么 8i中sort_area_size/sort_area_retained_size决定了排序所需要的内存,如果排序操作不能在 sort_area_size中完成,就会用到temp表空间;9i中如果workarea_size_policy=auto时,排序在pga内进行,通 常pga_aggregate_target的1/20可以用来进行disk sort;如果workarea_size_policy=manual时,排序需要的 内存由sort_area_size决定,在执行order by/group by/distinct/union/create index/index rebuild/minus 等操作时,如果在pga或sort_area_size中不能完成,排序将在临时表空间进行(disk sort),临时表空间主要作 用就是完成系统中的disk sort. 12:存在表T(a,b,c,d),要根据字段c排序后取第21—30条记录显示,请给出sql create table t(a number,b number,c number,d number); / begin for i in 1 .. 300 loop insert into t values(mod(i,2),i/2,dbms_random.value(1,300),i/4); end loop; end; / select * from (select c.*,rownum as rn from (select * from t order by c desc) c) where rn between 21 and 30; /http://51jobs.taobao.com/独家提供,版权所有 select * from (select * from test order by c desc) x where rownum < 30 minus select * from (select * from test order by c desc) y where rownum < 20 order by 3 desc 相比之 minus性能较差 二:数据库基本概念类 1:pctused and pctfree 表示什么含义有什么作用 pctused与pctfree控制数据块是否出现在freelist中,pctfree控制数据块中保留用于update的空间,当数 据块中的free space小于pctfree设置的空间时,该数据块从freelist中去掉,当块由于dml操作free space 大于pct_used设置的空间时,该数据库块将被添加在freelist链表中。 2:简单描述table/segment/extent/block之间的关系 table创建时,默认创建了一个data segment,每个data segment含有min extents指定的extents数,每个 extent据据表空间的存储参数分配一定数量的blocks 3:描述tablespace和datafile之间的关系 一个tablespace可以有一个或多个datafile,每个datafile只能在一个tablespace内,table中的数据,通过 hash算法分布在tablespace中的各个datafile中,tablespace是逻辑上的概念,datafile则在物理上储存了 数据库的种种对象。 4:本地管理表空间和字典管理表空间的特点,ASSM有什么特点 本地管理表空间(Locally Managed Tablespace简称LMT),8i以后出现的一种新的表空间的管理模式,通过位 图来管理表空间的空间使用。 字典管理表空间(Dictionary-Managed Tablespace简称DMT),8i以前包括以后都还可以使用的一种表空间管 理模式,通过数据字典管理表空间的空间使用。 动段空间管理(ASSM),它首次出现在Oracle920里有了ASSM,链接列表freelist被位图所取代,它是一个二进 制的数组,能够迅速有效地管理存储扩展和剩余区块(free block),因此能够改善分段存储本质,ASSM表空间 上创建的段还有另外一个称呼叫Bitmap Managed Segments(BMB 段)。 5:回滚段的作用是什么 事务回滚:当事务修改表中数据的时候,该数据修改前的值(即前影像)会存放在回滚段中,当用户回滚事务 (ROLLBACK)时,ORACLE将会利用回滚段中的数据前影像来将修改的数据恢复到原来的值。 事务恢复:当事务正在处理的时候,例程失败,回滚段的信息保存在undo表空间中,ORACLE将在下次打开数据 库时利用回滚来恢复未提交的数据。 读一致性:当一个会话正在修改数据时,其他的会话将看不到该会话未提交的修改。 当一个语句正在执行时,该语句将看不到从该语句开始执行后的未提交的修改(语句级读一致性)。 当ORACLE执行SELECT语句时,ORACLE依照当前的系统改变号(SYSTEM CHANGE NUMBER-SCN)来保证任何前于当 前SCN的未提交的改变不被该语句处理。可以想象:当一个长时间的查询正在执行时,若其他会话改变了该查询 要查询的某个数据块,ORACLE将利用回滚段的数据前影像来构造一个读一致性视图。 6:日志的作用是什么 记录数据库事务,最大限度地保证数据的一致性与安全性 重做日志文件:含对数据库所做的更改记录,这样万一出现故障可以启用数据恢复,一个数据库至少需要两个重http://51jobs.taobao.com/独家提供,版权所有 做日志文件 归档日志文件:是重做日志文件的脱机副本,这些副本可能对于从介质失败中进行恢复很必要。 7:SGA主要有那些部分,主要作用是什么 SGA:db_cache/shared_pool/large_pool/java_pool db_cache:数据库缓存(Block Buffer)对于Oracle数据库的运转和性能起着非常关键的作用,它占据Oracle数 据库SGA(系统共享内存区)的主要部分。Oracle数据库通过使用LRU算法,将最近访问的数据块存放到缓存中, 从而优化对磁盘数据的访问. shared_pool:共享池的大小对于Oracle 性能来说都是很重要的,共享池中保存数据字典高速缓冲和完全解析 或编译的的PL/SQL 块和SQL 语句及控制结构 large_pool:使用MTS配置时,因为要在SGA中分配UGA来保持用户的会话,就是用Large_pool来保持这个会话 内存,使用RMAN做备份的时候,要使用Large_pool这个内存结构来做磁盘I/O缓存器. java_pool:为java procedure预备的内存区域,如果没有使用java proc,java_pool不是必须的 8:oracle系统进程主要有哪些,作用是什么 数据写进程(dbwr):负责将更改的数据从数据库缓冲区高速缓存写入数据文件 日志写进程(lgwr):将重做日志缓冲区中的更改写入在线重做日志文件 系统监控(smon):检查数据库的一致性如有必要还会在数据库打开时启动数据库的恢复 进程监控(pmon):负责在一个Oracle进程失败时清理资源 检查点进程(chpt):负责在每当缓冲区高速缓存中的更改永久地记录在数据库中时,更新控制文件和数据文件 中的数据库状态信息。 归档进程(arcn):在每次日志切换时把已满的日志组进行备份或归档 作业调度器(cjq):负责将调度与执行系统中已定义好的job,完成一些预定义的工作. 恢复进程(reco):保证分布式事务的一致性,在分布式事务中,要么同时commit,要么同时rollback; 三:备份恢复类 1:备份如何分类 逻辑备份:exp/imp 物理备份: RMAN备份full backup/incremental backup(累积/差异) 热备份:alter tablespace begin/end backup; 冷备份:脱机备份(database shutdown) 2:归档是什么含义 关于归档日志:Oracle要将填满的在线日志文件组归档时,则要建立归档日志(archived redo log)。 其对数据库备份和恢复有下列用处: 数据库后备以及在线和归档日志文件,在操作系统和磁盘故障中可保证全部提交的事物可被恢复。 在数据库打开和正常系统使用下,如果归档日志是永久保存,在线后备可以进行和使用。 数据库可运行在两种不同方式下: NOARCHIVELOG方式或ARCHIVELOG 方式数据库在NOARCHIVELOG方式下使用时,不能进行在线日志的归档,如果 数据库在ARCHIVELOG方式下运行,可实施在线日志的归档。 3: 如果一个表在2004-08-04 10:30:00 被drop,在有完善的归档和备份的情况下,如何恢复? 手工拷贝回所有备份的数据文件http://51jobs.taobao.com/独家提供,版权所有 startup mount; alter database recover automatic until time ''2004-08-04:10:30:00''; alter database open resetlogs; 4:rman是什么,有何特点 RMAN(Recovery Manager)是DBA的一个重要工具,用于备份、还原和恢复oracle数据库, RMAN 可以用来备份 和恢复数据库文件、归档日志、控制文件、系统参数文件,也可以用来执行完全或不完全的数据库恢复。 RMAN有三种不同的用户接口:COMMAND LINE方式、GUI 方式(集成在OEM 中的备份管理器)、API 方式(用于集成 到第三方的备份软件中)。 具有如下特点: 1)功能类似物理备份,但比物理备份强大N倍; 2)可以压缩空块; 3)可以在块水平上实现增量; 4)可以把备份的输出打包成备份集,也可以按固定大小分割备份集; 5)备份与恢复的过程可以自动管理; 6)可以使用脚本(存在Recovery catalog 中) 7)可以做坏块监测 5:standby的特点 备用数据库(standby database):ORACLE推出的一种高可用性(HIGH AVAILABLE)数据库方案,在主节点与备用 节点间通过日志同步来保证数据的同步,备用节点作为主节点的备份可以实现快速切换与灾难性恢复,从920 开始,还开始支持物理与逻辑备用服务器。 9i中的三种数据保护模式分别是: 1)、MAXIMIZE PROTECTION :最大数据保护与无数据分歧,LGWR将同时传送到备用节点,在主节点事务确认之前, 备用节点也必须完全收到日志数据。如果网络不好,引起LGWR不能传送数据,将引起严重的性能问题,导致主节 点DOWN机。 2)、MAXIMIZE AVAILABILITY :无数据丢失模式,允许数据分歧,允许异步传送。正常情况下运行在最大保护模式, 在主节点与备用节点的网络断开或连接不正常时,自动切换到最大性能模式,主节点的操作还是可以继续的。在 网络不好的情况下有较大的性能影响。 3)、MAXIMIZE PERFORMANCE:这种模式应当可以说是从8i继承过来的备用服务器模式,异步传送,无数据同步检 查,可能丢失数据,但是能获得主节点的最大性能。9i在配置DATA GUARD的时候默认就是MAXIMIZE PERFORMANCE 6:对于一个要求恢复时间比较短的系统(数据库50G,每天归档5G),你如何设计备份策略 rman/每月一号 level 0 每周末/周三 level 1 其它每天level 2 四:系统管理类 1:对于一个存在系统性能的系统,说出你的诊断处理思路 1)做statspack收集系统相关信息 了解系统大致情况/确定是否存在参数设置不合适的地方/查看top 5 event/查看top sql等 2)查v$system_event/v$session_event/v$session_wait 从v$system_event开始,确定需要什么资源(db file sequential read)等 深入研究v$session_event,确定等待事件涉及的会话http://51jobs.taobao.com/独家提供,版权所有 从v$session_wait确定详细的资源争用情况(p1-p3的值:file_id/block_id/blocks等) 3)通过v$sql/v$sqltext/v$sqlarea表确定disk_reads、(buffer_gets/executions)值较大的SQL 2:列举几种诊断IO、CPU、性能状况的方法 top/vmstat statspack sql_trace/tkprof 查v$system_event/v$session_event/v$session_wait 查v$sqlarea(disk_reads或buffer_gets/executions较大的SQL) 3:对statspack有何认识 StapSpack是Oracle公司提供的一个收集数据库运行性能指标的软件包,该软件包从8i起,在9i、10g都有显 著的增强。该软件包的辅助表(存储相关参数与收集的性能指标的表)由最初的25个增长到43个。收集级别参 数由原来的3个(0、5、10)增加到5个(0、5、 6、7、10)通过分析收集的性能指标,数据库管理员可以详细地了解 数据库目前的运行情况,对数据库实例、等待事件、SQL等进行优化调整。利用 statspack收集的snapshot,可 以统计制作数据库的各种性能指标的统计趋势图表。 4:如果系统现在需要在一个很大的表上创建一个索引,你会考虑那些因素,如何做以尽量减小对应用的影响 在系统比较空闲时;nologging选项(如果有dataguard则不可以使用nologging)大的sort_ared_size或 pga_aggregate_target较大 5:对raid10 和raid5有何认识 RAID 10(或称RAID 1+0)与RAID 0+1不同,它是用硬盘驱动器先组成RAID 1阵列,然后在RAID 1阵列之间再 组成RAID 0阵列。RAID 10模式同RAID 0+1模式一样具有良好的数据传输性能,但却比RAID 0+1具有更高的 可靠性。RAID 10阵列的实际容量为M×n/2,磁盘利用率为50%。RAID 10也需要至少4个硬盘驱动器构成,因而 价格昂贵。 RAID 10的可靠性同RAID 1一样,但由于RAID 10硬盘驱动器之间有数据分割,因而数据传输性能 优良。 RAID 5与RAID 3很相似,不同之处在于RAID 5的奇偶校验信息也同数据一样被分割保存到所有的硬盘驱动器, 而不是写入一个指定的硬盘驱动器,从而消除了单个奇偶校验硬盘驱动器的瓶颈问题。RAID 5磁盘阵列的性能 比RAID 3有所提高,但仍然需要至少3块硬盘驱动器。其实际容量为M×(n-1),磁盘利用率为(n-1)/n 。 五:综合随意类 1:你最擅长的是oracle哪部分? 2:喜欢oracle吗?喜欢上论坛吗?或者偏好oracle的哪一部分? 3:随意说说你觉得oracle最有意思的部分或者最困难的部分 4:为何要选择做DBA呢?http://51jobs.taobao.com/独家提供,版权所有 5:什么是虚拟设备?为什么在操作系统中引入虚拟设备?(10分) SPOOLing是Simultaneous Peripheral Operation On-Line (即外部设备联机并行操作)的缩写,它是 关于慢速字符设备如何与计算机主机交换信息的一种技术,通常称为“假脱机技术”。 6:TCP为何采用三次握手来建立连接,若采用二次握手可以吗,请说明原因?(16分) 三次握手是为了防止已失效的连接请求再次传送到服务器端。 二次握手不可行,因为:如果由于网络不稳定,虽然客户端以前发送的连接请求以到达服务方,但服务方 的同意连接的应答未能到达客户端。则客户方要重新发送连接请求,若采用二次握手,服务方收到重传的请求连 接后,会以为是新的请求,就会发送同意连接报文,并新开进程提供服务,这样会造成服务方资源的无谓浪费。 7:什么是分布式数据库?(12分) 分布式数据库系统是在集中式数据库系统成熟技术的基础上发展起来的,但不是简单地把集中式数据 库分散地实现,它具有自己的性质和特征。集中式数据库系统的许多概念和技术,如数据独立性、数据共享和减 少冗余度、并发控制、完整性、安全性和恢复等在分布式数据库系统中都有了不同的、更加丰富的内容。 (1)数据独立性。数据独立性是数据库方法追求的主要目标之一。在集中式数据库中,数据独立性包括两方面:数 据的逻辑独立性和物理独立性。其意义在于程序和数据的逻辑结构和数据的存储结构无关。在分布式系统中,数 据库独立性除了上面所说之外,还有数据分布独立性亦称分布透明性,即用户不必关心数据的逻辑分片,不必关 心数据的物理位置分布的细节,也不必关心重复副本(冗余数据)的一致性问题。有了分布透明性,用户的应用程 序书写起来就如同数据没有分布一样。在集中式数据库中,数据的独立性是通过系统的三级模式和它们之间的 二级映象得到的。分布式数据库,分布透明性是由于引入新的模式和模式之间的映象得到的。 (2)集中与自治相结合的控制结构。数据库是供用户共享的,在集中式数据库中,为保证数据的安全性和完整性, 对数据库的控制是集中的。由数据库管理员(DBA)负责监督和维护系统的正常运行。 在分布式数据库中,数据的共享有两个层次:一是局部共享,即在局部场地上存储局部用户的共享数据。二是全 局共享,即在分布式数据库的各个场地也存储可供网络中其他场地的用户共享的数据,支持全局引用。因此,相 应的控制结构也具有两个层次:集中和自治。各局部的DBMS可以独立地管理局部数据库,具有自治的功能。同时, 系统又设有集中控制机制,协调各局部DBMS的工作,执行全局应用。 (3)适当增加数据冗余度。在集中式数据库中,尽量减少冗余度是系统目标之一。其原因是,冗余数据浪费存储空 间,而且容易造成个副本之间的不一致性。减少冗余度的目标是用数据共享来达到的。而在分布式系统中却希望 增加冗余数据,在不同的场地存储同一数据的多个副本。其原因是提高系统的可靠性和性能,当某一场地出现故 障,系统可以对另一场地上的相同副本进行操作,不会造成系统的瘫痪。系统可以根据距离选择离用户最近的数 据副本进行操作,减少通信代价。但是增加冗余会碰到集中式数据库同样的问题,即不利于更新,增加了系统维 护代价,需要在这些方面作出权衡。 (4)全局的一致性、可串行性和可恢复性。分布式数据库中各局部数据库应满足集中式数据库的一致性、可串行 性和可恢复性。除此以外,还要保证数据库的全局一致性、可串行性和可恢复性。例如,在前面提到的银行转帐事 务中,包括两个节点上的更新操作,当其中一个节点出现故障,应使全局事务回滚,在一个节点撤销已经执行的 操作等。http://51jobs.taobao.com/独家提供,版权所有 其他: 1. 简述一个Linux驱动程序的主要流程与功能。 2. 请列举一个软件中时间换空间或者空间换时间的例子。 数组成倍增长(空间换时间)。 3. 简述进程与线程的区别。 多线程共存于应用程序中是现代操作系统中的基本特征和重要标志。用过UNIX操作系统的读者知道进程,在 UNIX操作系统中,每个应用程序的执行都在操作系统内核中登记一个进程标志,操作系统根据分配的标志对应 用程序的执行进行调度和系统资源分配,但进程和线程有什么区别呢? 进程和线程都是由操作系统所体会的程序运行的基本单元,系统利用该基本单元实现系统对应用的并发性。进 程和线程的区别在于: 线程的划分尺度小于进程,使得多线程程序的并发性搞。 另外,进程在执行过程中拥有独立的内存单元,而多个线程共享内存,从而极大地提高了程序的运行效率。 线程在执行过程中与进程还是有区别的。每个独立的线程有一个程序运行的入口、顺序执行序列和程序的出口。 但是线程不能够独立执行,必须依存在应用程序中,由应用程序提供多个线程执行控制。 从逻辑角度来看,多线程的意义在于一个应用程序中,有多个执行部分可以同时执行。但操作系统并没有将多个 线程看做多个独立的应用,来实现进程的调度和管理以及资源分配。这就是进程和线程的重要区别。 进程(Process)是最初定义在Unix等多用户、多任务操作系统环境下用于表示应用程序在内存环境中基本执行 单元的概念。以Unix操作系统为例,进程是Unix操作系统环境中的基本成分、是系统资源分配的基本单位。 Unix操作系统中完成的几乎所有用户管理和资源分配等工作都是通过操作系统对应用程序进程的控制来实现 的。 C、C++、Java等语言编写的源程序经相应的编译器编译成可执行文件后,提交给计算机处理器运行。这时,处在 可执行状态中的应用程序称为进程。从用户角度来看,进程是应用程序的一个执行过程。从操作系统核心角度来 看,进程代表的是操作系统分配的内存、CPU 时间片等资源的基本单位,是为正在运行的程序提供的运行环境。 进程与应用程序的区别在于应用程序作为一个静态文件存储在计算机系统的硬盘等存储空间中,而进程则是处 于动态条件下由操作系统维护的系统资源管理实体。多任务环境下应用程序进程的主要特点包括: ●进程在执行过程中有内存单元的初始入口点,并且进程存活过程中始终拥有独立的内存地址空间; ●进程的生存期状态包括创建、就绪、运行、阻塞和死亡等类型; ●从应用程序进程在执行过程中向CPU发出的运行指令形式不同,可以将进程的状态分为用户态和核心态。处 于用户态下的进程执行的是应用程序指令、处于核心态下的应用程序进程执行的是操作系统指令。 在Unix操作系统启动过程中,系统自动创建swapper、init等系统进程,用于管理内存资源以及对用户进程进 行调度等。在Unix环境下无论是由操作系统创建的进程还要由应用程序执行创建的进程,均拥有唯一的进程标http://51jobs.taobao.com/独家提供,版权所有 识(PID)。 4. static有什么用途?(请至少说明两种) static关键字是C, C++中都存在的关键字, 它主要有三种使用方式, 其中前两种只指在C语言中使用, 第三种在C++中使用(C,C++中具体细微操作不尽相同, 本文以C++为准). (1)局部静态变量 (2)外部静态变量/函数 (3)静态数据成员/成员函数 5. 头文件中的ifndef/define/endif做什么用?条件编译 6. 请问一下程序将输出什么结果?乱码 char *RetMenory(void) { char p[] = “hellow world”; return p; } void Test(void) { char *str = NULL; str = RetMemory(); printf(str); } 7. 引用与指针有什么区别? 8. 描述实时系统的基本特性 9. 全局变量和局部变量在内存中是否有区别?如果有,是什么区别? 10. 什么是平衡二叉树? 11. 堆栈溢出一般是由什么原因导致的? 递归调用深度过深(栈) 12. 什么函数不能声明为虚函数? 一个类中将所有的成员函数都尽可能地设置为虚函数总是有益的。 设置虚函数须注意: 1:只有类的成员函数才能说明为虚函数; 2:静态成员函数不能是虚函数; 3:内联函数不能为虚函数; 4:构造函数不能是虚函数; 5:析构函数可以是虚函数,而且通常声明为虚函数。http://51jobs.taobao.com/独家提供,版权所有 13. 冒泡排序算法的时间复杂度是什么?n*n 14. #include 和 #include “filename.h” 有什么区别? 用 #include 格式来引用标准库的头文件(编译器将从标准库目录开始搜索)。 用 #include “filename.h” 格式来引用非标准库的头文件(编译器将从用户的工作目录开始搜索)。 15. 写出float x 与“零值”比较的if语句。 const float EPSINON = 0.00001; if ((x >= - EPSINON) && (x <= EPSINON) 16. 操作系统中进程调度策略有哪几种? 先来先服务 短作业优先 高优先权优先 时间片轮转 17. Internet采用哪种网络协议?该协议的主要层次结构?TCP/IP 18. Internet物理地址和IP地址转换采用什么协议?ARP RARP 19. IP地址的编码分为哪俩部分?网络号 主机号