oracle 全文索引的配置
分类: Linux1. 创建数据存储定义(Datastore),使用多列数据存储在多列上创建全文索引BEGIN CTX_DDL.CREATE_PREFERENCE('INFOGRID_COM_DATASTORE','MULTI_COLUMN_DATASTORE');CTX_DDL.SET_ATTRIBUTE('INFOGRID_COM_DATASTORE','columns','N...
11g 新特性之自动分区-numtoyminterval/numtodsinterval
分类: OracleThe INTERVAL clause of the CREATE TABLE statement establishes interval partitioning for the table. You must specify at least one range partition using the PARTITION clause. The range partitioning key value determines the high value of the range partitions, wh...
如何找回oracle中被覆盖的包体程序
select *from dba_source as of timestamp to_timestamp('2016-09-18 18:00:00','yyyy-mm-dd hh24:mi:ss')where owner = 'SOURCE' and name = 'CLEN_PKG';可以查找到被覆盖掉的程序,前提是用dba用户查询。
ora-00600:internal error code,arguments:[4194],[7],[2],[],[]
数据库能够进入到mount状态,alter database open提示如下错误:ora-00600:internal error code,arguments:[4194],[7],[2],[],[],[],[],[],[],[],[],[]进程ID:584回话ID:211 序列号:3oracle support 上的解释:A mismatch has been detected between Redo records and rollback (Undo) records.ARGUMENTS:...
ora-00600 :internal error code,arguments:[13013],[5001],[338],[12680125],[17]
数据库日志报错如图 trace 文件内容:解决前科普:1,了解 ora-600,【13013】 的参数含义:Format: ORA-600 [13013] [a] [b] {c} [d] [e] [f]Arg [a] PasscountArg [b] Data Object numberArg {c} Tablespace ...
ora-00020数据库报错,process进程爆满
今天遇到一个系统,数据库无法正常运行,查看数据库的进程发现数据库已宕,结果如下:[oracle@xiaowu ~]$ ps -ef | grep ora_oracle 6218 6161 0 09:39 pts/2 00:00:00 grep ora_用超级管理员用户登录数据库时,系统报 ORA-00020 的错误,很奇怪,数据库未启动,还报进程数超上限的错误。[...
oracle:一台主机多个实例,sqlplus 默认连接到哪个实例的问题
一台主机如果创建了多个数据库(多个实例),配置一个监听器即可。在使用sqlplus连接时,应先修改ORACLE_SID变量指定连接实例,再使用sqlplus连接;指的是临时会话级。例:set ORACLE_SID=orcl1sqlplus / as sysdba; ## 指连接至orcl1实例--------------------------set...
ORA-00600[kcratr_nab_less_than_odr]故障解决
朋友的数据库服务器出现ORA-00600[kcratr_nab_less_than_odr],不能open数据库 1.open数据库报ORA-00600[kcratr_nab_less_than_odr] SQL> ALTER DATABASE OPEN; ALTER DATABASE OPEN * 第 1 行出现错误: ORA-00600: 内部错误代码, 参数: [kcratr_nab_less_than_odr], [1], [99189], [43531], [43569], [], [], [], [...
oracle中bulk collect into用法 (批量效率提取游标数据)
oracle中bulk collect into用法 (批量效率提取游标数据)[@more@]通过bulk collect减少loop处理的开销 采用bulk collect可以将查询结果一次性地加载到collections中。 而不是通过cursor一条一条地处理。 注意在使用bulk collect时,所有的into变量都必须是collections. 例子:(把一个表的数据放入集合中,然后再取出)create or replace procedure test_bulk_collect_intois type a is table of varchar2(30); --如果是一个表的好几个字段的话,可以这么写type a is table of AA(表名)%rowtype; aa a;begin --假如我
insert 中append 用法详解
总结:关于Nologging与append测试的一些总结,通过上面的SQL语句查看可以得出在大量数据插入过程的语句中加入/*+append*/的这个SQL语句产生的REDO日志明显示是会少同时时间节约了很多,当然这样可能会影响备份因此nologging加载数据后要做一个数据库的全备。insert append并不是在任何时候都可以节省时间的以下是测试的一些总结: 第一种情况:database为archivelog状态,这种情况下,就算你用insert append也是不一定提高插入效率的。但是如果你将目标表设置为nologging,然后再使用insert append就会很快。第二种情况:database为noarch
Oracle动态性能视图学习之v$sqltext & v$sqlarea
本视图包括Shared pool中SQL语句的完整文本,一条SQL语句可能分成多个块被保存于多个记录内。注:V$SQLAREA只包括头1000个字符。[@more@]V$SQLTEXT中的常用列HASH_VALUE:SQL语句的Hash值ADDRESS:sql语句在SGA中的地址SQL_TEXT:SQL文本。PIECE:SQL语句块的序号V$SQLTEXT中的连接列Column View Joined Column(s) HASH_VALUE, ADDRESS V$SQL, V$SESSION HASH_VALUE, ADDRESSHASH_VALUE. ADDRESS V$SESSION
sqlplus /nolog 是什么意思
sqlplus命令格式如下:用法: SQLPLUS [ [<option>] [<logon>] [<start>] ]其中 <option> ::= -H | -V | [ [-M <o>] [-R <n>] [-S] ] <登录> ::= <用户名>[/<口令>][@<connect_string>] | / | /NOLOG <启动> : : = @<文件名>[.<ext>] [<参数> ...] "-H" 显示 SQL*Plus 的版本标帜和使用语法 "-V" 显示 SQL*Plus 的版本标帜 "-M <o>" 使用 HTML 标志选项 <o> "-R <n>" uses r
RAC 实例不能启动 ORA-1589 signalled during ALTER DATABASE OPEN
今天启动RAC 做实验,发现RAC 实例怎么启动不了。[@more@][oracle@rac2 bin]$ crs_stat -tName Type Target State Host------------------------------------------------------------ora.orcl.db application ONLINE OFFLINEora....oltp.cs application ONLINE OFFLINEora....cl1.srv application ONLINE OFFLINEora....cl2.srv application ONLINE OFFLINEora....l1.inst application ONLINE OFFLINEora....l2.inst application ONLINE OFFLINEora....SM1.asm application ONLINE ONLINE rac1ora....C1.lsnr application ONLINE ONLINE
sessions,processes的监控方法
一个连接可能产生多个sessions,一个sessions可能产生多个processes,同样,一个processes可能对应多个sessions;Oracle的sessions和processes的数量关系大概是:sessions=1.1 * processes + 5可以用一下sql做监控select * from v$resource_limit;该视图的字段含义如下:[@more@]从Oracle的Reference文档里面摘录的,基本上就是标识一些系统资源的使用、设置情况的。 current_utilization - Number of (resources, locks, or processes) currently being used max_utization - Maximum consumption of the resource since the last insta
statspack摘录
以下内容均在window Xp,oracle9.2.0.1下测试,在linux/unix下路径""要换成"/" 1.Statspack的安装 sqlplus /nolog conn / as sysdba[@more@] ——创建一个Statspack表空间,要求80M以上或者使用已经存在的表空间,但必须有80M以上的空闲空间 sql>create tablespace statspack datafile '<statspack_tbs.dbf>' size 100M AUTOEXTEND ON EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K ——执行安装脚本,在Oracle_Home dbmsadmin下 sql>@? dbmsadminspcreate
动态性能表第五篇--V$SESSION
动态性能表第五篇--V$SESSION 在本视图中,每一个连接到数据库实例中的session都拥有一条记录。包括用户session及后台进程如DBWR,LGWR,arcchiver等等。[@more@]V$SESSION中的常用列V$SESSION是基础信息视图,用于找寻用户SID或SADDR。不过,它也有一些列会动态的变化,可用于检查用户。如例:SQL_HASH_VALUE,SQL_ADDRESS:这两列用于鉴别默认被session执行的SQL语句。如果为null或0,那就说明这个session没有执行任何SQL语句。PREV_HASH_VALUE和PREV_ADDRESS两列用来鉴别被session执行的上一条语句。注意:当使用SQL*Plus进行选择时
oracle 数据库里查看表空间使用状况;
oracle表空间的事情状况要经常查看,一般空闲比例过低的时候就应该考虑增大表看空间了。查看方法如下SQL:[@more@]方法一:select dbf.tablespace_name,dbf.totalspace "总量(M)",dbf.totalblocks as 总块数,dfs.freespace "剩余总量(M)",dfs.freeblocks "剩余块数",(dfs.freespace / dbf.totalspace) * 100 "空闲比例" from (select t.tablespace_name,sum(t.bytes) / 1024 / 1024 totalspace,sum(t.blocks) totalblocksfrom dba_data_files tgroup by t.tablespace_name) dbf,(select tt.tables
ORACLE 命令的应用
这个部分的命令都在动态收集中......[@more@]1:加大数据文件容量alter database datafile '数据文件的全路径' resize 70M;2:重建索引的alter index 用户.index_name rebuild online;3:用命令重新编译程序包alter package 包名 compile body4:between v1 and v2 相当于>.=v1 并且<=v25:问题症状:ORA-1632: max # extents 4096 reached in index PERFSTAT.STATS$PARAMETER_PKORA-12012: error on auto execute of job 835ORA-01632: max # extents (4096) reached in index PERFSTAT.STATS$PARAMETER_PKORA-06512: at "PERFS
SQL 的跟踪方法trace
大致分如下6步骤执行,看下文...[@more@]1:进入SQL WINDOW窗口w12:找到你当前的SQL WINDOW SESSION(把本机所有别的SESSION都关掉,查看w1的session id,SERIAL#)3:找到你当前SQL WINDOW(窗口w1)的PROCESS_ID(在另外的窗口W2)spid (方法:Select a.Status, a.Sid, a.Serial#, a.Saddr, a.Paddr, b.Spid, b.Addr, a.Machine From V$session a, V$process b Where b.Addr = a.Paddr And a.Sid =xx)4:在SQL WINDOW(窗口W2)执行 dbms_system.set_sql_trace_in_session (l_sid, l_serial, TRUE);5:在SQL WINDOW(窗口W1)中执行我们
oracle 的临时表解析及与其SQLSERVER的比较(转载)
回复: 临时表存放在哪儿?DML statements on temporary tables do not generate redo logs for the data changes. However, undo logs for the data and redo logs for the undo logs are generated. Data from the temporary table is automatically dropped in the case of session termination, either when the user logs off or when the session terminates abnormally such as during a session or instance failure undo logs for the data and redo logs for the undo logs 前者不是放在rollback segment中吗?怎么能写到redo lo