`
chenhongwei0924
  • 浏览: 43648 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论
阅读更多
[Q]执行exec dbms_logmnr_d.build('Logminer.ora','file directory'),提示下标超界,怎么办 
[A]完整错误信息如下, 
SQL> exec dbms_logmnr_d.build('Logminer.ora','file directory')  
BEGIN dbms_logmnr_d.build('Logminer.ora','file directory'); END;  
*  
ERROR 位于第 1 行:  
ORA-06532: 下标超出限制  
ORA-06512: 在"SYS.DBMS_LOGMNR_D", line 793  
ORA-06512: 在line 1  
解决办法为: 
1.编辑位于"$ORACLE_HOME/rdbms/admin"目录下的文件"dbmslmd.sql"  
改变行:  
TYPE col_desc_array IS VARRAY(513) OF col_description;  
为 
TYPE col_desc_array IS VARRAY(700) OF col_description;  
并保存文件 
2. 运行改变后的脚本 
SQLPLUS> Connect internal  
SQLPLUS> @$ORACLE_HOME/rdbms/admin/dbmslmd.sql  
3.重新编译该包 
SQLPLUS> alter package DBMS_LOGMNR_D compile body; 
  
[Q]执行execute dbms_logmnr.start_logmnr(DictFileName=>'DictFileName')提示ORA-01843:无效的月份,这个是什么原因 
[A]我们分析start_logmnr包 
PROCEDURE start_logmnr(  
startScn IN NUMBER default 0 ,  
endScn IN NUMBER default 0,  
startTime IN DATE default TO_DATE('01-jan-1988','DD-MON-YYYY'),  
endTime IN DATE default TO_DATE('01-jan-2988','DD-MON-YYYY'),  
DictFileName IN VARCHAR2 default '',  
Options IN BINARY_INTEGER default 0 );  
可以知道,如果TO_DATE('01-jan-1988','DD-MON-YYYY')失败,将导致以上错误 
所以解决办法可以为 
1、Alter session set NLS_LANGUAGE=American 
2、用类似如下的方法执行 
execute dbms_logmnr.start_logmnr (DictFileName=> 'f:\temp2\TESTDICT.ora', starttime => TO_DATE(  
'01-01-1988','DD-MM-YYYY'), endTime=>TO_DATE('01-01-2988','DD-MM-YYYY'));


[B]第四部分、性能调整[/B] 

[Q]如果设置自动跟踪 
[A]用system登录 
执行$ORACLE_HOME/rdbms/admin/utlplan.sql创建计划表 
执行$ORACLE_HOME/rdbms/admin/plustrce.sql创建plustrace角色 
如果想计划表让每个用户都能使用,则 
SQL>create public synonym plan_table for plan_table; 
SQL> grant all on plan_table to public; 
如果想让自动跟踪的角色让每个用户都能使用,则 
SQL> grant plustrace to public; 
通过如下语句开启/停止跟踪 
SET AUTOTRACE ON |OFF  
| ON EXPLAIN | ON STATISTICS | TRACEONLY | TRACEONLY EXPLAIN 
  
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    SQL 16进制转10进制

    ### SQL 16进制转10进制 #### 知识点概述 本文将详细介绍如何在SQL中实现从十六进制数值到十进制数值的转换。此过程涉及SQL中的字符串操作、数学运算以及条件判断等技术要点。通过本文的学习,读者可以深入理解SQL...

    sql16进制转换10进制

    ### SQL 16 进制转换为 10 进制 #### 背景介绍 在数据库管理和软件开发过程中,经常需要处理不同进制之间的数值转换问题。尤其是在处理存储在数据库中的数据时,有时会遇到需要将16进制表示的数据转换成10进制形式...

    SQL 16进制 转 10进制 ver2 (附建表/插值语句)

    根据提供的标题、描述、标签及部分内容,我们可以了解到这篇文章主要讲述的是如何在SQL环境中将十六进制数字转换为十进制数字。接下来,我们将详细解析这一过程,并解释每一部分的功能与实现方式。 ### 一、创建...

    SQL脚本函数 16进制转换为10进制

    ### SQL脚本函数:16进制转换为10进制 #### 背景介绍 在数据库管理和软件开发过程中,经常需要处理不同进制之间的数值转换问题。尤其是在处理网络协议、加密算法或是数据存储格式时,十六进制与十进制之间的转换...

    SQL语句实现进制转换

    在转换为十进制之后,我们可以使用`HEX`函数(在某些系统中可能为`CONVERT(VARBINARY, ..., 16)`)将数字转换为十六进制。例如: ```sql SELECT HEX(OCT_TO_NUM('77')); ``` 这将返回十六进制字符串`43`,因为`63`...

    16进制转换工具 SQL注入学习小工具 学习

    这个名为"16进制转换工具 SQL注入学习小工具 学习"的压缩包显然是为那些想要深入理解SQL注入攻击和提升16进制转换能力的学习者准备的。下面我们将详细探讨这两个关键知识点。 首先,16进制(Hexadecimal)是一种逢...

    PL/SQL Developer注册码

    PL/SQL Developer是一款专为Oracle数据库设计的强大开发工具,它极大地简化了PL/SQL语言的编写过程,并提供了一系列高级功能来提高开发效率和代码质量。该工具由Allround Automations B.V.公司开发,广泛应用于各种...

    postgressql-16.0.1 windows x64

    16新特性: 1.权限管理 2.逻辑复制增强功能 3.性能提升:并行查询方面的性能提升,比如允许FULL和RIGHT JION在并行模式下执行,支持SIMD 4.全面的监控功能

    SQL资源大全 SQL语法大全 SQL命令大全

    16. DECLARE:声明变量,如`DECLARE @variable_name datatype`。 17. IF-ELSE:条件判断,如`IF condition BEGIN ... END ELSE IF condition BEGIN ... END ELSE BEGIN ... END`。 18. CASE:用于复杂的条件判断和...

    SQL注入16进制转换工具

    16进制转换在SQL注入中扮演着重要角色,因为某些特殊字符在转成16进制后可以绕过过滤机制,使得攻击更加隐蔽。 16进制转换工具是为了帮助安全研究人员或开发人员理解和测试SQL注入漏洞而设计的。这类工具能够将字符...

    SQLPrompt for SQLServer2016 智能提示插件 SQL2016 提示

    SQLPrompt for SQLServer2016 智能提示插件 SQL2016 提示 SQLPrompt最新版本 绿色版 SQL Prompt 是一款拥有SQL智能提示功能的SQL Server和VS插件。SQL Prompt能根据数据库的对象名称,语法和用户编写的代码片段自动...

    SQL脚本文件 gmall2020-03-16.sql

    SQL脚本文件 gmall2020-03-16.sql

    sql 脚本函数 10进制转换为16进制

    在IT领域,尤其是在数据库管理与开发中,SQL脚本函数是实现特定功能的强大工具。本文将深入探讨一种特定的SQL脚本函数——十进制数转换为十六进制数的功能,这一过程对于处理数据、加密解密以及色彩代码等领域尤为...

    Windowssever 2016 连sqlsever的jar包 JDK1.7/1.8 sqljdbc41/sqljdbc42

    `sqljdbc41`和`sqljdbc42`是微软提供的Java数据库连接(JDBC)驱动,它们使得Java应用程序能够与SQL Server进行通信。 首先,我们来了解一下JDBC驱动。JDBC是Java语言中用来规范客户端程序如何连接到数据库的应用...

    sqlserver sql 实现 escape 解码

    在SQL Server环境中,有时我们需要处理含有特殊字符的字符串,这些字符串可能是通过JavaScript的`escape`函数编码过的。JavaScript的`escape`函数用于编码URL、非ASCII字符和其他特殊字符,以便在网络上传输。当我们...

    40集SQL Server 基础入门视频教程 SQL Server 数据库基础入门必备课程

    16.SQL Server 2014 BETWEEN语法.mp4 17.SQL Server 2014子查询IN.mp4 18.SQL Server 2014子查询EXISTS.mp4 19.SQL Server 2014返回记录排序.mp4 2.SQL Server 2014硬件和软件要求.mp4 20.SQL Server 2014关联...

    16.sql.server.2005.触发器 16.sql.server.2005.触发器

    SQL Server 2005中的触发器是一种数据库对象,它允许开发者在特定的数据库操作(如INSERT、UPDATE或DELETE)发生时执行自定义的SQL代码。这些操作被称为DML(数据操纵语言)事件,触发器则提供了对这些事件的响应...

    适用SQL Server 2016版本的数据库加载驱动包——sqljdbc42.jar

    在IT行业中,数据库是存储和管理数据的核心工具,而SQL Server 2016是由Microsoft开发的一款企业级的关系型数据库管理系统。它提供了高效的数据存储、查询、分析和安全功能,广泛应用于各种业务系统。在Java应用程序...

    day16(SQL 查询语言及其使用).sql

    SQL 查询语言及其使用

    SQL Server 18452登录错误

    "服务器:消息 18452,级别 16,状态 1 [Microsoft][ODBC SQL Server Driver][SQL Server]用户‘sa’登陆失败。原因:未与信任 SQL Server 连接相关联" 解决方法: 1. 设置允许 SQL Server 身份登录 在...

Global site tag (gtag.js) - Google Analytics