《Oracle日常管理基础知识.ppt》由会员分享,可在线阅读,更多相关《Oracle日常管理基础知识.ppt(52页珍藏版)》请在三一办公上搜索。
1、Oracle日常管理基础知识,主要内容,Oracle的名称解析和侦听器Oracle的数据exp/impOracle一些简单的SQL语句和结果的保存Oracle一些数据字典的说明Oracle的物理结构和逻辑结构的关系Oracle相关对象的维护,Oracle Net,Oracle的名称解析和侦听器,listener.ora,Listener,Client,Server,tnsnames.ora,sqlnet.ora,Server端的配置:listener.ora,目录:/in/oracle/network/admin/listener.ora组成部分:Listener name:mobin_SEF
2、 Port:1526slee 1527smf Protocol:TCP SID_NAME:S14G00 Host:mobin_net8,Slee侧的listener.ora,Smf侧的listener.ora,侦听器的启动和关闭,默认情况下,smf侧的侦听器是start状态,而slee侧的侦听器是stop状态有时候在smf上面创建到slee的datalink的时候,或者从本地连接slee侧的DB,需要启动slee侧的侦听器 lsnrctl start/stop mobin_sef,Client端的配置:tnsnames.ora,目录:/in/oracle/network/admin/tnsna
3、mes.ora组成部分Net service name:S14G0001.worldTarget host:mobin_net8Target listening Port:1526Target SID:S14G00在client和server都有该文件,tnsnames.ora的example,Database link的创建,如果需要在smf上面创建到slee的database link,具体的步骤如下:登陆smf检查listener.ora,启动slee侧的侦听器检查tnsnames.ora,确定slee侧db的net service name开始创建db link create publ
4、ic database link test connect to system identified by manager using S14G0001.world;dba_db_links,创建db link的说明,db link name:test目标库的登陆用户:system目标库的登陆密码:manager目标库的net service name:S14G0001.world检验db link是否建立成功(登陆smp数据库):Select count(*)from cattest;如果有值,则db link创建成功,Oracle 的export/import,导出的文件为二进制文件,ex
5、p/imp为操作系统命令几种的export的方法:全库导出exp system/manager FULL=y inctype=complete file=exp1.dmp按用户导出exp system/manager owner=vpmnx direct=y file=exp2.dmp,按表空间导出exp system/manager TRANSPORT_TABLESPACE=y TABLESPACEs=(vpmnx_01)file=exp3.dmp按表导出exp pps/pps tables=(credit,ppm)rows=y file=exp4.dmp query=”where ri10
6、00”,Import的几种方法,Tableimp pps/pps tables=(credit,ppm)rows=y file=exp4.dmpUserimp system/manager FROMUSER=vpmnx TOUSER=vpmnx file=exp2.dmp,Tablespaceimp system/manager TRANSPORT_TABLESPACE=y TABLESPACES=(vpmnx_01)file=exp3.dmpFull DB(复杂,不建议使用)imp system/manager inctype=restore full=y file=exp1.dmp,一些简
7、单的SQL语句,svrmgrl/svrmgr30sqlplus/nologdbsmpdbscommit/rollback/drop/alter/create/truncate,一些简单的SQL语句,将查询的结果保存到文件中spool/in/oracle/t1.txt(从spool开始一直到spool off,这中间所有的sql语句和操作结果都会保存在/in/oracle/t1.txt中)两表连接查询select ppm.card_nbr,credit.uscredvo,ppm.ri from ppm,credit where ppm.ri=credit.ri and ppm.firstcal=
8、chr(1)order by ri;spool off(停止将结果保存)select*for update,cat是?,select*from cat;cat user_catalog的同义词user_catalog 数据字典的一种,查询当前用户的table,view,synonyms,sequence,数据字典的一些特征,每当执行了DDL命令,会更新数据字典;DML命令如引起表扩展的命令也可以更新数据字典数据字典的内容包括:所有用户对象的定义;对象的空间使用量和当前的使用量;约束信息;用户信息及其相关的权限和角色信息;审计信息;其他的一般数据库信息;,常用数据字典的分类,数据字典视图:相对稳
9、定的数据库的状态,一般是进行了DDL,才能发生值的变化 动态性能视图:在数据库打开和使用的时候可不断的进行更新,提供关于内部磁盘结构和内存结构的数据,数据字典,数据字典视图的分类:DBA_:拥有select any table权限的用户才可以访问这一类视图;可以查询数据库中所有schema所拥有的对象特性ALL_:当前用户所拥有的对象和赋予了该用户访问权限的所有对象,可以通过该视图进行相关的查询USER_:仅仅可以查询当前用户所拥有对象的特性动态性能视图:v$:表示系统当前动态的一些性能状态,常用的数据字典,user_tables/all_tables/dba_tablesuser_table
10、spaces/all_tablespaces/dba_tablespacesuser_sys_privs/dba_sys_privsv$log/v$controlfile/v$instance.,何时使用何种数据字典?,不同的对象:table/view/privs/tablespace不同的启动阶段umount:v$sga/v$instance/v$parametermout:v$controlfile/v$database/v$datafile/v$tablespaceopen:user_tables不同的范围user_/all_/dba_/v$,Oracle的启动阶段,startup in
11、stance读取参数文件init.ora 分配SGA启动后台进程打开Alter文件和跟踪文件需要的两个动态的view:v$sga/v$instancemount database使数据库和之前启动的instance关联定位并打开参数文件中指定的control file读取控制文件以获取数据文件和日志文件的名称和状态,但是在此时不进行数据文件和日志文件是否存在的检查在这个阶段可以作的操作:命名数据文件启用和禁用数据库日志归档(archive log list)执行数据库的完全/不完全恢复,Oracle的启动阶段,open database打开联机数据文件打开联机日志文件检查数据库的一致性,如果需
12、要,SMON后台进程启动实例恢复STARTUP FORCE RESTRICT PFILE=filename OPEN RECOVERdatabase|MOUNT|NOMOUNT,数据库的关闭阶段,关闭数据库卸载数据库关闭实例shutdown normal l transactional|immediate|abort 注意:当出现ora-01090等含有”shutdown in progress”信息的错误时,可以用shutdown abort来解决,Oracle not available的错误,通常先把数据库shutdown掉,然后再分步启动,看究竟哪一步出错?,Oracle运行的机制究竟
13、是什么?,Oracle Server的组成,Oracle Server Oracle instanceOracle databaseinstance SGA Background process database control file redo log file datafile,SGA,由shared pool/data buffer/log buffer/Java pool/large pool等组成对应在init.ora中的参数shared pool:shared_pool_sizedata buffer:db_block_buffers*db_block_sizeredo log
14、buffer:log_buffer这些值可以在用 show parameter log_buffer的方式或在init.ora中察看,Backgroud process,五个必需的后台进程DBWRLGWRCKPTSMONPMONARC(和日志归档相关)可以用ps ef来察看这些进程或者在alter文件中察看相关信息,Oracle运行的两种模式,archivelog模式noarchivelog模式如何察看当前模式Archive log list/v$database两种模式的区别及优缺点两种模式的切换Alter database archivelog;,Oracle database的物理结构,
15、Datafile一个数据文件只可以属于一个表空间一个表空间可有多个数据文件可指定为随着对象而动态增长,或可以改变大小和DBWR进程相关Redo log file主要为了将来恢复使用至少两个日志组每个日志序列号来标识(logseq):archive log list和LGWR和ARC进程相关,Oracle database的物理结构,control file二进制文件,无法直接修改要作多个镜像(一般不超过8个)记录了每个时间点上的整个DB状态,在数据文件和日志文件打开前使用show parameter control_files,Oracle的逻辑结构,数据库的逻辑结构包括:tablespace
16、/segment/extent/oracle block,tablespace,数据库可以逻辑上划分出来一个或多个tablespace除了system表空间和有active状态的回滚段的表空间不可以脱机,其他均可以脱机每个业务的smf侧实际上是smp数据库中的一个tablespace,slee侧才是一个独立的数据库在pfmconfig中,对业务进行备份的时候,选择FULL DB是对整个SMP数据库进行备份;选择DB则是对该业务所属的表空间进行备份;这就实现了部分数据库的备份和恢复操作,segment,为表空间内特定逻辑存储结构分配的空间。例如:分配给表的所有存储空间就是一个段表空间可以由一个或
17、多个段组成段无法跨越表空间,但是可以跨越同一个表空间的多个数据文件段是由一个或多个extent组成有几种类型的段:数据段、索引段、回滚段、临时段,extent,存储空间分配的一个最小单元随着段增长,将向该段增加extent一个extent由一组连续的Oracle block组成,Oracle block,最小的I/O单元由db_block_size的值来确定大小一旦在建库的时候确定了,就无法再修改,需要重新建库是OS block大小的整数倍,Oracle逻辑和物理结构关联,v$tablespacedba_tablespacesv$datafiledba_data_files在tablespac
18、e创建时,指定extents的分配情况,注意其中的INITIAL_EXTENT、NEXT_EXTENT、MAX_EXTENTS、PCT_INCREASE的含义,扩容时,可以直接调整数据文件的大小或者添加新的数据文件,但是不要超过tablespace的最大的大小Alter tablespace*add datafile*.dbf size*m;还可以对某个具体的对象进行扩容alter table*freelists 4 pctfree 30 pectused 50 Storage(next 500k minextents 2 maxextents 100);,Oracle中一些段(对象)的管理,
19、回滚段:事务的回退、读一致性的保证表:数据的存储索引:加速查询速度,回滚段,Create rollback segment rbs01 tablespace rbs storage(initial 100k next 100k minextents 20 maxextents 100 optimal 2000k)在创建的时候,initial=next,确保所有的extent大小相同分为system和非system回滚段set transaction use rollback segment rbs01;,回滚段,创建好之后是脱机的,使用alter rollback segment rbs01
20、online;相关数据字典:v$rollstat/v$rollname/dba_rollback_segs/v$transaction/v$session,表段,常规表分区表索引组织表簇Truncate table 表名:是删除表的所有数据,并且释放已经使用的空间,但是无法回滚,索引段,B树索引位图索引基于函数的索引反向索引,索引,回收索引空间alter index*deallocate unused;重建索引alter index*rebuild;合并索引碎片空间alter index*coalesce;,现场问题的收集,alert.log(show parameter user_dump_dest)cdltrace文件oerr ora*,一些建议,安装一些管理工具(oracle manager server,Quest等)Alert文件和trace文件的及时提交,最重要的一点,备份!,谢谢!,