Troubleshooting Start HAS fail “Operating System function: opendir failed with error data: 2 error location: scrsearch1”

一套Oracle 11G standalone环境数据库文件在ASM中,几年没有重启的老系统,操作系统重启后,启动HAS服务失败, 提示如下错误:
as root

# /u01/app/11.2.0.3/grid/bin/crsctl start has
CLSU-00100: Operating System function: opendir failed with error data: 2
CLSU-00101: Operating System error message: No such file or directory
CLSU-00103: error location: scrsearch1
CLSU-00104: additional error information: cant open scr home dir scls_scr_getval
CRS-4000: Command Start failed, or completed with errors.

Oracle to openGauss: SQL语法兼容性中的中文(全角)符号

最近有项目从oracle迁移到openGuass后存在部分应用SQL提示语法不兼容问题, 后发现SQL中在原oracle执行中包含中文逗号”,”做为查询列的分隔符, 以我对oracle的认识oracle不太可能支持中文SQL语法, 找应用常用的plsql developer工具演示了一下,果然支持中文逗号,甚至还支持中文的括号,或一半中文一半英文如”()”. 但是这种SQL在mysql, postgresql, openguass是都不支持的

Exadata OS reboot dev_watchdog call Trace show “dev_deactivate_queue run_timer_softirq cpuidle_enter_state”

近日一客户Exadata Machine节点总是会不定理重启,在DB和GI层无错误日志,类突然断电或无响应重启, 分析OS message日志显示如下信息。
WARNING: CPU: 2 PID: 0 at net/sched/sch_generic.c:334 dev_watchdog+0x228/0x22c
Apr 7 12:49:37 xd08anbob03 kernel: Modules linked in: oracleacfs(PO) oracleadvm(PO) oracleoks(PO) ipmi_poweroff scsi_transport_iscsi

经典面试题:部门最高工资的的员工在PostgreSQL(或openGuass)有了新SQL语法

子曰:“君子谋道不谋食。耕也,馁在其中矣;学也,禄在其中矣。君子忧道不忧贫。” , 回顾我的DBA生涯,从2006接触管理SQL Server 2000到2009年开始管理Oracle, 只问耕耘,错过了一些跳跃机会,清晰记的2009年1次想跳槽面试的一次经历,当时就有这道笔试题,我写了3种答案

如何最短停机时间在openGauss(和PostgreSQL)更改列类型

在数据库日常运维中难免会随着Table数据量f增加,原来的数据类型需要修改,在Oracle如是加长兼容的列类型可以直接修改元数据,而其它提示列上有数据不允许修改,在MySQL和PG,openGauss中修改列如从int 到bigint时会导致表数据reload, 在之前“alter table ” modify column in Oracle、MySQL、PostGreSQL(数据库比较系列十三) 笔记有记录这一现象,而如果表已经很大,该操作可能从空间与业务连续的影响时间上都比较大,前不久看到一种方法觉的不错简单记录一下。

How to find partition Gap of range table in PostgreSQL database?(缺失分区)

范围分区是大型数据库中常用的Table类型, 如按时间维度划分方便后期的周期清理,在Oracle中range分区只需指定分区的上限(less than),而在PostgreSQL中的分区比较另类,需要指定分区的上限和下限区间,而这种涉及就有可能存在一个问题,超出分区的范围除了表级最小和最大时间,在PostgreSQL中还有可能因为条件不连续存在分区之间的GAP,如以天为分区, 分区界限是2023/03/01, 2023/03/02, 2023/03/04, 缺失 2023/03/03分区

Troubleshooting Linux high %iowait and many Processes stuck in D state

一套医院的Oracle数据库用户平时并发并不高,但时长出现数据库无法响应,导致应用活动并发数逐渐增加,OS load能达大几百甚至1000+, 这是一个4物理CPU,144core的硬件,CPU usage sys和user并不高,数据库查询v$session活动会话高时event是大部分进程on cpu, 操作系统层是%iowait高,

Troubleshooting oracle 11.2.0.4 RAC crsd.bin is not running after replace VD and OCR(Storage device)

环境oracle 11.2.0.4 2-nodes RAC on linux, 客户做了存储设备更换,像RAC 依赖的设备VD/OCR 通过增加NEW ASM DISKGROUP方式替换,做完以后当时RAC资源都正常,此日重启CRS服务发现crsd.bin进程一直失败,两个节点相同CRS无法启动,CSSD、GIPC\GPNP均启动正常,但ASM实例启动正常,DB手动启动也可以正常open, 后分析crs日志发现crs为启动后crash, 这里简单记录该问题。

Troubleshooting Oracle 11.2.0.4 高并发insert等待 ‘enq: HW – contention’后分配大量空extent

环境11.2.0.4 RAC,表空间耗尽大量insert并发等待enq: HW, 增加30数据文件后,但很快空间再次接近耗尽,后分析增长最大的segment时发现了新增加的数据文件被insert的segment分配大量extent,但都是unused block,存在重复提升High water Mark现象,通常extent是用完后再allocate new extent,这种大量创建空extent的现象属于软件bug.

如何在麒麟Kylin Linux V10 SP1静默安装 Oracle 11g (11.2.0.4)单实例

最近信C进程加速, 一些行业可能面临替换CentOS、RedHat linux的ZZ任务, Oracle可能还要3-4年的缓和期,当前Oracle官方在12c已经增加了对中标麒麟的认证, 但目前没有任证的OS如果基于centOS的货也可以安装并运行生产环境, 在Kylin V10安装了个单实例oracle 11.2.0.4还算不复杂,下面简单分享

Alert behavior changed from 11.2.0.4 “create or replace view” fail with ORA-01720

今天有个同事咨询,发现在11.2.0.4以后的版本create or replace view 修改view 视图时,即使view owner当前用户是dba role也无法create or replace方式重建view,如当前用户u1把select on u1.t1 给u2(without grant option), 用户u2创建 view 给了u3 select 查询. 按说u3对u1.t1是当前没有级联授权,所以u2在编辑view时会报错ORA-01720,而在11.2.0.3之前是正常编辑,但行为是不正确的, 从11.2.0.4以后已做修正。

Oracle 数据库安全性评估工具 (DBSAT) 小试

Oracle 数据库安全性评估工具Oracle Database Security Assessment Tool (DBSAT) 可提供专业建议,助您降低 Oracle 数据库的安全风险或漏洞威胁。使用 DBSAT,您可以通过数据库当前状态评估(包括配置)和敏感数据发现等功能,全面洞察数据库的安全和合规态势。DBSAT区分 Oracle on-premises 数据库、自治数据库(共享和专用)和 DBCS,根据数据库目标类型,DBSAT 执行不同的检查项

Linux message show “systemd-logind: Failed to start user slice xx, The maximum number of pending replies per connection has been reached”

最近操作系统的问题有点多,上周有套Oracle数据库RAC部分节点的日志在频繁输出“systemd-logind: Failed to start user slice user-1002.slice, ignoring: The maximum number of pending replies per connection has been reached (org.freedesktop.DBus.Error.LimitsExceeded)” 信息,找我协助分析一下。