


下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据库基本知识目录一、几种常见数据库介绍及比较二、Oracle安装及注意事项:三、数据库的基本元素四、数据库的基本维护一、几种常见数据库介绍及比较1几种常见关系性数据库:IBMDB2,ORACLE.MSSQL,SYBASE,Informix.MySQL2来自互联网方面的几种评价:MSSQL:秀才-把别人写的书看懂成为自己的东西,衣饰一般都比较考究,但是只懂一国语言,而且喜欢贬低别人。SYBASE:农夫-干活不要命,大有拼命三郎的气势,但是感觉总是差点文化涵养。养鱼,养猪都可以但是却忘了打打广告。ORACLE:将军-有大家风范,对秀才和农夫的争论不屑一顾。凡是有了战役舍我其谁。但是别忘了还有的士
2、兵也想当将军的。Informix:宰相-管你谁对谁错,反正我就是只顾一个皇帝UNIX,我的地位别人休想轻易替代。MySQL:韦小宝-我就是要在你们中间捣蛋,虽然年纪小,但是发育也很完善。大家都喜欢。3.2001年度全球数据库市场的份额:DB2占到了34.6%(受收购Informix市场份额影响),Oracle占32%、微软占16.4%、Sybase占2.6%、其他为14.4%)二、Oracle安装及注意事项:作为数据库服务器坚决不要安装金山毒霸和KV3000等防毒软件,可以使用NU20001. oracle常见版本:7.34,8.05,8l,9l,10g安装,不同版本会略有不同注要以7.34和
3、8I为例,并且在不同的操作系统上8I以后的安装和在NT/W2K上类似,在UNIX系统上安装前需要配置相应的环境变量,NT、W2K下(1)运行安装程序进行安装,7.34不能在W2K下安装,需要用第二种方式(2)导入注册表,复制相应的目录注意:如果同时在一个操作系统上同时安装7.34和8I需要现安装7.34在安装8I安装过程:略安装注意事项:安装语言选择:ENGLISHDEFAULT_HOME:DEFAULT_HOME默认8I和7.34同时安装需要修改8I的此项选项为一个其他的名字不能相同如叫8I等,8I安装后需要修改相应的注册表的字符集HKEY_LOCAL_MACHINESOFTWAREORAC
4、LE的NLS_LANG的值为:AMERICAN_AMERICA.WE8ISO8859P1,否则sql语句查询的结果为乱码。安装过程一般选择自定义安装,不要在建立相应的系统默认的数据库。2. 创建数据库7.34(实例管理器NTInstaneeManager),81(数据库助手DatabaseConfigurationAssistant)5.书写相应的参数后选择advaneed(高级)进入高级设置,选择OK进入数据库创建过程设置相应的参数后选择0K返回6. 选择0K进行创建数据库创建数据库注意事项:7.34初始化文件一定要在制定的目录下存在并且相应的文件路径一定要存在。并且初始化文件的回滚段一定要
5、注释掉,等建立晚回滚段后在放开并且重新启动数据库后生效。81可以一切都不存在,并且自动创建30个回滚段SYSTEM和RBS0-RBS28,安装完成后运行CATALOG.SQL和CATPROC.SQL进行重新创建系统的同义词和过程函数等三、数据库的基本元素表空间:相当于其他数据库的数据设备,用来存放数据库中其他存储元素如:表、索引、回滚段等常用的表空间:system(系统表空间,用于存储系统表、用户信息、过程、包、用户自定义函数、同义词、序列等,只要定义和创建将不再变化)、temp_spc(临时表空间,在进行数据查询时使用,尤其是使用子查询)、data_spc(数据表空间,用于存储用户表等数据信
6、息)、indx_spc(索引表空间,用于存储用户表索引)、rbsg_spc(回滚表空间,用于存放回滚段)可以想象为:用户数据存储的物理载体(1)仓U建表空间createtablespacetemp_spcdatafile'd:mchtdatatempmcht.odb'size100MAUTOEXTENDOFF|ON(可以依次有多个数据文件,文件名最好用1,2,3,等划分以便容易识别,中间用逗号分割)DEFAULTSTORAGE(INITIAL64KNEXT64Kpctincrease0)online;如果没有制定数据文件的扩展名将使用.ORA,81默认为.DBF注意:数据文件的
7、大小AIX系统不能大一1G,NT/2K的FAT32分区格式不能大于4G,NTFS分区不受限制。(2)为表空间增加数据文件ALTERTABLESPACEtemp_spcadddatafile'd:mchtdatatempmcht2.odb'size100Monline;建议:将表空间存放在不同的磁盘上,平衡I/O用户:数据库在使用的过程中,都要以某用户身份进行登陆,然后在进行此用户下的工作,相当于数据库管理员,拥有不同的权限:创建数据库后默认的三个用户:internal(超级用户,在用户管理中不可见)密码为建库时的密码,system密码为manager,sys用户密码为chang
8、e_onnstall,可以想象为:用户数据存储的逻辑载体(1)删除用户dropuserdbauserpszxcascade;删除用户后,属于该用户的所有数据均被删除女口:表、索引、序列、过程、函数、包等一定要注意另加小心(2)创建用户createuserdbauserpszxidentifiedbyfuturepszxDEFAULTTABLESPACEdata_spcTEMPORARYTABLESPACEtemp_spcQUOTAUNLIMITEDONsystem(oracle8以后不再用)QUOTAUNLIMITEDONtemp_spcQUOTAUNLIMITEDONrbsg_spcQUOT
9、AUNLIMITEDONdata_spcQUOTAUNLIMITEDONindx_spcQUOTAUNLIMITEDONpers_spc;(3)分配权限角色GRANTDBAtodbauserpszx;GRANTSELECTANYTABLETOdbauserpszx;GRANTINSERTANYTABLETOdbauserpszx;GRANTDELETEANYTABLETOdbauserpszx;GRANTUPDATEANYTABLETOdbauserpszx;GRANTSELECTANYSEQUENCETOdbauserpszx;GRANTCREATEUSERTOdbauserpszx;GRA
10、NTCREATEANYTABLETOdbauserpszx;GRANTCREATEANYSEQUENCETOdbauserpszx;GRANTCREATEANYINDEXTOdbauserpszx;GRANTDROPUSERTOdbauserpszx;GRANTDROPANYTABLETOdbauserpszx;GRANTDROPANYSEQUENCETOdbauserpszx;GRANTDROPANYINDEXTOdbauserpszx;GRANTGRANTANYROLETOdbauserpszx;GRANTEXECUTEANYPROCEDURETOdbauserpszx;回滚段(1) 创建
11、回滚段createpublicrollbacksegmentfpos_rs2tablespacerbsg_spcstorage(initial1Mnext1Moptimal10Mminextents2maxextents500);注意:optimal回滚断最佳的大小为减少系统资源竞争,改善系统性能一般采用多个回滚段,当多个事务并发进行时将产生多个回滚信息,系统事务对回滚段的调用是系统随机的除非特殊制定SETTRANSACTIONUSEROLLBACKSEGMENTfpos_rsl;(2) 回滚段状态(在线online,不在线offline)只有在线的回滚段段系统事务方可调用ALTERROLLB
12、ACKfpos_rslONLINE|OFLINE;修改初始化文件INITPFILE.ORA文件rollback_segments=(fpos_rs2,fpos_rs3,fpos_rs4,fpos_rs5,fpos_rs6,fpos_rs7,fpos_rs8,fpos_rs9,fpos_rs10,fpos_rs11,fpos_rs12,fpos_rs13,fpos_rs14,fpos_rs15,fpos_rs16,fpos_rsl)1. 数据库连接(DB_LINK)实现数据库的互联(1) 数据库的被连接端必须有相应的用户存在(2) 数据库的主联接端建立相应的连接对象CREATEPUBLICDAT
13、ABASELINKpszx_db.worldCONNECTTOdblinkusrIDENTIFIEDBYfuture*19990501USING'pszx_db'删除数据库连接DROPPUBLICDATABASELINKpszx_db.world;数据库连接建立之后可以对连接里的内容进行访问了SELECT*FROMSYS_GLJGFROMDBAUSETPSZX.SYS_GLJGPSZX_DB如要屏蔽访问的负杂性可以创建同义词表:数据库存放用户数据的最主要的方式(1)创建表CREATETABLEAPP_BINARY(APPCHAR(2)NOTNULL,MODULEVARCHAR2
14、(12)NOTNULL,SEQNONUMBERNOTNULL,LENGTHNUMBER,BINLONGRAW,CONSTRAINTPK_APP_BINARYPRIMARYKEY(APP,MODULE,SEQNO)TABLESPACEDATA_SPCPCTFREE10PCTUSED40INITRANS1MAXTRANS255STORAGE(INITIAL24MNEXT64KMINEXTENTS1MAXEXTENTS505PCTINCREASE0)ENABLECONSTRAINTPK_APP_BINARYUSINGINDEXPCTFREE10INITRANS2MAXTRANS255TABLESPA
15、CEINDX_SPCSTORAGE(INITIAL80KNEXT64KMINEXTENTS1MAXEXTENTS505PCTINCREASE0);说明:PCTFREE10当表的数据块的使用超过90%是自动使用下一个数据块PCTUSED40当表的数据块的使用小于40时系统不会分配新的数据块(大将会节省空间,增大insert和upate的系统消耗)INITIAL初始空间大小NEXT下一扩展空间的大小MINEXTENTS初始分配的区域数目MAXEXTENTS最大可分配的区域数目PCTINCREASE数据段每个区域大小的增大比率(2)删除表DROPTABLE表名;(3)表改名RENAME表名TO新表名
16、(也可以修改索引)(4)增加列ALTERTABLE表名ADD字段名类型);(5)删除例ALTERTABLE表名DROP字段名;7.34不能删除列,8I的初始化参数compatible=时才可删除列(6)增加主键ALTERTABLE表名ADDCONSTRAINT主键名PRIMARY(字段,);(7)分区建表(8的新功能)分区是将一个对象的数据分开存储的一种机制,减少磁盘I/O将一个较大的表中数据分成一些较小的表CREATETABLEPERSONS(NONUMBERPRIMARKKEY,NAMEVARCHAR2(20),SEXCHAR(1),BIRDAYDATE)小于NO98010时用PART1小
17、于NO98020时用PART2小于NO98030时用PART3PARTITIONBYRANGE(NO)(PARTTIONPART1VALUESLESSTHEN(98010)TABLESPACESZJ1,PARTTIONPART2VALUESLESSTHEN(98020)TABLESPACESZJ2,PARTTIONPART3VALUESLESSTHEN(98020)TABLESPACESZJ3,小于NO98030时用小于NO98030时用PARTTIONPART4VALUESLESSTHEN(MAXVALUE)PART4);查询SELECT*FROMPERSONS(PART2,PART3)WH
18、ERENOBETWEEN98015AND98025一般分区的表空间建立在不同的磁盘上(8) 常用字段数据类型CHAR最长2000BVARCHAR2(8I、91将采用VARCHAR)4000B(7.342000B)LONG变长字符2GBNUMBER(s,d)数字最长38位DATE日期BLOB二进制大集4GB(RAW丄ONGRAW将在未来版本中淘汰)ROWID物理地址类型(9) 回滚(回退)COMMIT和提交ROLLBACK:我们对数据库的操作是由事务来控制管理的,在一个事务中,应该及时对所作的操作进行提交,以方式操作无效,也可取消非法的操作数据库事务:是一个逻辑的工作单元回滚和提交到上次回滚或提
19、交点的事务操作注意事项:有一些特殊的事务是回自动提交(隐式提交),在操作的过程种一定注意:QUIT、EXIT、CREATETABLE、ALTERTABLE、DROPTABLE、CREATEVIEW、ALTERVIEW、DROPVIEW、GRANT、REVOKE、CONNECT、DISCONNECT、AUDIT(审计)、NOAUDIT.(10) 清空表:TRUNCATETABLE表名;注意事项:清空表的操作不能回滚,所要清空的表不能被其他事务锁定,不能清空试图和同义词,清空表不触发触发器。2. 索引,为增加查询的速度,会影响数据的更新负荷(要适度的建立索引)创建索引CREATEINDEXINDE
20、X_JXC_COM_DAY_TRANSIDONJXC_COM_DAY(TRANS_ID)TABLESPACEINDX_SPCPCTFREE10INITRANS2MAXTRANS255STORAGE(INITIAL20MNEXT5MMINEXTENTS1MAXEXTENTS505PCTINCREASE0);创建索引PARALLEL(DEGREE5)并行的5个进程共同创建索引(不使用于创建主健)NOLOGGING参数可选Oracle8l支持函数索引Oracle8I支持联机索引online参数创建索引(因为创建索引时表自动加锁不允许更新而使用ONLINE参数则可以联机创建索引了)(1) 查询中使用索
21、引,oracle自动分析语句使用最佳的索引,主要依据sql查询语句的WHERE条件,也可强制使用索引如:select-+INDEX(IDX_JMD_MFDATE)也可/*+INDEX(IDX_JMD_MFDATE)*/JMDMFIDGZ,ROUND(SUM(JCHSJJJE),2)HSJE,ROUND(SUM(JCBHSJJJE),2)BHSJEFROMJXCMFRAMEDAYWHEREJMDWMIDIN('1','2','3')ANDJMDDATE=TO_DATE('HSJSRQ','YYYYMMDD')GROU
22、PBYJMDMFID具体的查询语句用PL/SQL的EXPLANPLANWINDOW进行查询索引的使用情况,大数据量的表一定注意索引的使用情况强制使用索引时尽量使用/*+INDEX(JXCMFRAMEDAYIDX_JMD_MFDATE)*/避免所选择的语句被注释并且多表联立(或通过同义词访问)时尽量强制使用索引多个表的索引使用格式/*+INDEX(表1索引1)INDEX(表2索引2)*/(2) 分区局部索引CREATEINDEXPERSONS_NOONPERSONS(NO)LOCAL(PARTIONPART1TABLESPACESZJ1,PARTIONPART2TABLESPACESZJ2,PA
23、RTIONPART3TABLESPACESZJ3,PARTIONPART4TABLESPACESZJ4);分区全局索引CREATEINDEXPERSONS_NOONPERSONS(NO)GLOBALPARTIONBYRANGE(NO)(PARTIONPART1VALUESLESSTHEN(98010)TABLESPACESZJ_INDEX1,PARTIONPART2VALUESLESSTHEN(98020)TABLESPACESZJ_INDEX2,PARTIONPART3VALUESLESSTHEN(98030)TABLESPACESZJ_INDEX3,PARTIONPART4VALUESLE
24、SSTHEN(MAXVALUE)TABLESPACESZJ_INDEX4);(3) 创建索引注意事项:索引的表不能被其他事务锁定,8I支持ORACLE系统函数的结果当成字段进行索引。7.34不支持3. 视图:是包含一个或多个表(视图)中数据的简化描述执行一个查询结果,并将它看成一个表(虚拟表)例:CREATEVIEWSYS_GZASSelectCODE,NAME,SJCODE,ISSPB,ISWSFB,FLAG,TYPE,GDFL,BDFL,JHLRL,JHZZTS,YYMJ,SEQNO,STATUS,ISZG,ZGGYS,GYSSEQ,SYSREG,SUBJECT,ISXH,ISCS,ISM
25、GYSFROMsys_gljgWHEREflag='Y'ANDfgljgjcbm(code,1)=fgetmc;Oracle8I支持实例化视图CREATEMATERIALIZEDVIEW*TABLESPACEDATA_SPCPCTFREE10INITRANS2MAXTRANS255STORAGE(INITIAL20MNEXT5MMINEXTENTS1MAXEXTENTS505PCTINCREASE0);materializedview还需要另外的写盘时间同义词:减少不同用户间数据访问的复杂性,增加远程分布数据的透明度和安全层没有创建同义词时FUTUREPOS用户在对DBAUSE
26、RMCHT用户中的表SYS_GLJG进行访问的时候SELECT*FROMDBAUSERMCHT.SYS_GLJG;建立同义词之后可以自由访问CREATE【PUBLIC】SYNONYMPSZX_SYS_GLJGFORSYS_GIJGPSZX_DBWORID;创建了一个全局同义词。那些可以建立同义词:表,视图,序列,过程,函数,建立了数据库链接之后的以上内容均可序列:多用户产生的唯一整数的数据库对象,用户可用序列自动产生主关键字的值。CREATESEQUENCESEQ_JXC_COM_DAY序列名称INCREMENTBY1步长MINVALUE1最小值NOCYCLE没有周期CACHE20高速缓存OR
27、DER;序列的访问selectseq_jxc_com_day.nextvalintol_jxcseqfromdual;语句运行后自动加一seq_jxc_com_day.CURRVAL返回刚才的值不加1自定义函数,编译后可想ORACLE自己的函数一样使用,函数必须有返回值,函数不能更新数据表的内容例:CREATEORREPLACEFUNCTIONfONull(n1INNUMBER)RETURNNumberASBEGINIFn1=0THENReturnNULL;ELSEReturnn1;ENDIF;END;/过程:用来完成用户一系列的操作,过程可以调用其他的过程、函数、包等。CREATEORREP
28、LACEPROCEDUREsp_cmd_com_sc(v_codeinchar)ASlbzchar(1);lnnumber;BEGIN-调用删除编码过程deletefromqt_commodwherecode=v_code;commit;-是否日终处理命令SELECTRTRIM(LTRIM(VALUE)INTOlbzFROMsys_paraWHEREcode='29'iflbz='Y'thenbeginselectseqnointolnfrompszx_command_rzwherecomm='SCCOM'andpara=""
29、|v_code|""exceptionwhenno_data_foundthenINSERTINTOpszx_command_rzVALUES(seq_pszx_command_rz.NEXTVAL,SYSDATE,'SCCOM',”|v_code”');commit;return;end;endif;sp_scspbm(v_code);commit;EXCEPTIONWHENOTHERSTHENsp_ht_error('r','sp_cmd_com_sc',v_code,sqlcode,sqlerrm);raise;
30、ENDsp_cmd_com_sc;/12包:数据库中的实体,包含一系列的公共常量、变量、数据类型、光标(游标)过程及函数的定义,具有模块化的优点,包包括:包头和包体13.JOB:为系统设定定时执行的过程建立JOBvariablejobnonumber;BEGINdbms_job.submit(:jobno,'sp_pszx_rz_job;',TRUNC(sysdate)+1.21,'TRUNC(SYSDATE+1)+0.21');END;/printjobno;/手工执行JOB:EXECUTEDBMS_JOB.RUN(JOB号);删除JOB:EXECUTEDBM
31、S_JOB.REMOVE(JOB号);查询JOB号及其实行情况SELECT*FROMUSER_JOBS;当自动执行的作业错误超过16次,系统将该作业标记为坏,14触发器:是一一个PL/SQL过程,与一个表相关联,当向一个表发出SQL语句满足某一触发器的触发条件时,系统便自动执行触发器的触发体。一个表可以有多个触发器建立触发器:CREATEORREPLACETRIGGER<触发器名>触发条件触发体CREATEORREPLACETRIGGERdelete_commod_xstm1afterdeleteoncommod_xstm1foreachrowbegindeletefromqt_c
32、ommodwherecode=:old.xstmanddptm=:old.dptm;deletefromcommod_xstm2wherexstm=:old.xstm;end;/(1)触发时间BEFORE、AFTER(2)触发事件INSERT、UPDATE、DELETE(3)触发子类型行触发(ROW)和语句触发(STATEMENT),行触发的UPDATE触发器可以指定更新的字段,当对制定的字段进行更新时触发该触发器,例:CREATEORREPLACETRIGGER"UPDATE_COMMOD_XSTM1"AFTERUPDATEOF"DPTM","
33、;GZ","HL"ON"DBAUSERMCHT"."COMMOD_XSTM1"REFERENCINGOLDASOLDNEWASNEWFOREACHROWdeclarevcodevarchar2(13);vdzxlvarchar2(15);vppvarchar2(15);vppnamevarchar2(30);begin过程体end;/(4) 触发器关键值有两个关键值分别对应被触发行中的老表值和新表值用OLD和NEW来表示,insert老表值为NULL,delete新表值为NULL,只有update才同时存在新老表值。15游标
34、:大型数据库没有记录的的概念,要想实现对符合条件的指定数量的数据记录进行操作,需要用到游标CREATEORREPLACEPROCEDUREsp_cwzzpz_rowno(V_FTransIDINvarchar2)ASCURSORcur_cwzz_fnumISSELECTdistinetfnumFROMCWZZ_pzWHEREFTranslD=V_FTransIDorderbyfnum;CURSORcur_cwzz(V_FNUMvarchar2)ISSELECT*FROMCWZZ_PZWHEREFTranslD=V_FTransIDandFnum=V_FNUMorderbyfdcdesc,fac
35、ctid,fobjid1forupdate;Irowinteger;Ifnuminteger;row_cwzzcwzz_pz%rowtype;BEGINOPENcur_cwzz_fnum;LOOPFETCHcur_cwzz_fnumINTOIfnum;EXITWHENcur_cwzz_fnum%NOTFOUNDORcur_cwzz_fnum%NOTFOUNDISNULL;lrow:=0;OPENcur_cwzz(lfnum);LOOPFETCHcur_cwzzINTOrow_cwzz;EXITWHENcur_cwzz%NOTFOUNDORcur_cwzz%NOTFOUNDISNULL;upda
36、tecwzz_pzsetFENTRYID=lrowwherecurrentofcur_cwzz;lrow:=lrow+1;ENDLOOP;closecur_cwzz;ENDLOOP;closecur_cwzz_fnum;COMMIT;END;/四、数据库的基本维护是SGA(系统全局区):是一个分配给oracle的包含一个oracle实例的数据库的控制信息的内存断,它主要包括:数据库高速缓存、重演日志缓存、共享池、数据字典缓存等SGA=(db_block_buffers*blocksize)+(shared_pool_size+large_pool_size+java_pool_size+log
37、_buffers)+1MB理论上SGA可占OS系统物理内存的1/21/3,我们可以根据需求调整我推荐SGA=0.45*(OSRAM)假设服务器运行ORACLB1.X版本,OS系统内存为2GMEM,db_block_size是8192bytes,除了运行ORACLED据库外,没有其它的应用程序或服务器软件.这样SGA合计约为921M(0.45*2048M),设shared_pool_size250M(250*1024*1024bytes)设databasebuffercache620M(79360*8192bytes)log_buffer=524288large_pool_size=314572
38、8030Mjava_pool_size=2097152020Msort_area_size=524288512k(65k-2M)sort_area_retained_size=524288MTS时sort_area_retained_size=sort_area_size1. 初始化参数的说明db_name="hdqt_db"数据库的名字instance_name=hdqt实例名service_names=hdqt_db服务名db_files=1024数据库文件的最大允许数目control_files=("d:hdqtctrlfilecontrol01.ctl&q
39、uot;,"d:hdqtctrlfilecontrol02.ctl","d:hdqtctrlfilecontrol03.ctl")控制文件存放路径从oracle8开始,控制文件还存储数据库恢复信息。open_cursors=100(1)打开光标数(2)这个参数可以同时被每个用户进程拥有,这个参数的最大值依操作系统不同而不同。(3)在创建一个包含很多表的合成视图时,如果此参数很小,则视图创建会不成功。max_enabled_roles=30最大允许的角色数db_file_multiblock_read_count=8数据文件每次读取的块数db_block_
40、buffers=3000(1)数据高速缓冲区(2)访问过的数据都放在这一片内存区域,该参数越大,Oracle在内存中找到相同数据的可能性就越大,也即加快了查询速度。(3)db_block_buffers以块为单位,假如DB_BL0CK_SIZE=2K,db_block_buffers=3200,则占用内存=3200*2K=6400K。(4)该参数越大越好但不要超过系统内存的一半以下的语句用于查询数据缓冲区的命中率(0-1)1是最理想的至少要在0.95以上,如较低应该增加数据缓冲区的大小SELECTROUND(1-(SUM(DECODE(NAME'physicalreads',v
41、alue,0)/(sum(decode(NAME,'dbblockgets',value,0)+sum(decode(name,'consistentget',value,0),2)fromv$sysstatshared_pool_size=8780992(1)SQL共享缓冲池(2)该参数是库高速缓存和数据字典的高速缓存。(3)该参数设置的太小回严重影响数据库的性能,出现无效的单元被调用提示(4)单位为字节,大小不要超过系统内存的一半。large_pool_size=614400大池分配堆的大小java_pool_size=0log_checkpoint_int
42、erval=10000log_checkpoint_timeout=1800processes=50同时连接的进程数,并发连接到ORACLE上操作系统进程的的最大数量最大值4322parallel_max_servers=5用户事例的查询服务器的最大数量log_buffer=32768重演日志缓冲区(128K*CPU个数)db_domain=:指明数据库的域名(默认的是WORLD),这里可以用您公司的域名。global_names=true如果"数据库链路名”和它所要连接的"数据库”拥有相同的名字,则设置global_names=TRUE,否则,设置global_names
43、=FALSE,设置成true时据库名:db_name+"."+db_domainoracle_trace_collection_name=""user_dump_dest=d:hdqtudump服务器跟踪日志文件存放路径db_block_size=8192(1)数据库块大小(2)Oracle默认块为2KB,太小了,因为如果我们有一个8KB的数据,则2KB块的数据库要读4次盘,才能读完,而8KB块的数据库只要1次就读完了,大大减少了I/O操作。(3)数据库安装完成后,就不能再改变db_block_size的值了,只能重新建立数据库并且建库时,要选择手工安装
44、数据库。remote_login_passwordfile=exclusive密码文件的检查方式:none:导致好像oracle的密码文件不存在,即不安全的连接,不允许授权的连接,该选项为默认值。Exclusive:密码文件只用于一个数据库Shared:密码文件用于多个数据库os_authent_prefix=""外部身份验证distributed_transactions=10数据库服务版本(要创建函数索引该参数参数必须选中)Query_rewrite_enabled=true(要创建函数索引该参数参数必须选中)Query_rewrite_integrity=truste
45、d(要创建函数索引该参数参数必须选中)sort_area_size=65536排序区,当创建已经有数据的表的索引时必须使用排序空间,在专用服务器环境中,由SORT_AREA_SIZE参数决定的排序区域是进程全局区ProcessGlobalArea(PGA)内UGA的一部分。在一个共享的服务器环境中,排序区域位于共享池内sort_area_retained_size=65536参数决定排序区域最终缩小到的大小,以便将内存释放回Oracle服务器处理的用户全局区(UserGlobalArea,UGA)。如果排序区域太小以至于满足不了排序操作要求,那么数据就会被分成更小的块,叫做排序分段(sortr
46、uns),并且被存储在位于硬盘上的临时排序段中。这种折衷办法会影响硬盘的整体I/Ojob_queue_processes=7数据库实例中作业队列进程的数量,系统缺省值为0,正常定义范围为036,根据任务的多少,可以配置不同的数值job_queue_interval=60单位:秒定义系统每隔N秒唤醒该进程一次。系统缺省值为60秒,正常范围为13600秒。事实上,该进程执行完当前任务后,就进入睡眠状态,睡眠一段时间后,由系统的总控负责将其唤醒。open_links同时打开的链接数dml_locks(1)用户一次可对表设定锁的最大数目2) 如果有三个用户修改6个表,则需18个DML锁来实现并行操作,
47、如果设定DML_LOCKS不够大,操作时执行将中断,你可以通过你的应用程序的操作规模和最大的并行使用的用户数来估算系统所需要的DML_LOCKS的值,但该值的大小对数据库的其他性能没有影响,所以一般都把它设得很大,远超过实际中可能达到的值,如果在系统运行中经常发生表锁死的现象,就应该考虑加大该值。dbwr_io_slaves后台写进程数log_archive_start=true开启自动归档数据库的手工启动7.34运行程序SVRMGR23,8I运行SVRMGRLSQL>CONNECTINTERNAL/*MCHT_DB;ORACLE9i用sqlplus连接CONNECT/ASSYSDBA;
48、SQL>STARTUPPFILE=D:MCHTPFILEINITMCHT.ORAOPEN前提条件:在系统的服务中相应的数据库的实例一定要启动,服务不一定启动。启动的过程中会有数据库启动的相应的提示,如果数据库在启动的过程中存在启动不起来的情况也会有相应的提示,口:日志文件错误、数据文件错误、参数配置错误、控制文件错误等由于系统参数配置、数据库日志文件损坏、控制文件损坏、数据库数据文件损坏等原因造成的数据库不能启动需要用手工启动的方式进行启动数据库,查看出错的原因并修复。2. 数据备份方式(1)导出备份,将数据库中的内容全部导出来形成数据文件进行工作站备份可以查看帮助EXP73HELP=Y
49、EXP73(EXP)DBAUSERMCHT/FUTUREMCHTMCHT_DBFULL=Y|NBUFFERS=10000OWNER=DBAUSERMCHTFILE=MCHT.DMPTABLES=表名ROW=Y|NLOG=MCHT丄0G导入IMP73(IMP)可以查看帮助IMP73HELP=YIMP73(IMP)DBAUSERMCHT/FUTUREMCHTMCHT_DBFULL=Y|NBUFFERS=10000FROMUSER=用户名TOUSER=用户名FILE=MCHT.DMPTABLES=表名ROW=Y|NLOG=MCHT.LOGIGNORE=Y|NCONSISTENT=Y(默认N)按一致方
50、式导出(不能在增量导出中使用)INCTYPE导出类型INCREMENTAL(增量)CUMULATIVE(积累)COMPLETE(完全)不能导出包含LOBBFILEREF,但是oracle8l已经支持了)直接路径大大提高导出速度Filesize(8I新下特性)=2G规定导出文件的大小(2)停止服务后,将数据库的整个目录进行复制备份停止启动备份的过程可以写一个批处理BF.CMDc:winntsystem32netstoporacleservicemcht/yc:winntsystem32netstoporacleservicemcqt/yc:winntsystem32netstoporacleTN
51、SlistenerXcopyd:pszxd:backuppszx/SNXcopyd:mchtd:backupmcht/S/VXcopyd:mcqtd:backupmcqt/S/Vrem磁带备份REMc:winntsystem32ntbackup.exebackupd:pszxd:mchtd:mcqt/d"BACKUP"/hc:on/tcopy/l"c:logbackup.log"/tape:0c:winntsystem32netstartoracleTNSlistenerc:winntsystem32netstartoraclestartmcqtc:wi
52、nntsystem32netstartoraclestartmchtat03:00/interactive/every:M,T,W,Th,F,S,Sud:bfbf.cmd在每天的凌晨3点执行bf.cmd中的备份内容atid/delete删除计划调度队列中的指定的事务NT需要启动SCHEDUCLE计划任务调度服务。W2K不需要,NT下的AT命令所执行的批处理文件中不能访问网络盘,W2K下可以。3. 过程加密ORACLE提供数据加密技术,能够对用户的自定义函数、过程、包的原始数据文件进行加密处理,从而有效的保证软件的版权,但是不能对触发器进行加密,已经加密的文件不能解密WRAP23(WRAP)IN
53、AME=输入的文件名.SQLONAME=输出的文件名.BSQ用输出的文件名.BSQ文件中的语句所建立的过程、包、函数等在数据库中均是加密的。4. 数据库的侦听(Listener.oraj)和网络连接配置文件(Tnsnamesor0)侦听:安装数据库实例的服务器上必须配置侦听数据库安装目录下的NETWORKADMINListener.ora提供对外服务的数据库接口,内容如下:LISTENER=(ADDRESS_LIST=(ADDRESS=(COMMUNITY=TCP.world)(Host=192.168.0.2)(PROTOCOL=TCP)(Port=1521)(ADDRESS=(COMMUN
54、ITY=TCP.world)(Host=192.168.0.2)(PROTOCOL=TCP)(Port=1526)STARTUP_WAIT_TIME_LISTENER=0CONNECT_TIMEOUT_LISTENER=10TRACE_LEVEL_LISTENER=OFFSID_LIST_LISTENER=(SID_LIST=(SID_DESC=(SID_NAME=PSZX)(SID_DESC=(SID_NAME=MCHT)#PASSWORDS_LISTENER=(oracle)7.34只能有一个侦听,8I可以有多个侦听,服务器每增加一个数据库都需要手工修改配置将数据库的内容填入,并重新启动侦
55、听服务。Host(主机地址)可以为主机的名字,也可以为IP地址,特殊的IP:也可,一般W2K在没用连通网络的时候不能获得本级制定的IP地址(NT没有此问题)它会造成侦听不能启动,数据库不能进行正常的访问。一般在数据库安装完成之后系统会自动创建侦听服务,如果是W2K没有进行安装直接导入的注册表可运行ORACLE安装目录下的BIN目录下的LSNRCTL.EXE文件后运行START回车后自动建立并启动侦听服务,如果侦听服务已经存在,它会启动该服务。网络连接配置文件:用户工作站要访问指定地址的ORACLE数据库服务器需要配置相应的配置文件,可通过ORACLE本身的配置工具也可通过直接修改配置文件的办法
56、,内容:pszx_db.world=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(COMMUNITY=tcp.world)(PROTOCOL=TCP)(Host=192.168.0.2)(Port=1521)(ADDRESS=(COMMUNITY=tcp.world)(PROTOCOL=TCP)(Host=192.168.0.2)(Port=1526)(CONNECT_DATA=(SID=pszx)检查连接的命令TNSPINGPSZX_DB相应的每天启动的日志信息存放在数据库系统的安装目录下的NETWORK'LOG目录下的listener.log和sqlne
57、t.log文件记载,它会随着时间的增加而增长,注意删除,以保留可用空间6.数据库典型数据维护方案数据文件改名(当然包括日值文件的改名)SVRMGR>connectinternalSVRMGR>shartupmountORCL;SVRMGR>alterdatabaserenamefile'e:test.dbfto'd:test.dbf;注意:一定要加单引号Alterdatabaserenamefiledld_file_name1',old_file_name2'tonew_file_name1new_file_name2'(这是同时修改多
58、个数据文件的标准格式,修改完成之后再打开数据库alterdatabaseopen;)查看数据文件状态SQL>selectfile_name,file_id,tablespace_name,bytes,statusfromdba_data_files;1) ORACLE表空间恢复方案Selectfile#,online,errorfromv$recover_file查找需要恢复的文件IDSelectname,file#fromv$datafile;根据相应的ID查找相应的文件名RECOVERDATABASE执行整个数据库恢复RECOVERDATAFILE执行特定数据文件恢复RECOVERTABLESPACE表空间名恢复指定表空间在SVRMGRL中前面不用ALTERDATABASE而在sql/pus中用临时表空间并不包含真正的数据,将该表空间置为OFFLINE后删掉重建即可(1)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 肇庆市实验中学高中生物一:生物膜的流动镶嵌模型习题课
- 2025至2031年中国绢花工艺品行业投资前景及策略咨询研究报告
- 新疆体育职业技术学院《西方艺术里的故事》2023-2024学年第一学期期末试卷
- 2025年中国聚氨酯胶粘鞋料市场调查研究报告
- 新疆艺术学院《音乐基础常识》2023-2024学年第二学期期末试卷
- 信阳职业技术学院《即兴思维与口语表达》2023-2024学年第二学期期末试卷
- 甘肃省平凉市2024年中考数学五模试卷含解析
- 广东省佛山市顺德区市级名校2024届中考数学考前最后一卷含解析
- 2025年员工三级安全培训考试试题含完整答案【典优】
- 2025工厂员工安全培训考试试题附答案(巩固)
- 人工智能在情绪调节与积极心理学中的应用-全面剖析
- 汽车冷却系统课件
- 防脱洗发水培训课件
- 2025春季学期国开电大专科《管理学基础》一平台在线形考(形考任务一至四)试题及答案
- 舟山西堠门大桥mmm课件
- 2024年四川省绵阳市中考化学试题(含答案解析)
- 2025年中考语文复习阅读专题 名著勾连整合及综合训练 课件
- 学校德育工作手册(组织机构、职责、流程、制度、要求)
- 铁路沿线危树清理施工方案
- 2025年大学校园防诈知识竞赛题库200题(含答案)
- 《新能源乘用车二手车鉴定评估技术规范 第1部分:纯电动》
评论
0/150
提交评论