数据库程序员面试分类真题29.docx
数据库程序员面试分类真题29简答题1. 你接触过哪些OS系统?常用命令有哪些?正确答案:首先,对于OraCIe数据库而言,常用的系统是1.inUX、AIX、Windows、HP-UX等,对于MySQ(江南博哥)1.常用的系统是1.inUX系统,对于SQ1.SerVer常用的系统是Windows系统。IT人员对Windows系统都很熟悉,需要重点学习的是Windows下的服务和注册表,希望读者可以查找相关资料对WindOWS下的服务和注册表进行深入的学习。需要注意的是,IMN键+R键可以打开运行框,输入SerViCeS.msc即可打开Windows的服务。对于1.inUX和AlX系统,需要了解几个常用的命令,见下衣。命令描述1.inuxIX查看CPu利用率toptopas/nmon查看内存的使用率vmstat/freevmstat查看磁盘的使用率df-hdf-g查看进程ps-efps-ef1.inuxItoP截图如卜图所示。1.VjAaA7*9wpm.«W4B.WS于0,rasks:16?tot<1,1rtrt»n1«w,161sleeping,0stopped,02abf:pu($):l.nus.2.7Xsy.0.%n1.87.!<d.8.8¼wa.O.OMH10.l%si.0.0%St,ew;1261200ktotal,1108776kused.152424kfree,172408kbuffersSWatK4104596ktotal,Okused.4104596kfree.671992kcachedPIDUSERPRNXVIRTRESSHRS%CPU127!610»720R2.00.1150103486M576S0.00.1RT-S00050.00.03419000S0.00.0RT-5000S0.00.0190000.00.0RT-50000.00.034190000.00.0RT50000.00.00:00.920:00.090:00.000:00.080:00.000:00.060:00.000:00.0700“IgrdtionZOksoftirqd/Oigraionlksoftfrqd/1Odgrat<on2ksoft<rqd2aigrtfo113ksftird3AIX下输入topas可以看到:EVtHTSzQVcswftcnEe£5l1.ETrIe*1.A)2514:15:442016T11trval:?0906RPAdCh351.OKIt11dtSyscallReads1291VWrStXhUi7ftCPUKKer11xWi%dc%Pnysc194RJw1n0TotalT7.00.18S.80.2424.14writesMTtyOUI497FOrk35igct5nw10NetworkBP5T-PktO-Pktsn-x11B-OutlFxecs6554rrmfl1.On6*26.31K4V94Runquu9waitqee8.95Dfrblk00.0MEMORYmjsy%BPSTPSdB-wrtTOtdTC*CaaO3119KPAGIMSReal,mb368(*4FmI【s32,%Coop46JlIIET*2_-7ESlfl5teaB0XNoncornpSClient7020.*I*j18.8.Pgspin0Pgspt0NA,11CPIOCPV%PqspO11erPageIn4PAGISCSPACEor<age11tjava851*9?5898292.01.357.IM1.07MoraclerootPaqcouiSfOS48sfze.N%usedS1921orarOOia35586OSO1.2n.8Mt%Pree99ccssd.bi369614900.S91.8MgridNFS(call5sec)ItOP<15108790960.35.60HrootServi0ACtIv0Oraagenx37159(XM0.371.OMgridCHV20paoTotal0crsd.b<n3M321O0.253.4XrootServ30press:'If,-hw"orac¼2OOM1O80.218.2MgridCllva0pquitoracle142869720.218.IMoracleserv40Oracle185468040.2183MoracleCliV40ocxnd.b316539420.217.OMrootOrJCI9391252380:218.3MO.)有关OS的内容,面试官通常不会问得很深入,求职者基本上能够了解CPU、内存还有I/O的查看命令就可以了,虽然简单的了解可以应付求职,但工作中还远远不足,需要深入地理解和掌握。考点OS2. 1.inUX下的常用设备有哪些?正确答案:1.inux是文件型系统,所有硬件和软件一样都会在时应的目录下面有相应的文件衣示,一般保存在dev目录下,即对于dev这个目录下面的文件,衣示的都是1.inux的设备。通过这种方式,直接读文件、写文件就可以向设备发送读或者写操作了。按照读写存储数据方式,可以把设备分为以下几种:字符设备、块设备和伪设备。1)字符设备是指每次与系统传输1个字符的设备。这些设备节点通常为传真、虚拟终端和串口调制解调器、键盘之类设备提供流通信服务,它通常不支持随机存取数据。字符设备在实现时,大多不使用缓存器。系统直接从设备读取或写入每一个字符:裸设备是一种没有经过格式化,不被UniX/1.inux通过文件系统来读取的特殊字符设备。2)块设备是指与系统间用块的方式移动数据的设备。这些设备节点通常代表可寻址设备,如硬盘、CDROM和内存区域。块设备通常支持随机存取和寻址,并使用缓存器。操作系统为输入输出分配了缓存以存储一块数据。当程序向设备发送了读取或者写入数据的请求时,系统把数据中的每一个字符存储在适当的缓存中。当缓存被填满时,会采取适当的操作(把数据传走),而后系统清空缓存。它与字符设备不同之处就是,是否支持随机存储.字符型是流形式,逐一存储。3)在类UniX操作系统中,设备节点并不一定要对应物理设备。没有这种对应关系的设备是伪设备。操作系统使用伪设备提供了多种功能。经常使用到的伪设备包括devnul1、/dev/zerodevfull>devloop,devrandon>devurandonixdevstdin-./dev/stdoul、devstderr,devfd%devupd和devtcp等。这些设备在1.inUX的SHE1.1.命令里有特殊的作用。devstdin指的是健盘设备;devstdout指向标准输出,因此重定向给它的数据,最终发送到屏幕上(fdD:devstderr指向错误输出,默认也是输出到屏幕上面,但是它的内容不能通过管道传递给grep,管道只能传递标准输出。例如,cat>teststdin<devstdindevnull是个黑洞设备,它丢弃写入其中的一切数据,空设备通常被用于丢弃不需要的输出流,任何写入该设备数据都会被丢弃掉,从这个里面读取数据返回是空。例如,cattest.sh>devnullodcvzer。是一个特殊的文件,当读它的时候,它会提供无限的空字符(NU1.1.SCIINU1.1.0x00)。其中的一个典型用法是用它提供的字符流来覆盖信息,另一个常见用法是产生一个特定大小的空白文件。例如,ddif=dcvzeroof=testzerocount=1024bs=1024odcvfull(常满设备)是一个特殊设备文件,总是在向其写入时返回设备无剩余空间(错误码为ENOSPe),读取时则与devzero相似,返回无限的空字符(U1.1.、ASCIINU1.1.、0x00)o这个设备通常被用来测试程序在遇到磁盘无剩余空间错误时的行为。例如,echo,chengmo>>devful1devrandom是一个特殊的设备文件,可以用作随机数发生器或伪随机数发生器。它允许程序访问来自设备驱动程序或其他来源的背景噪声。devfd记录用户打开的文件描述符。devtcpudphostPort读取该类形式设备,将会创建一个连接host主机port端口的tcpupd连接。dcvloop循环设备可以把loop文件作为块设备挂载使用。例如,mount-0loopexample,inghomechengmoimg.考点1.inux中的设备3. 1.inux中loop设备的作用是什么?正确答案:在进行某些测试的时候,往往需要新建一些磁盘分区或者设备等,此时对硬盘进行重新划分往往不太方便。在这种情况下,可以通过1。P伪设备来实现循环挂载,从而达到目的。在使用之前,循环设备必须与现存文件系统上的文件相关联。这种关联将提供给用户一个应用程序接口,接口将允许文件视为块特殊文件使用。因此,如果文件中包含一个完整的文件系统,那么这个文件就能如同磁盘设备一般被挂载。这种设备文件经常被用于光盘或者磁盘镜像。通过循环挂载来挂载包含文件系统的文件,以便使处在这个文件系统中的文件得到访问。这些文件将出现在挂载点目录下。在1.inUX中,设备名按照相应设备驱动程序的符号表项进行命名,】。P设备节点通常命名为/dev/loopO、devloopl之类。默认情况F1.inux支持的loop设备是8个。如果需要超过8个的100P设备,那么可能会遇到类似“nosuchdevice”或wcouldnotfindanyfreeloopdevice”的错误,这是因为超过了可用