ImageVerifierCode 换一换
格式:DOCX , 页数:23 ,大小:27.91KB ,
资源ID:7315270      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7315270.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Oracle系统管理.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Oracle系统管理.docx

1、Oracle系统管理Oracle系统管理 (1)常见的数据库维护过程常见的数据库维护过程一数据备份1, 备份与恢复前的准备(1) 设定字符集 set NLS_LANG=.ZHS16CGB231280 export NLS_LANG(2) 检查空间大小 df -k(3) 资源开销 联机备份资源开销较大,一般在2:30分左右进行。2, 数据备份以下是文件exp.file的内容:exp userid=cinms3/cinms3 full=Y inctype=complete constraints=Y file=cinms3_200804_1.dmp log = cinms3_200804_1.lo

2、g注意备份生成的数据文件的名称要有时间标识,留下备份成功与否的log,备份的工作放在后台去执行,如下所示$ nohup /u03/oradata/exp.file &3, 数据恢复(1) 恢复前的检查(a) 磁盘空间的大小df -k(b) 数据表空间的大小 以下script sql 检查数据库中所有的表空间及数据文件的资源分配及目前的开销,剩余空间的大小,以便分析、决定是否需要扩展数据文件。 select a.file_id FileNo,a.tablespace_name Tablespace_name,a.file_name DataFile_name,a.bytes Bytes,a.by

3、tes-sum(nvl(b.bytes,0) Used,sum(nvl(b.bytes,0) Free,sum(nvl(b.bytes,0)/a.bytes*100 %freefrom dba_data_files a, dba_free_space bwhere a.file_id=b.file_id(+) group by a.tablespace_name ,a.file_name,a.file_id,a.bytes order by a.tablespace_name(c) 回滚段 检查目前所用的回滚段,及其开销。select n.name,s.extents,s.rssize,s.s

4、tatus from v$rollname n,v$rollstat s where n.usn=s.usn;由于在恢复数据时,事务交易是大事务集中处理,回滚段开销较大,应考虑扩展回滚表空间与回滚段,使某个回滚段的大小在260M以上,交易处理在此回滚段上进行。CREATE ROLLBACK SEGMENT r15 TABLESPACE rbs STORAGE ( INITIAL 1m NEXT 1m MINEXTENTS 10 MAXEXTENTS 280m OPTIMAL 20m); 使回滚段在线: 当回滚段创建后,回滚段是离线的,不能被数据库使用, 为了使回滚段被事务利用,必须将回滚段在线

5、。可以用以下命令使回滚段在线: ALTER ROLLBACK SEGMENT r15 ONLINE; 其他回滚段离线 ALTER ROLLBACK SEGMENT rollback_segment OFFLINE; ALTER ROLLBACK SEGMENT r01 OFFLINE; ALTER ROLLBACK SEGMENT r02 OFFLINE; ALTER ROLLBACK SEGMENT r03 OFFLINE; ALTER ROLLBACK SEGMENT r04 OFFLINE; ALTER ROLLBACK SEGMENT r05 OFFLINE; ALTER ROLLBA

6、CK SEGMENT r06 OFFLINE; ALTER ROLLBACK SEGMENT r07 OFFLINE; ALTER ROLLBACK SEGMENT r08 OFFLINE; ALTER ROLLBACK SEGMENT r09 OFFLINE; ALTER ROLLBACK SEGMENT r10 OFFLINE; ALTER ROLLBACK SEGMENT r11 OFFLINE; ALTER ROLLBACK SEGMENT r12 OFFLINE; 此时,在import恢复数据时,交易将只在r15上进行。 (d) 扩展数据表空间 重新调整数据文件的大小,要均匀地分布在

7、不同的磁盘上。alter tablespace CINMS_USER add datafile /u02/oradata/unicom/cinms_user000.dbf size 500m;(e) 扩展系统表空间 扩展系统表空间的大小 alter tablespace SYSTEM add datafile /u02/oradata/unicom/system02.dbf size 300m;(f) 共享缓冲池 清除共享池数据:alter system flush shared_pool;功能:清除shared_pool中的碎片,解决连续的空间(db_block_size * db_bloc

8、k_buffers决定了share_pool的大小)(g) 字符集 再次检查字符集 set NLS_LANG=.ZHS16CGB231280 export NLS_LANG(h) 清除回滚段数据: alter rollback segment testroll shrink; 功能:把回滚段已提交地事务清空,使占有地资源释放出来。(i) 删除不需要的会话 查看后台进程, 删除不需要的会话 select spid,name from v$process,v$bgprocess where addr = paddr alter system kill session session_id,proc

9、ess_id;(j) (2) 恢复过程 恢复时,执行imp.file,并提交到后台执行。Imp.file文件内容如下: imp userid=cinms3/cinms3 fromuser=cinms3 ignore=y commit=y f ile= unicom_cinms3.dmp log=cinms3_200108021_1.log 恢复工作放在后台去执行,如下所示 $ nohup /u03/oradata/imp.file &(3) 恢复后的检查 (a), 检查数据库对象的个数 检查数据库中表地个数,Trigger,Procedure,Package,Funcation地个数,与原库中

10、相应地数据库对 象进行比较,如相等,说明对象及数据已恢复。 select count(*) from user_source where type =FUNCTION; select count(*) from user_source where type =PROCEDURE; select count(*) from user_source where name like RADIUS%; select count(*) from user_source where type =PACKAGE; select count(*) from user_tables; (b) 使回滚段在线 可以

11、用以下命令使回滚段在线: ALTER ROLLBACK SEGMENT r15 ONLINE; ALTER ROLLBACK SEGMENT rollback_segment OFFLINE; ALTER ROLLBACK SEGMENT r01 ONLINE; ALTER ROLLBACK SEGMENT r02 ONLINE; ALTER ROLLBACK SEGMENT r03 ONLINE; ALTER ROLLBACK SEGMENT r04 ONLINE; ALTER ROLLBACK SEGMENT r05 ONLINE; ALTER ROLLBACK SEGMENT r06 O

12、NLINE; ALTER ROLLBACK SEGMENT r07 ONLINE; 清除回滚段数据: alter rollback segmentr15 shrink;(c) 重新编译数据库对象TRIGGER /* 编译所有的触发器 */set pages 0 feed off echo offspool trgcomp.sqlprompt spool trgcom.lstprompt set echo on feed onselect alter trigger | trigger_name | compile; from user_triggers;prompt spool offspoo

13、l off(d) 重新编译数据库对象PROCEDURE,FUNCATION,PACKAGE /* 编译所有的函数,过程,包 */set pages 0 feed off echo offspool ppfcomp.sqlprompt spool ppfcompprompt set echo on feed onselect distinct alter | type | |name | compile; from user_source where type PACKAGE BODY;prompt spool offspool off(e) 快速编译所有视图当在把数据库倒入到新的服务器上后(数

14、据库重建),需要将视图重新编译一遍,因为该表空间视图到其它表空间的表的连接会出现问题,可以利用PL/SQL的语言特性,快速编译。SQL SPOOL comp_view.sqlSQL SELECT ALTER VIEW |TNAME| COMPILE; FROM USER_TABLES;SQL SPOOL OFF然后执行ON.sql即可。SQL comp_view.SQL当然,授权和创建同义词也可以快速进行,如:SQL SELECT GRANT SELECT ON |TNAME| TO USERNAME; FROM USER_TABLES;SQL SELECT CREATE SYNONYM |T

15、NAME| FOR USERNAME.|TNAME|; FROM TABLES;(f) 数据库重建应注意的问题在利用import进行数据库重建过程中,有些视图可能会带来问题,因为结构输入的顺序可能造成视图的输入先于它低层次表的输入,这样建立视图就会失败.要解决这一问题,可采取分两步走的方法:首先输入结构,然后输入数据.命令举例如下 (uesrname:cinms3,password:cinms3,host sting:unicom,数据文件:expdata.dmp): impcinms3/cinms3unicom file=empdata.dmp rows=Nimpcinms3/cinms3u

16、nicom file=empdata.dmp full=Y buffer=64000 commit=Y ignore=Y第一条命令输入所有数据库结构,但无记录.第二次输入结构和数据,64000字节提交一次,ignore=Y选项保证第二次输入既使对象存在的情况下也能成功.(g) 4, 阿若误认为二 空间管理 1 检查目前表空间的大中小 数据文件的创建应以在磁盘上均匀分布为原则,创建时,在所有磁盘上要同时创建,使数据均匀地分布在各个磁盘上。col FileNo format a3col Tablespace_name format a22col DataFile_name format a30co

17、l Bytes format a15col Used format a15col Free format a15col %free format a15 select a.file_id FileNo,a.tablespace_name Tablespace_name,a.file_name DataFile_name,a.bytes Bytes,a.bytes-sum(nvl(b.bytes,0) Used,sum(nvl(b.bytes,0) Free,sum(nvl(b.bytes,0)/a.bytes*100 %freefrom dba_data_files a, dba_free_s

18、pace bwhere a.file_id=b.file_id(+) group by a.tablespace_name ,a.file_name,a.file_id,a.bytes order by a.tablespace_name2 检查某个数据文件上含有的数据库表 在数据文件/export/home/app/oracle/datafile/cinms3_user02.dbf上有那些数据库表,将segment_type 改为TRIGGER,PROCEDURE,FUNCATION,PACKAGE等可以查看其他数据库对象在数据文件上地分布情况。col segment_name format

19、 a20col tablespace_name format a12col file_name format a45select a.segment_name,a.tablespace_name,b.file_name from user_segments a, dba_data_files b where a.segment_type=TABLE and a.tablespace_name=b.tablespace_name and b.file_name=/export/home/app/oracle/datafile/cinms3_user02.dbf ;3 将数据文件从一个磁盘移到另一

20、个 (1) 使用SERVER MANAGER关闭实例SVRMGR connect internal;SVRMGR shutdown;SVRMGR exit; (2) 移动数据库文件位置 使用操作系统命令来移动数据库文件位置(假设这里操作系统为SOLARIS 2.7). 在UNIX中用 mv命令可以把文件移动到新的位置,mv /export/home/oracle/u02/cinms_user81.dbf /export/home/oracle/oradata/cinmsmv /u02/oradata/unicom/cinms_user04.dbf /u03/oradata/unicom (3)

21、 装载数据库 装载数据库并用alter database命令来改变数据库中的文件名SVRMGR connect internal;SVRMGR startup mount SVRMGR alter database rename file / ora13/orarun/document.dbf to/ ora12/orarun/document.dbf;或者alter database rename file /export/home/oracle/u02/cinms_user81.dbf to /export/home/oracle/oradata/cinms/cinms_user81.db

22、f;或者alter database rename file /u02/oradata/unicom/cinms_user04.dbf to /u03/oradata/unicom/cinms_user04.dbf; (4). 启动实例. SVRMGR alter database open;4 删掉某个数据文件 简单的方法是offline并删除该数据文件svrmgrlstartup mount svrmgrlalter database datafile /u02/oradata/unicom/cinms_user04.dbf offline drop;svrmgrlalter databa

23、se datafile /u02/oradata/unicom/cinms_user00.dbf offline drop;svrmgrlalter database datafile /u02/oradata/unicom/cinms_user01.dbf offline drop;svrmgrlalter database datafile /u02/oradata/unicom/cinms_user02.dbf offline drop;svrmgrlalter database datafile /u02/oradata/unicom/cinms_user03.dbf offline

24、drop;svrmgrlalter database datafile /u02/oradata/unicom/cinms_user05.dbf offline drop;svrmgrlalter database open; 此时,可将数据文件u02/oradata/unicom/cinms_user04.dbf从磁盘上物理删除。5 删除某个表空间及其含有的所有数据文件(a)alter tablespace CINMS_USER offline;(b) drop tablespace CINMS_USER including contents;(c) drop tablespace CINM

25、S_USER;随着表空间地删除,其上地数据文件随之删除。6 检查回滚段地状态 对于电信业务而言,基本上联机事务处理OLTP,回滚段不要太大,个数要适当多,究竟多少要根据具体情况而定,但有一点,一定要联机ONLINE,检查Script sql如下:select n.name,s.extents,s.rssize,s.optsize,s.hwmsize,s.xacts,s.status from v$rollname n,v$rollstat s where n.usn=s.usn;SQL /NAME EXTENTS RSSIZE OPTSIZE STATUS- - - - -SYSTEM 8 4

26、07552 ONLINER05 10 11589632 ONLINER01 545 72542208 ONLINER02 103 34168832 ONLINER03 37 10606592 ONLINER04 171 22759424 ONLINER06 5 6316032 ONLINER07 3 4206592 ONLINER08 4 5261312 ONLINER09 64 68544512 ONLINER10 5 6316032 ONLINE从上可以看到,R01占用了较多地区域,应作shrink处理。同时系统在长期运行后,可能会发生rollback segment offline现象,

27、此时,要做如下处理:清除回滚段数据: alter rollback segment testroll shrink;ALTER ROLLBACK SEGMENT r15 ONLINE;7 表空间的创建和扩建 (1) 创建临时表空间 create tablespace temp_user datafile /u01/oradata/cinms/Billing_curcomdedial_1.dbf size 200m, temporary; (2) 创建用户数据表空间 (a)方法1 CREATE TABLESPACE CINMS_USER DATAFILE /u02/oradata/unicom/

28、cinms_user000.dbf SIZE 500m REUSE, /u02/oradata/unicom/cinms_user001.dbf SIZE 500m REUSE DEFAULT STORAGE ( INITIAL 40K NEXT 40K MINEXTENTS 1 MAXEXTENTS 2147483645 PCTINCREASE 0 ); (b)方法2 CREATE TABLESPACE CINMS_USER33 DATAFILE /export/home/app/oracle/datafile/cinms_user000.dbf SIZE 1m DEFAULT STORAG

29、E ( INITIAL 40K NEXT 40K MINEXTENTS 1 MAXEXTENTS 2147483645 PCTINCREASE 0 ); (4) 创建索引表空间 CREATE TABLESPACE CINMS_INDEXES DATAFILE /u03/oradata/unicom/cinms_index03.dbf SIZE 300M DEFAULT STORAGE ( INITIAL 128K NEXT 128K MINEXTENTS 1 MAXEXTENTS 4096 PCTINCREASE 0 );(5) 在给定的表空间上增加数据文件(扩展表空间)alter table

30、space CINMS_USER add datafile /u02/oradata/unicom/cinms_user002.dbf size 500malter tablespace CINMS_USER add datafile /u02/oradata/unicom/cinms_user003.dbf size 500m(6) 重建表空间及所有对象 删除某个用户,同时将此用户所具有的数据库对象全部删除,包括,table,index,procedure,funcation,package等,然后再创建表空间及其数据文件。以system/manager用户登录数据库,执行如下script sql:drop user cinms3 cascade;create user cinms3 identified by cinms3 default tablespace cinms_user;grant resource to cinms3;grant dba to cinms3;

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1