Oracle数据库无论是在安装还是运行,都涉及到与周边软硬件的各种联系。一套健康的数据库系统,要想顺利安装并且平稳运行,都需要
Oracle数据库无论是在安装还是运行,都涉及到与周边软硬件的各种联系。一套健康的数据库系统,要想顺利安装并且平稳运行,都需要各方面周边组件的配置调整。一旦某个方面存在问题,一些想当然的过程都会出现问题。
本篇记录了最近遇到的两个问题,记录下来,留待不时之需。
--------------------------------------分割线 --------------------------------------
在CentOS 6.4下安装Oracle 11gR2(x64)
Oracle 11gR2 在VMWare虚拟机中安装步骤
Debian 下 安装 Oracle 11g XE R2
--------------------------------------分割线 --------------------------------------
1、Oracle OCM作业运行报错ORA-29280
一个同事系统中出现小故障,笔者协助帮助查看。由于系统总体负载很低,也没有明显的功能影响点,笔者也没有直观的思路。一般而言,从alert log中我们可以按照时间关系查看到Oracle的重要问题现象。
从日志情况中,却发现了一些其他问题。
Mon Jun 02 22:00:08 2014
Errors in file /u01/app/oracle/diag/rdbms/dt/MM/trace/MM_j001_43954.trc:
ORA-12012: error on auto execute of job "ORACLE_OCM"."MGMT_CONFIG_JOB_2_1"
ORA-29280: invalid directory path
ORA-06512: at "ORACLE_OCM.MGMT_DB_LL_METRICS", line 2436
ORA-06512: at line 1
在系统数据库运行过程中,基本每天夜间22点都会有这个报错出现。系统负载很低(日志切换并不频繁),除此之外没有明显的错误。
22点对于Oracle而言是一个重要的时间点,进入10g之后,Oracle夜间都会自动调度一些维护作业,来确保数据库顺利高效运行。这些作业中,最有名的就是统计量自动收集作业,,夜间对新对象或者变化频繁对象进行数据统计量收集。
进入11g之后,这种夜间作业机制在不断的强化,但是执行时间窗口有了变化,起始时间调整为夜间22:00开始。我们在日志中看到的报错,就是Oracle OCM(Oracle Configuration Manager)夜间执行的作业之一。
OCM是Oracle内部的一个工作组件,用于提供一些配置参数协助方面的工作。我们安装数据库后,会看到用户schema列表中包括一个名称为ORACLE_OCM的用户名,就是这个组件的内部对应数据用户集合。
根据Oracle MOS的介绍,出现这样的错误是由于Oracle数据库升级过程中的不完全造成的。在OCM进行度量(instrument)过程中,会自动往一些directory目录位置写入信息。如果目录配置有问题,就会引起报错。
一般系统中,我们也可以看到这些默认的目录的。
SQL> select directory_name, directory_path from dba_directories;
DIRECTORY_NAME DIRECTORY_PATH
------------------------------ --------------------------------------------------------------------------------
XMLDIR /u01/app/oracle/rdbms/xml
ORACLE_OCM_CONFIG_DIR /u01/app/oracle/ccr/hosts/SimpleLinux.localdomain/state
DATA_PUMP_DIR /u01/app/admin/ora11g/dpdump/
ORACLE_OCM_CONFIG_DIR2 /u01/app/oracle/ccr/state
在很多情况下,ORACLE_OCM_CONFIG_DIR2目录中是会写入一些数据的。如果这个目录配置有问题或者不存在,就会出现作业报错的情况。
了解了问题原因,解决之道就比较容易了。和其他元数据损坏处理方法相同,或者执行安装脚本,重新安装组件,或者禁用组件运行。
下面是进行OCM目录配置的方法步骤。说明:由于环境所限,笔者没有进行实际测试,下列脚本在第三方环境中进行。
首先运行脚本检查OCM配置安装情况。
[oracle@SimpleLinux ~]$ cd $ORACLE_HOME/ccr/bin
[oracle@SimpleLinux bin]$ ls -l | grep deploy
-rw-r--r--. 1 oracle oinstall 48758 Jun 5 2013 deployPackages
[oracle@SimpleLinux bin]$ chmod 755 deployPackages
[oracle@SimpleLinux bin]$ ./deployPackages -l
The Oracle Configuration Manager state/writeable directory structure is incomplete.
OCM is not configured for this host or ORACLE_CONFIG_HOME. Please configure OCM first.
根据笔者环境的提示,OCM没有在笔者服务器进行配置,如果配置了,就会显示如Step2的提示内容。
第二步是执行脚本创建OCM directory对象和授予权限。
SQL> conn / as sysdba
Connected.
@ORACLE_HOME/ccr/admin/scripts/ocmjb10.sql
@ORACLE_HOME/ccr/admin/scripts/execute execocm.sql
最后确定directory创建情况。
SQL> select directory_name, directory_path from dba_directories where DIRECTORY_NAME like '%OCM_CONFIG%';
DIRECTORY_NAME DIRECTORY_PATH
------------------------------ --------------------------------------------------------------------------------
ORACLE_OCM_CONFIG_DIR /u01/app/oracle/ccr/hosts/SimpleLinux.localdomain/state
ORACLE_OCM_CONFIG_DIR2 /u01/app/oracle/ccr/state
注意:要求DIR2是存在的。
第二种方法更加简单,如果确定系统不需要OCM运行,可以关闭这个作业执行。毕竟多一事不如少一事,当然这个需要确认系统不需要OCM的运行。
删除ORACLE_OCM用户schema,或者禁用job作业。
exec dbms_scheduler.disable('ORACLE_OCM.MGMT_CONFIG_JOB')
exec dbms_scheduler.disable('ORACLE_OCM.MGMT_STATS_CONFIG_JOB')
这个案例并不难解决,但是告诉我们一点:对系统的维护过程,要是全方面的。定期查看系统运行日志,及时发现潜在问题,解决问题很重要。让数据库“带伤”运行,未来会带来一些意想不到的问题。
更多详情见请继续阅读下一页的精彩内容:

本篇文章给大家带来了关于mysql的相关知识,其中主要介绍了关于索引优化器工作原理的相关内容,其中包括了MySQL Server的组成,MySQL优化器选择索引额原理以及SQL成本分析,最后通过 select 查询总结整个查询过程,下面一起来看一下,希望对大家有帮助。

sybase是基于客户/服务器体系结构的数据库,是一个开放的、高性能的、可编程的数据库,可使用事件驱动的触发器、多线索化等来提高性能。

visual foxpro数据库文件是管理数据库对象的系统文件。在VFP中,用户数据是存放在“.DBF”表文件中;VFP的数据库文件(“.DBC”)中不存放用户数据,它只起将属于某一数据库的 数据库表与视图、连接、存储过程等关联起来的作用。

数据库系统由4个部分构成:1、数据库,是指长期存储在计算机内的,有组织,可共享的数据的集合;2、硬件,是指构成计算机系统的各种物理设备,包括存储所需的外部设备;3、软件,包括操作系统、数据库管理系统及应用程序;4、人员,包括系统分析员和数据库设计人员、应用程序员(负责编写使用数据库的应用程序)、最终用户(利用接口或查询语言访问数据库)、数据库管理员(负责数据库的总体信息控制)。

microsoft sql server是Microsoft公司推出的关系型数据库管理系统,是一个全面的数据库平台,使用集成的商业智能(BI)工具提供了企业级的数据管理,具有使用方便可伸缩性好与相关软件集成程度高等优点。SQL Server数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使用户可以构建和管理用于业务的高可用和高性能的数据应用程序。

数据库的“完整性”是指数据的正确性和相容性。完整性是指数据库中数据在逻辑上的一致性、正确性、有效性和相容性。完整性对于数据库系统的重要性:1、数据库完整性约束能够防止合法用户使用数据库时向数据库中添加不合语义的数据;2、合理的数据库完整性设计,能够同时兼顾数据库的完整性和系统的效能;3、完善的数据库完整性有助于尽早发现应用软件的错误。

结构层次是“数据库→数据表→记录→字段”;字段构成记录,记录构成数据表,数据表构成了数据库。数据库是一个完整的数据的记录的整体,一个数据库包含0到N个表,一个表包含0到N个字段,记录是表中的行。

mysql查询为什么会慢,关于这个问题,在实际开发经常会遇到,而面试中,也是个高频题。遇到这种问题,我们一般也会想到是因为索引。那除开索引之外,还有哪些因素会导致数据库查询变慢呢?


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

DVWA
Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。

Dreamweaver Mac版
视觉化网页开发工具