- 浏览: 402821 次
- 性别:
- 来自: 上海
最新评论
-
liuwenlong62555:
...
Linux防火墙的关闭和开启 -
baolong101010:
永久关闭:chkconfig --level 2345 ipt ...
Linux防火墙的关闭和开启 -
lijie1819:
3)查看防火墙状态chkconfig iptables --l ...
Linux防火墙的关闭和开启 -
Annah:
总结的很好,谢谢
Vector和ArrayList区别 -
celavi:
非常好的文章,谢谢分享!
ORACLE SQL TUNING
文章列表
关于MySQL的查询缓存收
原理
QueryCache(下面简称QC)是根据SQL语句来cache的。一个SQL查询如果以select开头,那么MySQL服务器将尝试对其使用 QC。每个Cache都是以SQL文本作为key来存的。在应用QC之前,SQL文本不会被作任何处理。也就是说,两个SQL语句,只要相差哪怕是一个字符(例如大小写不一样;多一个空格等),那么这两个SQL将使用不同的一个CACHE。
不过SQL文本有可能会被客户端做一些处理。例如在官方的命令行客户端里,在发送SQL给服务器之前,会做如下处理:
过滤所有注释
去掉SQL文本前后的空格,TAB等字符。注意,是文本前面和后面的。中间的 ...
- 2008-12-13 21:21
- 浏览 1210
- 评论(0)
//查询被锁的表
select A.sid, b.serial#,
decode(A.type,
'MR', 'Media Recovery',
'RT','Redo Thread',
'UN','User Name',
'TX', 'Transaction',
'TM', 'DML',
'UL', 'PL/SQL User Lock',
'DX', 'Distributed Xaction',
'CF', 'Control File',
...
- 2008-12-12 18:35
- 浏览 2688
- 评论(0)
在数据库操作中,我们经常会遇到余下情况:
1.莫名其妙数据被DML了,不知道是谁DML的
2.想知道某张表某个时间段中被那个用户操作了什么SQL
以上问题我相信大家都遇到过,当然我们可以通过v$sql、v$sqltext、v$session找到我们需要的答案,我们更加可以通过FLASHBACK_TRANSACTION_QUERY中获得指定事务的历史信息以及Undo_SQL,通过这个UNDO_SQL,我们还可以恢复特定的事务。
--通过flashback version query获得crm_user的XID--
select versions_starttime, --事务开始时间--
...
- 2008-12-12 13:05
- 浏览 3188
- 评论(0)
insert操作回滚段中只记录这些记录的ROWID
update需要记录相关字段的undo信息
delete是使用回滚段最大的操作,记录了所有删除的记录的详细信息以便于rollback
对大量的记录更新的话,还会对表长时间加锁,代价比较高
以上是针对DML操作使用UNDO的一些看法,大家分享
- 2008-12-11 17:53
- 浏览 1253
- 评论(0)
[root@localhost ~]# cat /proc/self/status
Name: cat
State: R (running)
SleepAVG: 88%
Tgid: 5783
Pid: 5783
PPid: 5742
TracerPid: 0
Uid: 0 0 0 0
Gid: 0 0 0 0
FDSize: 256
Groups: 0 1 2 3 4 6 10
VmSize: 6588 kB
VmLck: 0 kB
VmRSS: 400 kB
VmData: 144 kB
VmStk: 2040 kB
VmExe: 14 kB
VmLib: 1250 kB
StaBrk: 0 ...
- 2008-12-10 13:05
- 浏览 18325
- 评论(0)
SQL> desc x$ksppi
名称 是否为空? 类型
------------ -------- ---------------
ADDR RAW(4) --内存地址
INDX NUMBER --序号,从0开始
INST_ID NUMBER --instance number
KSPPINM VARCHAR2(64) --参数名称
KSPPITY ...
- 2008-12-09 17:22
- 浏览 3446
- 评论(0)
昨天,客户的一套Oracle 10.2.0.3 RAC环境遇到了一个严重故障,数据库最后以ORA-600 [2103]错误中止了一个实例。
日志信息大致如下:
Tue Dec 2 17:21:06 2008
Errors in file /u01/admin/erpdb/bdump/erpdb2_lgwr_127968.trc:
ORA-00600: internal error code, arguments: [2103], [0], [0], [1], [900], [], [], []
Tue Dec 2 17:21:08 2008
Trace dumping is perfor ...
- 2008-12-09 17:21
- 浏览 1255
- 评论(0)
在Linux下C连接MySQL出现问题如下:
编译成功后,运行程序,出现./connect: error while loading shared libraries: libmysqlclient.so.15: cannot open shared object file: No such file or directory.
出现上面的错误是因为系统运行的时候没有找到程序运行所需要的libmysqlclient.so.15运行库文件,解决方法有两个:
方法一:直接把libmysqlclient.so.15这个文件拷贝到系统指定的/usr/lib库文件目录中。
方法二: ...
- 2008-12-05 16:38
- 浏览 1923
- 评论(0)
redo--> undo-->datafile
insert一条记录时, 表跟undo的信息都会放进 redo 中, 在commit 或之前, redo 的信息会放进硬盘上. 故障时, redo 便可恢复那些已经commit 了的数据.
redo->每次操作都先记录到redo日志中,当出现实例故障(像断电) ...
- 2008-12-05 15:26
- 浏览 2625
- 评论(0)
最近在项目中仅常遇到,在这家客户那里邮件发送没问题,可是跑到另外一家客户那里缺发不出去,觉得很奇怪,通过一番折腾之后,把问题落在了Oracle JDBC Driver上,因为在客户现场,用的oracle版本不统一,有些客户使用的是oracle9i,有些使用的是Oracle10g,但是项目中同意使用了ojdbc4.jar做为驱动,那当然就有问题了,以下列出在2个驱动之间的区别:
1.oracle10g中将中文字符解析为3个字节,oracle9i中保留为2个字节,在插入时常常会因为这个问题而造成数据插入失败、超常
2.在处理大字符集的时候,同样存在字符限制,class12只 ...
- 2008-11-26 15:35
- 浏览 2865
- 评论(0)
缺省从 v$session 中不能直接获得客户端 IP,可以在数据库中创建一个追踪客户端IP地址的触发器:
create or replace trigger on_logon_trigger after logon on database
begin
dbms_application_info.set_client_info(sys_context('userenv', 'ip_address'));
end;
/
现在就可以在 V$SESSION 视图的 CLIENT_INFO 列中看到新登录的客户端IP地址了。
col sid for 9999
col serial# ...
- 2008-11-18 19:42
- 浏览 2682
- 评论(0)
在现在互联网的时代,如果有些东西你清楚地,google或者baidu一下,都可以找到一大堆你要的东东,但是相信大家都有这样的经历,找到的东东或者是教程,未必能用用的得心应手,或者是说“怎么文档上这块就顺利通过了,我这里怎么就抱错呀”
今天花了很长的时间搞了一下利用perl导出CSV文件的过程,挺有感触,在这里给大家分享下
因为机器装的是RedHat AS4,2.6.9 kernel,perl版本为5.8.5
在安装开始被提示找不到CSV.pm模块,有点头晕。。通过多方寻找资料得到需要通过ppm下载各种perlpackage,好吧,那么去找找吧,最终找到了Act ...
- 2008-11-18 16:30
- 浏览 4081
- 评论(0)
聚合函数RANK 和 dense_rank 主要的功能是计算一组数值中的排序值。
在9i版本之前,只有分析功能(analytic ),即从一个查询结果中计算每一行的排序值,是基于order_by_clause子句中的value_exprs指定字段的。
其语法为:
RANK ( ) OVER ( [q ...
- 2008-04-18 17:23
- 浏览 1383
- 评论(0)
多态性
通过继承,一个类可以用作多种类型:可以用作它自己的类型、任何基类型,或者在实现接口时用作任何接口类型。这称为多态性
重载
每个类型成员都有一个唯一的签名。方法签名由方法名称和一个参数列表(方法的 ...
- 2008-04-03 17:10
- 浏览 6973
- 评论(0)
什么是Socket
Socket接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,程序员可以用它们来开发TCP/IP网络上的应用程序。要学Internet上的TCP/IP网络编程,必须理解Socket接口。
Socket接口设计者最先是将接口放在Unix操作系统里面的。如果了解Unix系统的输入和输出的话,就很容易了解Socket了。网络的Socket数据传输是一种特殊的I/O,Socket也是一种文件描述符。Socket也具有一个类似于打开文件的函数调用Socket(),该函数返 回一个整型的Socket描述符,随后的连接建立、数据传输等操作都是通过该Socke ...
- 2008-01-03 02:06
- 浏览 1630
- 评论(0)