在启动数据库的时候,open阶段总是可能出现各种各样的问题, 比如让人胆战心惊的错误。 ORA-01113: file 1 needs media recovery 自己留意了一下,其实还是有蛮多的场景会出现这个问题,有些细节可能没有注意到就会出现这个问题, 比如我们重建控制文件的时候。 在重建控制文件之前做了shutdown abort的操作。 SQL> shutdown abort ORACLE instance shut down. SQL> startup nomount ORACLE in
SQL> select status from v$instance; STATUS ------------ MOUNTED SQL> ALTER DATABASE OPEN; ALTER DATABASE OPEN * ERROR at line 1: ORA-01589: must use RESETLOGS or NORESETLOGS option for database open
一 系统环境: 1、操作系统:oracle Linux 5.6 2、数据库: Oracle 11g 二 Oracle 重做日志的作用: [模拟介质恢复] 1. 关闭数据库归档模式: [oracle@test ~]$ sqlplus /nolog SQL*Plus: Release 11.2.0.1.0 Production on Mon Feb 6 23:49:30 2017 Copyright (c) 1982, 2009, Oracle. All rights reserved. SQL>
今天在做一些演示的时候,在虚拟机上装了两套数据库软件,10g和11g的。还是在演示普通数据文件迁移的时候还是碰到了一些意料之外的问题,从当时的情况来看感觉还是比较诡异的,所以马上切换到另外一套环境去试验就没有任何问题了。对于这个问题事后进行了分析,发现还是一些简单常规的错误,自己还是对一些细节没有掌握好, 本来对于普通数据文件的迁移流程是很简单的,在数据库open状态就可以迁移, 基本步骤如下: alter tablespace xxxx offline; cp datafiles alter ta
在Oracle中,Redo日志文件包含所有的数据库变化历史记录,例如所有的DML变化(INSERT、UPDATE、DELETE和SELECT FOR UPDATE)和所有DDL语句造成的数据字典对象的更改及递归语句的更改等,所以redo文件可以最大限度地保证数据的一致性与安全性。万一数据库出现故障可以启用数据恢复。但是redo日志被误删了怎么办呢?本文通过一个案例来了解一下redo日志被误删,强制开库遭遇ORA-16433,供大家参考。
有的时候由于备库空间不足,在主库添加了数据文件后,导致备库数据文件的缺失,可能很久之后才发现,但是由于归档的缺失等其它原因而导致备库不能正常应用Redo日志。还有其它情况可能导致备库的数据文件不能正常ONLINE,在这种情况下,可以在主库上利用CONVERT命令备份一个数据文件然后拷贝到备库即可。若是备库归档文件比较全,则可以直接在备库创建数据文件后应用Redo日志即可,而不需要从主库拷贝数据文件。
Q 题目 Your database is configured in archivelog mode.The USERS01 tablespace is currently online.You
客户的一套开发环境,大概了解到的背景是清理空间时redo被运维人员当作log误删除,一线同事先接手处理,过程中遇到问题升级到我这里继续分析。 接手后,数据库处于mount状态,之前恢复过程中已经做过resetlogs的操作,也设置了"_allow_resetlogs_corruption"隐藏参数为true,目前直接开库会提示需要恢复,重新进行resetlogs时报错ORA-600 [2662],起初看到这个错误心中略有些放松,根据经验,推下SCN就好了:
数据库维护中,备份或恢复是重中之重的问题。尽管很多时候数据库系统运行缓慢,但对数据库数据的丢失而言,显然后者损失的代价是不言而喻的。因此 DBA 至少在保证数据不丢失的情况下来提高系统的性能是最起码的要求。关于什么是备份与恢复,在此不做赘言。
墨墨导读:客户的一套开发环境,清理空间时redo被运维人员当作log误删除,一线同事先接手处理,过程中遇到问题升级本文做出分析。
数据文件OFFLINE之后必须要做的一件事就是立刻执行一次RECOVER操作,这样在无论过了多久之后,在ONLINE该数据文件的时候就不需要执行RECOVER操作了。
Oracle 热备份是指数据库处于open状态下,对数据库的数据文件、控制文件、参数文件、密码文件等进行一系列备份操作。
故障服务器上一共16块FC硬盘,单盘容量600G。存储前面板10号和13号硬盘亮黄灯,存储映射到redhat上的卷挂载不上,服务器业务崩溃。
墨墨导读:一套Oracle RAC环境运行在HW超融合环境中,由于硬件问题导致数据库crash,期间出现了不少数据坏块,本文详述整个恢复过程,希望对大家有帮助。
using backup controlfile 通常用于恢复由于当前控制文件丢失且原来备份的控制文件较当前发生变化的情形之下。using backup controlfile 的 recover 方式一旦使用之后,常用的recover database命令将不可再使用,且必须要使用resetlogs方式来打开数据库,下面是具体的演示描述。
ALTER TABLESPACE TS_DD_LHR DROP DATAFILE n; --n为数据文件号
① 该语句会删除磁盘上的文件并更新控制文件和数据字典中的信息,删除之后的原数据文件序列号可以重用。
SYSAUX表空间是在10g之后引入的一个新的表空间,主要用于减轻对SYSTEM表空间的压力而作为SYSTEM表空间的辅助表空间。
移动数据文件/home/oracle/cjctbs02.dbf到/u01/app/oracle11/oradata/chendb/cjctbs02.dbf
Oracle 11g RAC中crs_stat命令较之前的版本多出了很多新的不同的资源类型,缺省情况下,使用crs_stat -t来查看资源是密密麻麻一大片,看起来着实费力。作者Paul Elbow, Enkitec为我们提供了一个crsstat脚本以更清晰的格式来展现Oracle 11g RAC下的所有资源类型,见本文下面的描述。
新安装了Oracle 11g rac之后,不知道是什么原因导致第二个节点上的crsd无法启动?其错误消息是CRS-4535: Cannot communicate with Cluster Ready Services。其具体的错误信息还需要查看crsd.log日志才知道。
Oracle 11g RAC安装时,在第一个节点执行root.sh时遭遇了CRS-0184/PRCR-1070,Google了很多帖子也没有找到解决办法。呜呜,还是静下心来看日志!!最后的发现原来是一个不经意的小问题,如下面的描述。
Oracle 11g RAC中,发现oc4j以及gsd服务都处于offline状态,这是Oracle 11g RAC默认情形。即便如此,并不影响数据库的使用,因为 oc4j 是用于WLM 的一个资源, WLM在 11.2.0.2 才可用。GSD则是用于支持dbca,srvctl,oem等的交互工具。本文描述将这两个服务切换到online。
最近在从活动数据库进行异机克隆时碰到了ORA-17629,ORA-17627,ORA-12154的错误,起初以为是一个Bug呢。Oracle Bug着实太多了,已经成了习惯性思维了。汗!错误提示是无法连接到连接到远程数据库,连接字符串无法解析。咦,配置了从auxiliary DB到target DB的tnsnames,且都是连通的阿......
如果在Oracle 11g RAC环境下使用dbca创建单实例数据库后,Oracle会自动将其注册到缺省的1521端口及监听器。大多数情况下我们使用的为非缺省监听器以及非缺省的监听端口。而且在Oracle 11g RAC环境中,对于集群监听器的配置由grid用户来接管了。基于这种情形的单实例非缺省监听及端口该如何配置呢?本文给出了解决方案,并且使用了静态及动态两种注册方法。
从Oracle 10G中,Oracle推出ASM(自动存储管理)功能,用于替换基于主机的存储管理软件,使得Oracle Rac运行不在依赖于第三方的存储管理软件(如hacmp,sfrac)。在10G中,ASM的功能和稳定性就还不完善,并没有大规模的被使用。但是在11G版本中,ASM已经大规模被使用,瞬间成为集群的核心存储管理解决方案。同时ASM这个黑匣子也逐渐的被大家认识,今天我们就给大家分享一个ASM磁盘组不能挂载的案例。
Oracle支持多种方式来管理数据文件的备份与恢复来保证数据库的可靠与完整。除了使用RMAN工具以及第三方备份与恢复工具之外,基于
Linux平台 Oracle 11gR2 RAC安装指导: Part1:Linux平台 Oracle 11gR2 RAC安装Part1:准备工作 Part2:Linux平台 Oracle 11gR2 RAC安装Part2:GI安装 Part3:Linux平台 Oracle 11gR2 RAC安装Part3:DB安装
数据库重新启动的时候,收到了ORA-19815的错误。从错误的提示来看,是由于闪回区的空间被填满导致无法成功启动。这种情形我们通常考虑的是清除归档日志,那就直接在OS层面rm了,真的是这样吗?客官,如果你有相同的情形,接下往下看......
今天照例开始学习oracle,实例启动了,但是listener却突然很奇怪,怎么都起不来。 我检查了下listener配置,网络配置,ssh服务,一切都正常,最后看防火墙开着,关了以后,问题还是照旧。 [oracle@oel log]$ lsnrctl LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 02-MAY-2013 12:11:38 Copyright (c) 1991, 2005, Oracle. All rights reserve
MEMORY_TARGET参数在Oracle 11g被引进,主要是用于控制Oracle对于系统内存的使用,首次将SGA与PGA整合到一起实现自动管理。一旦设置了MEMORY_TARGET参数值,Oracle会根据需要自动调整SGA与PGA以合理的分配及使用内存。但如果MEMORY_TARGET设置不当,就容易引起ORA-00845,因为MEMORY_TARGET与/dev/shm(tempfs)息息相关,本文即是对由此引发问题的描述。
背景:协助客户做验证,客户使用的是RHEL7.6环境,我这边是OEL7.6环境,开始以为区别不大,结果acfs兼容还是遇到问题,特此记录下。 现象:asmca图形没有acfs相关内容,无法使用acfs。
环境:RHEL 6.5 + Oracle Standby RAC 11.2.0.4 我做Standby RAC实验时,在恢复控制文件时,报错无法在磁盘组创建文件,具体报错内容如下:
Oracle数据库的备份方式有冷备份和热备份两种,针对这两种备份的实施过程记录如下: 一、Oracle冷备份 概念 数据库在关闭状态下完成所有物理系统文件拷贝的过程,也称脱机备份。 适合于非归档模式(即noarchivelog模式,SCN保持一致)下,数据库处于一致性状态。 冷备份,数据库可以处于归档模式也可以处于非归档模式,最好是处于非归档模式。 步骤 首先在运行的库中得到数据库运行的所有的物理文件位置,然后在计划内关闭数据库(shutdown) 再执行拷贝物理文家到备份路径或备份设备 备份完成后立即启
Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC
数据盘未做格式化分区(这里仅格式化并挂载到单独目录,不做分区) 根据内存大小需要对此操作系统重新分配合适的swap空间(这里增加到16G),关于swap分区大小可参考红帽官方说明
Linux平台 Oracle 19c RAC安装指导: Part1:Linux平台 Oracle 19c RAC安装Part1:准备工作 Part2:Linux平台 Oracle 19c RAC安装Part2:GI配置 Part3:Linux平台 Oracle 19c RAC安装Part3:DB配置
Oracle 11g RMAN能够实现基于活动数据库进行异机克隆,从而省去需要先备份再ftp到辅助服务器的过程。这一切可以全部交给Oracle来搞定。在克隆期间,Oracle会读取Target DB的所有数据结构,无须人为的干预(不同的磁盘系统,文件路径与文件名要指定转换方式)。尽管如此,对于生产环境数据库在整个克隆期间性能会下降,其次在Target Server与Auxiliary Server中会产生较大的网络流量。如果这些可以接受的话,从活动数据库进行异机克隆是一个不错的选择。本文首先描述了克隆时不同的连接与克隆方式样本,最后演示了基于活动数据库的克隆。
根据文档提示:这是因为可用于网络缓冲区预留的空间较少。可通过修改 vm.min_free_kbytes 参数和 MTU 来修复。
从 Oracle 无法直接访问 Mysql 数据库,需要配置透明网关后通过 DBLink 实现访问。
Linux平台 Oracle 18c RAC安装指导: Part1:Linux平台 Oracle 18c RAC安装Part1:准备工作 Part2:Linux平台 Oracle 18c RAC安装Part2:GI配置 Part3:Linux平台 Oracle 18c RAC安装Part3:DB配置
建了一个库,想通过Oracle Net访问,需要配置监听器和tnsnames.ora,接下来碰到一系列的问题。。。 1. 添加监听器配置,listener.ora文件默认包括: LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) ) ) ADR_BASE_LISTENER = /opt/app/ora11g 为了新建监听器名称,添加如下: DCSOPEN = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(Host = 172.101.19.57)(Port = 1521))) 或 DCSOPEN = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = dcsopen2Node)(PORT = 1521)) ) ) ADR_BASE_DCSOPEN = /opt/app/ora11g 或 DCSOPEN = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(Host = 172.101.19.57)(Port = 1521))) SID_LIST_DCSOPEN = (SID_LIST = (SID_DESC = (SID_NAME = PLSExtProc) (ORACLE_HOME = /opt/app/ora11g/product/11.2.0/dcsopen) (PROGRAM = extproc) ) (SID_DESC = (GLOBAL_DBNAME = dcsopen) (ORACLE_HOME = /opt/app/ora11g/product/11.2.0/dcsopen) (SID_NAME = dcsopen) ) ) ADR_BASE_DCSOPEN = /opt/app/ora11g 或 DCSOPEN = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 172.101.19.57)(PORT = 1521)) ) (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC)) ) ) ) SID_LIST_DCSOPEN = (SID_LIST = (SID_DESC = (SID_NAME = PLSExtProc) (ORACLE_HOME = /opt/app/ora11g/product/11.2.0/dcsopen) (PROGRAM = extproc) ) ) ADR_BASE_DCSOPEN = /opt/app/ora11g 2. 添加本机的tnsnames.ora文件配置: dcsopen = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 172.101.19.57)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = dcsopen) ) ) 3. 使用tnsping dcsopen测试,报错: ora11g>tnsping dcsopen TNS Ping Utility for Linux: Version 11.2.0.1.0 - Production on 08-JAN-2015 00:38:55 Copyright (c) 1997, 2009, Oracle. All rights reserved. Used parameter files: /opt/app/ora11g/product/11.2.0/dcsopen/network/admin/sqlnet.ora TNS-03505: Failed to resolve name 4. 使用sqlplus登
操作环境:Citrix虚拟化环境中申请一个Linux6.4主机(模板) 目标:创建单机11g + ASM存储 数据库
作者 杨禹航 出品 沃趣技术 PDB数据库的创建可以从现存的数据库中复制数据文件,包括种子容器、可插拔数据库、non-CDB数据库,创建时可以使用CREATE PLUGGABLE、RMAN、DBCA以及EM等。 在12.1版本中在创建PDB时,Source PDB必须处于read only状态,在12.2版本中,因为undo local mode新特性的推出,在创建PDB时,Source PDB在read write状态,依然可以创建。 另外在12.2版本中Oracle推出了refresh PDB特
最近同事报料,数据库无法执行一些关于数据字典的查询。即使是查询dba_users都会出现错误。从错误日志来看,全部是数据字典的一些错误信息,而用户数据还是ok的。Google了一下,看了看metalink,需要重建数据字典。那就执行catalog.sql吧。晕,竟然连执行这个SQL语句都报错!数据没有备份呢,汗!!! 如果你也是无法成功执行catalog.sql,接着往下看。
可以发现,ORA-600是Oracle的内部错误,无法从错误代码提示上看出什么问题。
最近的工作中需要基于Oracle连接到SQLserver2014,我们可以通过配置Gateway的方式来实现这个功能。这个Gateway的实质是透过dblink来实现的。即把SQLserver模拟成一个远端的Oracle实例,这个实例由Gateway来负责进行接收,转发等等。本文简要描述其配置过程。
领取专属 10元无门槛券
手把手带您无忧上云