静默安装ORACLE 软件
1.环境描述LINUX 5.4 X86安装ORACLE 10.2.0.1[@more@]2.安装前的准备工作参看oracle官方的安装文档(linux86的文档为B15660-0.pdf),完成安装前的系统准备,这里简单列举一下:A. 打需要的包,进入linux的操作系统的安装目录,按顺序打下面的包:rpm -Uvh compat-db-4*rpm -Uvh libaio-0*rpm -Uvh compat-libstdc++-33-3*rpm -Uvh kernel-headers-2.6.18-164.el5.i386.rpmrpm -Uvh glibc-headers-2.5-42.i386.rpmrpm -Uvh glibc-devel-2.5-42.i386.rpmrpm -Uvh compat-gcc-34-3.4.6-4.i386.rpmrpm -Uvh compat-gcc-34-c++-3.4.6-4.i386.rpmrpm -U
ORA-02058错误解决
一个开发商反映,使用DB_LINK的时候,数据库报ORA-02085的错误,DB_LINK 以前是可以用的,现在突然不可以用了. 检查了数据库的环境,大致情况如下: $more $ORACLE_HOME/network/admin/tnsnames.oraXSDB = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 12.56.123.97 )(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = 12.56.123.98 )(PORT = 1521)) (LOAD_BALANCE = yes) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl) ) ) 创建db_link的语句:SQL>Create database lin
impdp导入数据后,system 表空间整理
在在使用impdp工具,实施数据库的迁移后,发现SYSTEM 表空间使用了很多空间(空间占用超过了1024M),需要进行必要的整理工作.1. 查询system表空间段使用情况,找出容量大于100M的段SQL>select segment_type,segment_name,sum(bytes/1024/1024) from dba_segments where owner in ('SYS','SYSTEM') and tablespace_name='SYSTEM' group by segment_type,segment_name having sum(bytes/1024/1024) >100 order by segment_type,segment_name;SEGMENT_TYPE SEGMENT_NAME SUM(BYTES/1024/1024)------------------ --------------------------
ORA-39083 ORA-23421 问题分析与解决
在使用IMPDP导入部分用户的数据时,在导入工作的最后阶段遇到了ORA-39083错误,错误描述如下:一. 问题描述......Processing object type DATABASE_EXPORT/SCHEMA/REFRESH_GROUPORA-39083: Object type REFRESH_GROUP failed to create with error:ORA-23421: job number 122 is not a job in the job queueFailing sql is:BEGIN dbms_refresh.make('"SCDC"."PROD_SEC_INIT_DEV_MV"',list=>null,next_date=>null,interval=>null,implicit_destroy=>TRUE,lax=>FALSE,job=>122,rollback_seg=>NULL,pu
ORA-39125 ORA-06502 错误解决
ORACLE 10.2.0.5的expdp/impdp工具有一些bug,在进行数据库全库迁移时,导入对象的状态时,报发生严重的错误,最后导致了impdp操作的异常终止,此时用户数据已经成功导入了数据库.但导入statistics数据时,发生了如下的错误:Processing object type DATABASE_EXPORT/SCHEMA/TABLE/INDEX/STATISTICS/FUNCTIONAL_AND_BITMAP/INDEX_STATISTICSProcessing object type DATABASE_EXPORT/SCHEMA/TABLE/STATISTICS/TABLE_STATISTICSORA-39125: Worker unexpected fatal error in KUPW$WORKER.PUT_DDLS while calling DBMS_METADATA.CONVERT [TABLE_STAT
使用netbackup进行数据库恢复案例
因为数据库的数据文件所在的磁盘发生了故障(突然间不可访问和不可见),重新启动操作系统时发现scsi阵列卡已经无法识别数据磁盘,数据磁盘的状态为foreign.在BIOS中进行操作和设置,调整了数据磁盘的状态;然后进入操作系统可以正常识别数据磁盘,数据库也可以启动到open状态. 数据库启动后,发现有部分数据文件的状态为recover,需要进行数据库的恢复. 下面是数据库恢复的步骤:[@more@]1.恢复前状态:SQL>select file#,name,status,checkpoint_change# from v$datafile FILE# NAME STATUS
数据库的FLASHBACK 与ARCHIVELOG模式的关系
ORACLE 数据库的FLASHBACK 与ARCHIVELOG模式是有关系的,其关系如下:1.启用FLASHBACK 功能的前提是 数据库处于ARCHIVELOG模式。 如果数据库处于非归档模式,则打开数据库的FLASHBACK功能时,将报错,错误如下:[@more@]SQL> alter database flashback on;alter database flashback on*ERROR at line 1:ORA-38706: Cannot turn on FLASHBACK DATABASE logging.ORA-38707: Media recovery is not enabled. 2.关闭ARCHIVELOG模式,要先关闭FLASHBACK 数据库处于FLASHBACK打开和归档模式下,如果直接将数据库设置为非归档模
ORACLE RAC的FLASHBACK后期安装设置
本文的操作系统环境是AIX 6.1. 在ORACLE RAC 的环境里运行DBCA 进行创建数据库时,如果选择打开FLASHBACK 功能,就需要设置DB_RECOVERY_AREA.这个时候如果输入不是群集的文件系统,又不是ASM的磁盘目录,则将提示输入的目录不是群集的目录.AIX的群集文件系统GPFS,需要另外购买和安装,这里不讨论。同时这次的ORACLE RAC 10GR2没有使用ASM,所以也无法使用asm设置DB_RECOVERY_AREA的目录。鉴于上面的原因,笔者先在DBCA的安装过程中,关闭FLASHBACK的功能,等到数据库建立完成后,再重新配置。ORACLE RAC的FLASHBACK后期安装设置的步骤为: 数据库
AIX 6.1上安装ORACLE 10R2 RAC 的几个重要的准备工作
1. 安装的AIX的相关包Operating system filesets: The following operating system filesets are required:bos.adt.basebos.adt.libbos.adt.libmbos.perf.libperfstatbos.perf.perfstatbos.perf.proctoolsxlC.aix50.rte:7.0.0.4 or laterxlC.rte:7.0.0.1 or later以上内容来自与b19075.pdf[@more@]2. 配置操作系统网络no -o tcp_sendspace=262144no -o tcp_recvspace=262144no -o udp_sendspace=65536no -o udp_recvspace=655360no -o rfc1323=1no -o sb_max=1310720no -o ipqmaxlen=512修改/etc/rc.net,使得相关网路参数在重启时生效在/
datafile管理的几个重点内容
1. DB_FILES 参数设置Db_files 参数可以动态设置,但需要重新启动实例才生效.Db_files参数不可以随意设置得很大,因为实例启动时,SGA会根据这个参数开辟内存空间用于存储数据文件信息.Db_files参数也不可以设置过小,设置过小,将导致无法添加数据文件到数据库中.Db_files参数需要根据实际情况进行设置。Db_files参数与maxdatafile参数联系在create database或者create controlfile命令中可以使用maxdatafile来设置datafile数量的初始化限制。当我们增加datafile时,如果文件的数量大于maxdatafile参数,同时又小于db_files时,增加文件会成功
迁移SYSTEM表空间为本地管理表空间
迁移SYSTEM表空间为本地管理表空间 使用DBMS_SPACE_ADMIN 包实现将SYSTEM表空间从字典管理模式修改本地管理模式。命令如下: SQL>EXECUTE DBMS_SPACE_ADMIN.TABLESPACE_MIGRATE_TO_LOCAL('SYSTEM'); 迁移前的一些条件检查: 数据库的缺省临时表空间不是SYSTEM. 在字典管理模式的表空间上没有回滚段. 至少有一个在线回滚段,存在于一个本地管理模式表空间,或者如果使用了自动UNDO管理,至少一个UNDO表空间在线运行. 除了含有undo信息的表空间,其他表空间都要处于read-only状态. 系统处于限制(restricted)模式
数据库历史数据有效管理
1.1. 应用场景业务系统运行一段时间后,与时间有关的数据库库表中保存有多年前的数据,这些数据平时基本很少需要变更,但数据记录数量巨大,读写性能逐月下降,同时备份的压力也增加(备份集越来越大,备份时间越来越长)。[@more@]1.2. 有效管理方法首先,将历史数据与当前数据进行有效的分割,分割的方法很多,这里列举两个普遍的做法:A.重新建立与当前数据表表结构相同的历史表,将历史的数据插入到这些历史表中,然后建立视图,将当前表与历史表union起来,这些历史表是建立在历史表空间上的。这种情况,应用程序尤其是查询统计的程序需要
通过实验了解Temporary Tablespce Group
1.临时表空间组的几个特性A.至少含有一个临时表空间,之多含有多少个临时表空间没有限制。B.名称不可以与其它表空间名称相同。C.通过DBA_TABLESPACE_GROUPS查看临时表空间组和它的成员。[@more@]表空间组的创建与删除方式A. 当把第一个临时表空间加入到临时表空间组时,将缺省自动(implicitly)创建了该临时表空间组。B. 当临时表空组的最后一个成员被移出该组时,将缺省自动删除该组。不可以通过命令现式创建和删除临时表空间组。临时表空间组的几个操作3.1创建一个临时表空间组SQL> select ts#,name from v$tablespace;TS# NAME0 SYSTE
表空间管理之bigfile表空间设置
我们有两个途径创建bigfile表空间1.在数据库创建时指定缺省表空间类型为bigfilecreate database aa set default bigfile tablespace...这样我们创建表空间的时候,如果在create tablespace语句中没有设置表空间的类型为smallfile,则缺省创建bigfile表空间。2.在创建表空间时,指定表空间的类型为bigfilecreate bigfile tablespace bigts datafile '/oradata/bigts01.dbf' size 50g. [@more@]bigfile表空间的几个特性,需要大家注意:A. bigfile的表空间创建时,自动设置为本地管理(extent management local)和段自动管理(segment mana
RMAN 恢复之控制文件篇(5/5)
1.5 实验总结: 场景二,场景三都是正常的恢复方式. 场景一有点特别,控制文件是旧的,并且全备份的scn与两个归档日志文件的SCN交叉.在进行RECOVER的时候,选择auto和cancel两种方式都不能正常recover,一定需要输入第2个归档日志的文件名,系统才正常进行recover,这个是以前没有遇到的问题。[@more@]另外通过本次的实验,知道了,恢复时报文件需要重新RESTORE 的问题时,可以不去理这个错误,更加不需要重新restore database,而是从全备份的SCN,归档日志的SCN,控制文件的SCN等几个方面进行考虑。 SCN的查询方法 RMAN>LIST BACKUP
RMAN 恢复之控制文件篇(4/5)
1.4 场景三:使用全备份后产生的控制文件进行备份恢复 1.4.1 模拟灾难发生 SQL> shutdown abort; [oracle@restoretest gcwz_web]$ rm *[@more@]1.4.2 恢复控制文件 [oracle@restoretest gcwz_web]$ sqlplus / as sysdba SQL> startup nomount [oracle@restoretest gcwz_web]$ rman target / RMAN> restore controlfile from '/rman/control_73'; output filename=/oradata/gcwz_web/control01.ctl output filename=/oradata/gcwz_web/control02.ctl output filename=/oradata/gcwz_web/
RMAN 恢复之控制文件篇(3/5)
1.3 场景二:使用全备份时产生的控制文件进行备份恢复 1.3.1 模拟灾难发生 [oracle@restoretest ~]$ sqlplus / as sysdba SQL> shutdown abort; $ cd /oradata/gcwz_web/ [oracle@restoretest gcwz_web]$ rm *[@more@]1.3.2 恢复控制文件 RMAN> restore controlfile from '/rman/full_72_709900586_1'; output filename=/oradata/gcwz_web/control01.ctl output filename=/oradata/gcwz_web/control02.ctl output filename=/oradata/gcwz_web/control03.ctl Finished restore at 02-FEB-10
RMAN 恢复之控制文件篇(2/5)
1.2 场景一:使用旧的控制文件进行备份恢复 1.2.1 模拟灾难发生 异常停止数据库: Sqlplus / as sysdba Sql>shutdown abort; 删除所有数据库文件: $Rm –rf /oradata/gcwz_web/*[@more@]1.2.2 恢复控制文件 以旧的控制文件为模板恢复控制文件。 本案例如果没有旧的控制文件,可以使用附件二的方法,创建全新的控制文件,恢复的方法与本案例完全相同。 Sqlplus / as sysdba Startup nomount 或者startup nomount pfile=’ /oracle/product/10.2.0/db_1/dbs/initgcwz_web.ora’; Rman target /
RMAN 恢复之控制文件篇(1/5)
1.1 案例环境描述 本文主要描述分别使用不同阶段产生的控制文件进行rman恢复。 1.1.1 操作系统环境 基本环境描述: OS: Linux restoretest 2.6.18-128.el5 #1 SMP Wed Dec 17 11:41:38 EST 2008 x86_64 x86_64 x86_64 GNU/Linux[@more@]1.1.2数据库环境 DB: oracle 10.2.0.4 SQL> select name from v$datafile; /oradata/gcwz_web/system01.dbf /oradata/gcwz_web/undotbs01.dbf /oradata/gcwz_web/sysaux01.dbf /oradata/gcwz_web/users01.dbf /oradata/gcwz_web/test01.dbf SQL> select
Flashcopy与数据库恢复的完美结合(11/20)
1.4.4.10 查询主机A数据库A 的aidu.test03表的数据信息SQL>select count(1) from aidu.test03;SQL>select checkpoint_change# fromv$database; 1.4.4.11 将数据库A设置为online backup模式SQL>alter data...