Oracle
文章平均质量分 58
Oracle相关知识原理与运维技巧
DBA大董
不会编程的DBA,
Oracle,MySQL,PostgreSQL,TDengine,Influxdb,时序数据库,关系数据库 全不精通。
展开
-
ORA-55610: Invalid DDL statement on history-tracked table
错误原因表空间无法进行DDL操作,主要是因为之前有表设置了flashbackarchive。查询哪些表启用了flashbackarchive。处理办法取消flashbackarchive。取消flashbackarchive。至于为啥会报错,参考Oracle。原创 2022-08-01 17:22:25 · 1737 阅读 · 0 评论 -
DataGuard日常维护常见问题之数据同步异常
如果日志只是临时移动到其他地方,过后会再移回原路径,则不用这么大费周折手工去手工处理了,把日志拷回原处后FAL会自动处理GAP。用tnsping两个数据库是否正常,如果没有问题,在primary数据库日志切换一次,看standby是否接收到归档日志了。1、一般通过以下语句查看primary数据库和standby数据库的归档日志的sequence是否一样。当DG出现故障时,第一时间检测alert日志,服务器OS日志,网络是否通畅。如果把日志移动到其他路径,则把日志所在路径换成当前实际所在路径。...原创 2022-08-01 17:04:27 · 2207 阅读 · 0 评论 -
CentOS 结束支持了新BP发行版又出现了AlmaLinux
大家估计都知道了,CentOS不在紧跟(copy)RHEL了。那么我们下一步该免费使用哪个发行版了呢?先看一下Linux的发行版本都有哪些看样子还是蛮多的嘛。看网上很多同学推荐Debian系的,尤其是Ubuntu,毕竟开发同学都喜欢。不过,既然之前用的是CentOS,再转换到Debian/Ubuntu,不少同学还是多少有一点手潮。那么新的选择出现了::AlmaLinx看介绍,这哥们就是顶CentOS的缸的,连界面都差不多。不过,又是不过,这个是从8.3开始,现在发布是8.5。RHEL原创 2022-01-08 16:05:56 · 2487 阅读 · 0 评论 -
DataGuard主从切换Switchover&Failover
DataGuard主从切换1.DataGuard Swithover1.1.验证主库是否可进行切换为备库1.2.在主库进行切换1.3.关闭主库并启动到mount1.4.验证备库可以切换角色1.5.切换备库角色为PRIMARY1.6.启动新主库1.7.在新备库启动同步1.8.在新备库查看同步状态2.DataGuard Failover2.1.将未投递日志传输到备库2.2.确认备库日志应用状态2.3.停止日志同步2.4.应用所有日志2.5.验证备库可以切换角色2.6.切换备库角色为PRIMARY2.7.打开数据原创 2021-03-13 17:42:54 · 5211 阅读 · 0 评论 -
DataGuard ORA-01111 问题处理
DataGuard ORA-01111 问题处理ADG,DG 数据文件名称未知原创 2021-03-13 17:13:09 · 5606 阅读 · 1 评论 -
Oracle RAC 修改VIP和SCANIP
Oracle RAC 修改VIP和SCANIP1.停止集群服务2.修改系统配置(Linux)3.修改PUBLIC IP4.修改VIP5.修改SCANIP6.验证集群服务7.修改数据库配置8.将服务设置为自启动1.停止集群服务root# srvctl disable database -d testdbroot# srvctl disable scan_listener root# srvctl disable scanroot# srvctl disable listener -n test1r原创 2021-03-13 15:53:25 · 5850 阅读 · 0 评论 -
Oracle Redo Log和CheckPoint详解
Oracle Redo Log和CheckPoint详解1.Redo Log1.1.REDO LOG 的作用1.2.update事务流程1.3.LogBuffer写入Redo Log的条件:1.4.LGWR写的具体过程:1.5.redo log的6种状态2.CheckPoint2.1.CheckPoint主要作用:2.2.CheckPoint发生的条件:2.3.CheckPoint相关参数2.4.CheckPoint相关视图1.Redo Log1.1.REDO LOG 的作用1).记录Oracle数据原创 2021-03-12 17:11:20 · 5966 阅读 · 0 评论 -
ORACLE log_buffer
ORACLE log_bufferLOG_BUFFER (11.2)LOG_BUFFER (10.2)log_buffer 日志缓冲区是日志信息在内存中临时存放的区域,这些内存块都是循环使用的,当缓冲区内容写入redo文件后,内存被重新利用。LogBuffer写入Redo Log的条件:1).用户提交commit2).有1/3重做日志缓冲区未被写入磁盘(可以通过修改_LOG_IO_SIZE参数来控制 )3).有大于1M的重做日志缓冲区未被写入磁盘4).每隔3 秒钟5). DBWR 需要写入的原创 2021-03-12 16:46:39 · 6965 阅读 · 0 评论 -
Oracle数据库中processes参数设置
PROCESSES 为连接Oracle数据库的最大进程数,该值包括了所有后台进程和并发进程。processes参数不建议设置特别大,因为当数据库实例启动时,会预先为每个process分配内存和信号量,如何将process设置特别大,会造成启动失败。建议将processes设置为高峰会话数+50%。不同版本会话数量与processes对应关系如下:11g sessions=(1.1 * PROCESSES) + 518c sessions=(1.5 * PROCESSES) + 2219c sess原创 2021-03-07 14:44:38 · 10380 阅读 · 2 评论 -
Oracle跨平台迁移之XTTS
Oracle迁移前环境检查xtts相关限制xtts迁移步骤迁移完成检查与校验问题处理原创 2021-03-07 14:22:27 · 6995 阅读 · 2 评论 -
Oracle迁移前环境检查
查询无效对象SELECT OWNER, OBJECT_NAME, OBJECT_TYPE FROM DBA_OBJECTS WHERE STATUS <>'VALID' ORDER BY OWNER, OBJECT_TYPE, OBJECT_NAME;检查无效索引SELECT OWNER, INDEX_NAME, STATUS FROM DBA_INDEXES WHERE STATUS <>'VALID' ORDER BY 1,2;外部表检查SELECT DISTI原创 2021-03-07 13:57:49 · 5541 阅读 · 0 评论 -
Oracle常用SQL:查询用户密码修改时间
查看用户密码是否被修改 user$CTIME NOT NULL DATE 创建时间PTIME DATE 修改时间EXPTIME DATE 过期时间LTIME DATE 锁定时间select to_char(ctime,'YYYY-MM-DD HH24:MI:SS') ,create_timeto_char(ptime,'YYYY-MM-DD HH24:MI:SS') change_time,to_char(exptime,'YYYY-MM-DD HH24:MI:SS') expire_tim原创 2021-03-07 13:45:40 · 6596 阅读 · 0 评论 -
Oracle监听日志listener.log清理
Oracle的监听日志listener.log当增长到一定大小时,会造成后续的日志无法写入,但不会报任何错误。在笔者遇到的情况中,有时listener.log增长到4G,新的日志便无法写入,但有些时候listener.log增长到10G以上,仍然能正常写入。这大概是Oracle的一个BUG。监听日志的清理直接删除或使用echo清理监听日志,会造成日志无法被写入的情况。正确的清理方法如下:su - grid##停止监听日志写入lsnrctl set log_status off##备份监听日志原创 2021-03-06 14:52:30 · 6362 阅读 · 2 评论 -
DATAGUARD中db_file_name_convert和db_create_file_dest
在dataguard的配置中,db_file_name_convert是比较常用的参数。如果备库中参数db_create_file_dest未设置,则数据文件路径转换是由参数db_file_name_convert决定。当参数db_file_name_convert和db_create_file_dest都设置时,则只有db_create_file_dest生效。db_create_file_dest的优先级要高于db_file_name_convert。同样在ADG搭建时,如果设置了db_create原创 2021-03-05 21:22:50 · 6457 阅读 · 1 评论 -
ORA-27300,ORA-27301,ORA-27302,ORA-27303 一起由信号量引发的故障
问题描述:服务器上有3个实例,之前processes都是500,按照业务要求,将processes均修改为2000,结果导致数据实例无法启动,报错:Errors in file/u01/app/oracle/diag/rdbms/eizb/eizbl/trace/eizb1_1899898.trc:ORA-27152: attempt topost process failedORA-27300: OS system dependentoperation:semop failed with stat原创 2021-03-05 21:12:39 · 6438 阅读 · 0 评论 -
由AUDSID引发的问题
在使用ADG进行读写分离的时候,备库偶尔会报无法连接,而且无法连接的用户具有随机性。经检查发现主库上面有个trigger用于屏蔽dblink,而判断条件与audsid有关。由于备库是只读的,所以所有登录的用户使用同一个audsid号(4294967295),因此造成了trigger判断错误。那么audsid到底是做什么的呢?AUDSIDAUDSID由SYS.AUDSES$这个SEQUENCE产生,当有一个新的会话产生,其AUDSID的值即为这个SEQUENCE的NEXTVAL。Oracle 10g之前原创 2021-03-05 07:42:54 · 5677 阅读 · 2 评论 -
crfclust.bdb文件过大处理
crfclust.bdb文件过大ora.crf简介如何清理过大的文件crfclust.bdb 文件是Oracle CRF 服务用于存储数据的文件,默认只存储一定时间数据,正常情况不会增长过大。但大家都知道,bug可以有无限可能。ora.crf简介CHM.Cluster Health Monitor(以下简称CHM)是一个Oracle提供的工具,用来自动收集操作系统的资源(CPU、内存、SWAP、进程、I/O以及网络等)的使用情况。CHM会每秒收集一次数据。这些系统资源数据对于诊断集群系统的节点重启、H原创 2021-03-05 07:28:38 · 7620 阅读 · 1 评论