![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库运维-Oracle
Oracle日常故障处理
戒掉贪嗔痴(薛双奇)
10年以上DBA从业经验,Oracle ACE,中国DBA联盟成员,青学会专家顾问,Oracle,MySQL,PostgreSQL DBA,大数据运维工程师。
熟悉20种数据库的运维及管理:横跨关系数据库,NoSQL数据库,搜索引擎,大数据等。
获得IT类认证十几张。
擅长数据库系统架构涉及,容量规划,灾备系统建设,故障诊断及性能优化。
展开
-
【Oracle】RAC修改监听端口
【代码】【Oracle】RAC修改监听端口。原创 2024-05-27 10:31:33 · 413 阅读 · 0 评论 -
58.TNS-12537: TNS:connection closed
主库的sqlnet.ora 里面需要添加备库的IP地址,允许备库连接。这里不能连接的原因是,防火墙限制,所以总是连接中断。在备库上tnsping 主库的 pzbz 连接串,老师报TNS-12537.1.oracle防火墙是开着的。原创 2024-05-27 10:30:40 · 100 阅读 · 0 评论 -
【Oracle】来自ACE们的技术分享
每个人都谈论了自己对于Oracle数据库的理解。Oracle无疑是当前世界上超强的数据库,其强大的查询改写功能,能够为开发人员编写的SQL进行深入优化,使其能够发挥出最好的性能。本次主讲的几位老师分别是:薛晓刚(首席架构师OracleACE),戴明明(OracleACE),尹海文(OracleACE),施嘉伟(OracleACE),薛双奇(OracleACE).OracleACE是Oracle公司给到在Oracle领域有重要贡献的人,宣传Oracle技术,参加Oracle社区,出版Oracle相关的书籍。原创 2024-04-10 21:17:44 · 267 阅读 · 0 评论 -
【Oracle】alert.log 出现 Resize Operation Completed For File# (Doc ID 1982901.1)
Oracle 12.1.0.2 版本及以后,出现该信息,可以用于DML的诊断,例如系统繁忙时可以明显看到文件的扩展情况。1.alert.log日志内容如下。--禁用这类日志输出。3.通过隐含参数控制。原创 2024-03-08 09:27:17 · 453 阅读 · 0 评论 -
【Oracle】主备同步密码文件的dm5码必须相同码?
在oracle的主备同步中,我们一般会直接把主库的密码文件拷贝到备库,确保主备库的密码文件相同。但是还有一种方法,那就是手工创建备库的密码文件,手工创建的密码文件的dm5码可能和主库的密码文件的md5码值不相同,但是里面存储的密码是相同的。在主从同步中,只要密码文件保存的sys用户的密码相同即可。,一般为了方便,会直接从主库拷贝密码文件。由此我们可以知道,手工创建密码文件也是可以的。不必要求主备库的密码文件的dm5码必须相同。2.关于密码文件的测试可以使用如下命令。原创 2024-03-04 10:10:59 · 412 阅读 · 0 评论 -
【Oracle】ORA-00600: 内部错误代码, 参数: [25027], [7], [0]
【代码】【Oracle】ORA-00600: 内部错误代码, 参数: [25027], [7], [0]原创 2024-02-29 13:34:22 · 650 阅读 · 0 评论 -
【Oracle】expdp-ora-01555
EXPDP 执行时报错:ORA-01555,常见问题就是BLOB或CLOB字段损坏。BLOB或CLOB字段损坏。1.expdp备份报错。原创 2024-02-28 21:13:55 · 576 阅读 · 0 评论 -
【Oracle】ORA-01552: cannot use system rollback segment for non-system tablespace
1.执行某些操作时报错。原创 2024-02-28 17:45:58 · 632 阅读 · 0 评论 -
【Oracle】ORA-19505: failed to identify file “/chac/app/oracle/product/11.2.0/db_1/dbs/orapwcoredb2
1.RAC->单机同步报错。原创 2024-02-28 14:14:22 · 553 阅读 · 0 评论 -
【Oracle】81.生产环境CATALOG损坏修复及常用的RMAN LIST命令
只要当前库建立了CATALOG,无论是否指定CATALOG,还是NOCATALOG,都会将备份信息注册到CATALOG里面。而远程没有建立CATALOG的数据库,则可以通过CATALOG rman/rman@rman关键词连接到CATALOG服务器的CATALOG目录。1.新建CATALOG使用的表空间。4.关于CATALOG的使用。3.查看注册的数据库的情况。3.注册需要管理的数据库。2.创建CATALOG。原创 2024-02-22 14:30:52 · 355 阅读 · 0 评论 -
【Oracle】80.处理临时表空间满的利器-shrink
从Oracle 11g开始,可以使用Shrink命令收缩临时表空间和临时文件,数据库在使用一段时间后,尤其是存在频繁的imp/exp操作以及排序操作时,2.方法一:指定临时文件的名称收缩临时文件:效果非常好。也可以使用Resize命令对数据文件进行大小进行调整。4.方法三:修改临时文件大小:效果不好,直接夯死。临时表空间就会越来越大,对应的数据文件也会很大。3.方法二:直接收缩临时表空间:效果非常好。建议使用如下两种方法搜索临时表空间。1.查看临时表空间数据文件大小。原创 2024-02-20 14:01:56 · 590 阅读 · 0 评论 -
79.ORACHK 巡检工具的使用
orachk 工具,虽然可以收集信息,但是仅限于操作系统和数据库参数,组件,补丁,等信息的访问。缺少数据库内部对象的信息。例如表空间,表大小,数据库大小等。需要结合自定义脚本进行巡检。3.root用户收集巡检数据。原创 2024-01-30 18:30:41 · 383 阅读 · 0 评论 -
78.ORION 工具测试Oracle IO性能
也可以使用fio ,这个工具测试的是文件系统,而非磁盘。两者互补,都可以测试磁盘IO性能。测试IO性能,可以使用Orion,但它测试的是磁盘,而不是文件系统。2.下载orion_linux_x86-64.zip。简单测试及DSS测试:如下两个命令均可运行。假如测试SDA的性能。5.跑一个OLTP的测试。4. 8K随机读测试。1.Orion是什么。原创 2024-01-30 17:13:10 · 569 阅读 · 0 评论 -
77.使用SSD收集oracle系统状态信息DUMP
SYSTEM STATE DUMP(SSD)对于系统级等待夯死是非常好的工具,可以收集所有oracle系统进程的状态,等待的事件等等。可以在极端故障时,先收集SSD信息,然后处理问题,便于后续分析。2.收集当前数据库系统的SYSTEM STATE DUMP(SSD)--(1)开头部分是等待事件及阻塞相关的信息。可以看到PMON进程的等待事件。3.检查SSD都收集了什么信息。4.找个一个进程查看收集的内容。(2)PMON进程的状态查看。1.什么是SSD?原创 2024-01-30 09:47:58 · 515 阅读 · 0 评论 -
76.临时表空间数据文件损坏修复
-2021年,通过备库恢复的方式创建数据库的时候遗留的问题。--11g单机,无法查询临时表空间。6.删除旧的损坏的临时表空间。1.老核心系统临时表空间查看。4.trace 文件查看。5.修改用户的临时表空间。7.重新查询临时表空间。3.检查用户的表空间。原创 2024-01-26 17:59:52 · 366 阅读 · 0 评论 -
75.导入报错:ORA-31644: 无法定位块编号 549045
impdp:ORA-31644: 无法定位块编号 549045,错误基本都是文件损坏导致。md5码不一样,同时询问发现,是文件传输过程失误,原文件大小2G,收到的只有700多M.1.导入报错:ORA-31644: 无法定位块编号 549045。所以导入失误就很正常了。3.检查文件的md5码。原创 2024-01-26 14:51:49 · 635 阅读 · 0 评论 -
74.ORA-16191问题修复&基于SCN增量修复DG
基于SCN的增量修复是快速修复DG的有效方法,其底层原理是基于块级别的复制,类似增量备份,然后量部分内容进行合并。3.使用增量备份恢复的方法修复从库。--查看备份的起点:最小的SCN;4.启动同步进程,检查同步状态等。3.主库端基于scn的增量备份。从库的ALERT日志。原创 2024-01-25 14:14:32 · 480 阅读 · 0 评论 -
74.如何判断Oracle备库是否同步
视图有值,都代表从库异常。2).相同的线程号:RFS进程对应的序列号与MRP0 进程对应的序列号相差较大。1).如果RFS进程不在这个视图里面。满足如下任意一个则表示从库异常。2.oracle主从监控。原创 2024-01-17 21:51:50 · 574 阅读 · 0 评论 -
73.备库参数standby_file_management=manual导致的../dbs/UNNAMED00146
对于Oracle DataGaurd备库,alter system set standby_file_management=auto;参数需要设置为auto,除非是需要手工处理一些文件方面的问题,可以临时修改为 manual,其他任何时候都应该设置为auto,否则就会出现如上问题。1.standby_file_management=MANUAL,导致从库接收到的主库的日志文件异常。基于控制文件的名字,创建一个新的数据文件,并放置在正确的位置。原创 2024-01-17 10:53:33 · 490 阅读 · 0 评论 -
72.Oracle sys用户密码变更导致DataGaurd备库不同步&归档不传输
检查发现密码的DM5码不相同,RAC1,RAC2,DG库都设置同一个密码文件。同时DG备库恢复,这里主要原因是修改完sys密码导致密码文件的dm5变更。(2).密码文件的DM5不相同,特别是主库修改过sys密码.1.从库没有RFS进程,未拉去主库最新的日志文件。主库连接备库通过dm5码进行匹配。(3).其他参数配置错误。(1).监听未启动。原创 2024-01-17 10:46:32 · 420 阅读 · 0 评论 -
71.Oracle11g/Oracle19C DataGuard同步的差异
-应当归档+在线日志。--应当归档+在线日志。1.oracle恢复DG备库需要的几个命令。Oracle12c之后:(推荐)原创 2024-01-16 11:13:21 · 462 阅读 · 0 评论 -
70.Oracle11g/Oracle19C数据库密码过期问题处理
自定义用户的密码保存字段是:sys.user$.SPARE4,过期时间字段是:sys.user$.EXPTIME,oracle11g和oracle19c的密码管理相关的字段有所变更,如果需要定期修改密码,则需要注意这个差异。密码的修改时间:sys.user$.PTIME,系统自带的用户的密码过期时间为空,即不过期。修改密码后,密码的过期时间变为空。--生产密码过期时间小于30天的用户的密码修改语句。2.针对Oracle 19C密码过期问题处理;--针对Oracle11g密码过期问题处理。原创 2024-01-16 10:47:55 · 718 阅读 · 0 评论 -
69.Oracle主从同步之密码问题
虽然oracle可以通过主备同步来同步sys用户的密码,但是主从同步是通过密码文件验证,所以如果主库修改了sys的密码,那么从库的密码文件也应该相应的同步。同时可以使用md5sum 命名验证密码是否相同,如果密码相同,则md5码相同。主从同步经常遇到主库的sys密码修改,导致从库不同步。从库sys用户的密码必须和主库相同,且有两种方式创建从库的密码文件。(2)在从库创建一个密码文件,密码和主库sys的密码相同。(1)将主库的密码拷贝到从库。原创 2024-01-11 23:11:15 · 455 阅读 · 0 评论 -
68.Oracle ACE 是什么?
考完OCM之后,可以继续学习深入Oracle,写博客发表文章,宣传与Oracle的相关的,同时参加Oracle相关的技术大会。最主要的一点是可以就Oracle使用过程中有不合理的地方,或需要改进的地方可以直接给Oracle提建议。申请个ACE,我也是一脸懵逼,于是就申请了,没想到最近突然就收到Oracle ACE A审批通过的消息。我是没怎么想过成为Oracle ACE,只是每次将处理过的Oracle的问题,及处理思路发布为博客。ACE只是在技术领域的更高一级的开始,未来的路还很长,同志还须继续努力。原创 2024-01-10 13:26:03 · 1075 阅读 · 0 评论 -
67.业务反应数据库执行慢
和业务人员交流,该SQL实际执行2个小时。但是我们看到的是5.7小时,同时SQL有4个并发,由此我们断定该执行时间是多个CPU并行执行的总时间。逻辑读达到了31.56T: 4236170089*8K/1024/1024/1024=31.56T,消耗时间:20551/60/60=5.7小时。因此这里的Elapsed Time(s),并不是SQL在单个CPU里面的执行时间,而是多个CPU执行时间综合。上面的问题是多个会话执行同一个SQL夯死了。(3)查看这些SID(会话ID对应的 会话和SQL_ID)原创 2024-01-06 23:33:05 · 376 阅读 · 0 评论 -
66.Oracle PDB和PDB之间的DBLINK 访问
PDB之间访问的前提是先授权,将被访问的表的访问权限授权给PDB的连接用户,即可访问相关的表。(3)把PDBB里面 USERA.TAB1 的访问权限给到 U_PDBB;即使用PDBB里面的U_pdbb用户连接PDBB;(5)如果想要查看 U_PDBB可以访问哪些表。(4)在PDBA里面访问PDBB的数据。1.PDBA 要访问PDBB的内容。原创 2023-12-22 10:09:23 · 481 阅读 · 0 评论 -
65.Oracle自定义监听名称和自定义监听端口
1.设置自定义监听的连接串。原创 2023-12-19 13:59:13 · 361 阅读 · 0 评论 -
64.Oracle19cPDB的创建和删除
创建PDB时需要指定PDB里面一个管理用户,同时指定用户使用的表空间。种子数据库的路径和新的PDB的路径。3.创建自定义用户并授予权限。原创 2023-12-19 09:32:07 · 669 阅读 · 0 评论 -
63.基于Oracle19.14的PDB的静默安装
PDB的名称不能和CDB的名称相同。2.其中可以自定义修改的参数有。1.dbca.rsp文件准备。原创 2023-12-19 09:15:51 · 359 阅读 · 0 评论 -
62.$ORACLE_HOME/.patch_storage是否可以删除
即删除后,无法对打的补丁进行回退。因为回退需要从该目录下拷贝文件。1.此目录为是Oracle打补丁时被替换的文件的备份。原创 2023-12-19 09:09:59 · 428 阅读 · 0 评论 -
61.TNS-00512 地址在使用Oracle监听无法启动
root 49 2 0 6月02?00:00:00 [netns]现在地址被使用无法启动,原因是sqlnet.ora 里面配置了白名单,所以无法启动。至此数据库TNS-00512的问题就解决了。这里无法重启,主要是因为白名单的限制。mv sqlnet.ora sqlnet.ora.bak --备份。(6)重新使用sqlnet.ora 数据库连接白名单。(4)设置local_listener参数。关闭Oracle监听重启,发现无法启动。(1)备份sqlnet.ora。原创 2023-12-18 10:37:53 · 446 阅读 · 0 评论 -
60.ORA-12528: TNS:listener
1.Oracle创建DG备库时,备库无法连接。原创 2023-12-14 15:37:38 · 810 阅读 · 3 评论 -
58.Oracle数据库导入导出用户名和表空间均不相同如何导入
导出表空间:PRICE_DATA_SPACE,导出用户:PRICE_FACTORY,导入表空间:TBS_CLOUD01, 导入用户:SIP_CLOUD_CHAC。1.不同的用户,不同的表空间导入导出。原创 2023-12-07 20:01:02 · 562 阅读 · 0 评论 -
57.oracle如何快速激活DG备库
二、主库损坏,failover切换从库为主库。一、切换DG备库到主库。3.启动到mount。原创 2023-12-03 20:10:42 · 500 阅读 · 0 评论 -
56.如何删除Oracle表空间数据文件
删除要删除的数据文件,然后将移动出去的数据库对象重新移动回来。需要注意,如果有其他的对象也要移动到别的表空间,然后再移动回来。删除数据文件的表空间的基本思路就是将要删除的数据文件中的对象先临时移动到别的表空间。2.生成移动表分区,索引分区,普通表,普通索引的语句。--test表空间10号数据文件删除。3.删除表壳空间的数据文件10。4.重新移动回原来的表空间。原创 2023-12-03 17:51:30 · 944 阅读 · 0 评论 -
55.某大神DGDiagnostic脚本解读
数据库dg状态检查,是否可以切换,保护模式等。线程,密码文件,数据库对应物查看。数据库版本信息查看,当前事件戳。2.相同的方式 ,从库数据收集。3.生成的HTML样例展示。原创 2023-12-03 16:30:05 · 356 阅读 · 0 评论 -
54.RMAN-05001 RMAN复制数据文件名称冲突
db_file_name_convert 文件配置错误。源端和目标端配置相同。当db_file_name_convert 配置错误时,就会出现文件名称冲突。1.duplicate 报错。原创 2023-12-03 15:25:29 · 468 阅读 · 0 评论 -
53.一次使用ll 无法查看oracle数据文件的乌龙事件
3.原因:创建数据文件时文件名末尾包含一个空格,如果不使用补全键(Tab)是看不到的。我们使用全复制直接查看,当前是看不到这个文件的。数据文件确实存在,但是ll 却无法查看。起初以为是数据文件损坏了。我们使用了逻辑备份,发现也可以正常备份。创建数据文件时,进行不要有任何的空格,按照规范来,否则容易造成误解。对数据文件进行重命名时发现数据文件不存在。2.查看表空间数据文件大小,也是正常的。原创 2023-12-02 12:09:50 · 324 阅读 · 0 评论 -
52.Oracle如何修改数据文件的名称
有时候数据文件名称写错了,我们想要修改,可以使用该方法。1.oracle修改数据文件名字(通用方法)非归档模式,在线修改,可能导致不可恢复。2.归档模式下-在线修改数据文件的名称。原创 2023-12-02 11:59:03 · 789 阅读 · 0 评论 -
51.Oracle数据库从shutdow abort到read only
数据库shu immediate 无法关闭,于是使用shu abort 关闭。然后启动再Mount,alter database open read only;--报错,提示需要恢复。再启动到read only;有报错提示需要做数据库恢复。shu abort;2.原因及正确处理方法。原创 2023-11-29 21:49:41 · 376 阅读 · 0 评论