下面是 January, 2008的汇总

拉个票

Tuesday, January 29th, 2008

拉个票,51Testing正在举办2007年度最佳版主评选,虽然奖品设置的一般,但却是对我们这些版主一年来工作的一个鼓励和认可,嗬嗬,请路过的捧个场,支持一把。

投票地址如下:
记得,投14号,别投错了哈
最专业版主投票
最有文采版主投票

其他的奖项咱就不跟zee老兄抢了,^_^

如何生成Oracle AWR报告

Monday, January 28th, 2008

Oracle性能分析入门学习中,遇到Oracle数据库的性能问题,一般首要的步骤就是导出AWR的分析报告,AWR是10g中新引入的一个工具,在这之前一般是利用statspack。要导出AWR报告,只要利用Oracle的一个脚本即可以完成,下面是我利用script录制的一段导出AWR report的过程。
首先进入$ORACLE_HOME/rdbms/admin目录,在sqlplus下运行@awrrpt脚本,按照提示一步一步就可以达成,导出的格式有两种,txt格式和html格式。

在OTN上,有一个DBA新feature系列,第六周就是专门讲的这个feature,大家可以去那里了解一下(中文的)

Script started on Sun 27 Jan 2008 08:47:15 PM PST
[ractest@sun880-1 /u01/app/oracle/orahome/rdbms/admin]$ cd $ORACLE_HOME/rdbms/admin

[ractest@sun880-1 /u01/app/oracle/orahome/rdbms/admin]$ sqlplus / as sysdba

SQL*Plus: Release 10.2.0.4.0 - Production on Sun Jan 27 20:47:38 2008

Copyright (c) 1982, 2007, Oracle. All Rights Reserved.

Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
With the Partitioning, Real Application Clusters, OLAP, Data Mining
and Real Application Testing options

SQL> @awrrpt
(more…)

不要预支明天的烦恼

Thursday, January 24th, 2008

当日事,当日毕 说的就是每天高效的把当天的事情完。
早上起来规划一下当天的事情,轻重缓急分个类,一件一件去完成,晚上回家之前想想今天什么时候没做完,争取做一个妥善的处理,这样工作既高效有有条理。
今天检查一下hotmail信箱,发现Denis老弟转发来的一封信,简单的一个故事预示着同样深刻的道理,不要预支明天的烦恼。

快要过年了,小孩子满怀期盼,到成人却欲说难言。面对年关,相对于儿时单纯的喜悦,心头似乎掺杂了太多的迷茫、忧虑、烦恼……本次早茶,让我们探讨怎样甩掉这些包袱:

不要预支明天的烦恼

有个小和尚,每天早上负责清扫寺庙院子里的落叶。

在冷飕飕的清晨起床扫落叶实在是一件苦差事,尤其在秋冬之际,每一次起风时,树叶总随风飞舞落下。每天早上都需要花费许多时间才能清扫完树叶,这让小和尚头痛不已。

他一直想要找个好办法让自己轻松些。后来有个和尚跟他说:“你在明天打扫之前先用力摇树,把落叶统统摇下来,后天就可以不用辛苦扫落叶了。”小和尚觉得这真是个好办法,于是隔天他起了个大早,使劲的猛摇树,这样他就可以把今天跟明天的落叶一次扫干净了。一整天小和尚都非常开心。

第二天,小和尚到院子一看,他不禁傻眼了。院子里如往日一样是落叶满地。老和尚走了过来,意味深长的对小和尚说:“傻孩子,无论你今天怎么用力,明天的落叶还是会飘下来啊!”

小和尚终于明白了,世上有很多事是无法提前的,唯有认真的活在当下,才是最真实的人生态度。

“怀着忧愁上床,就是背负着包袱睡觉。”人生里有93%的烦恼都不是必须的,它们只存在于自我的想象中,往往不会出现。许多人心里潜藏着一只名字叫做“烦恼”的小蚂蚁,常常放牠出来吃掉自己的难得的快乐。

不用预支明天的烦恼,不用想早一步解决掉明天的烦恼。明天如果有烦恼,你今天是无法解决的,每一天都有每一天的人生功课要交,努力做好今天的功课再说吧!

51testing深圳沙龙

Tuesday, January 22nd, 2008

51testing深圳第一次搞活动,300多人,济济一堂,场面很是火爆,看来深圳的培训市场是很大一块蛋糕啊。

我们深圳地区的版主也难得一聚一次,上次周总来的时候好多版主加班,这次很多人又一次缺阵,闫飞勇老弟上次已经见过了,这次认识了久仰大名的QTP版主Denis老弟,恭喜Denis老弟新换了工作。

51_shenzhen

感谢主办方51testing,特别感谢李总和王海龙老师的精彩演讲(虽然赞助商的广告时间稍显有点长,不过你的演讲还是十分精彩的)

Linux上如何创建裸设备

Friday, January 18th, 2008

之前好几个同事聊天的时候,说想自己装个RAC玩玩,怎么的也得两个节点吧,不行就整个虚拟机。VM team的同事干脆就用Oracle VM了。其实个人玩RAC也不是不可能,只要解决几个关键的问题就行了,比如双网卡,共享设备等。其中最关键的就是共享设备了,在一个独立硬盘上创建裸设备,作为OCR和Voting DISK甚至ASM的磁盘,下面就介绍一下,在Linux下面如何创建裸设备,也就是create raw device. 大致这么几个步骤:

1. Check iscsi has been autoenable;
using “/sbin/chkconfig –list|grep iscsi”. If it is enabled, using “/sbin/chkconfig –level 2345 iscsi on” to enable it.
2. using “fdisk -l ” to check the partition information;
“/sbin/fdisk -l /dev/sde”, and then use “fdisk” to create new partitions
3. Create “/etc/udev/devices/raw” directory if it does not exist;
4. Create “/dev/raw” directory if it does not exist;
5. Create new raw device on each node, using:
“mknod /etc/udev/devices/raw/name c 162 2″
And then change the device permissions;
6. Edit “/etc/sysconfig/rawdevices” to add new items referring to new partitions on each node; such as “/etc/udev/devices/raw/name /dev/b_name”;
7. run “/sbin/udevstart” and check whether new raw devices have been generate in “/etc/udev/devices/raw” and “/dev/raw/”;
8. Changt the mode and own of the raw devices under “/dev/” directory;
9. service rawdevices restart

至此,就基本可以了,注意OCR和VD只能建在raw device上
多谢blue_prince指正:其实OCR和VOTING DISK不一定非要在祼设备上面不可,以OCFS或者共享的NFS上面也可以的,只是可靠性不如祼设备那么强而已

Sun收购MySQL

Thursday, January 17th, 2008

MySQL被Sun收购了,今天早上从Sun的官方网站得到证实,这肯定会成为2008数据库市场的标志性收购事件,收购金额大概一个billion,10亿美金。(对数字太不敏感,犯了两次错误,多谢NinGoo老兄提醒)

现在老牌的几个大厂纷纷挥军进入软件行业,比如HP去年收购了Mercury,Dell据说也要开发自己的软件,现在Sun突然收购MySQL,正式进入数据库市场,这样就好玩多了,以后Sun和Oracle也是竞争对手了。

官方报道:
Sun announced an agreement to acquire MySQL AB, an open source icon and developer of one of the world’s fastest growing open source databases. This acquisition accelerates Sun’s position in enterprise IT to now include the $15 billion database market and reaffirms Sun’s position as the leading provider of platforms for the Web economy and its role as the largest commercial open source contributor.

恐怕过两天还有更猛的消息出来吧,期待。。。

不用过两天了,更猛的消息已经出来了:
Oracle最终终于收购bea了,成交价是每股$19.375,总价85亿美金,比较早前的每股$17稍高一些
就在同一天,Oracle收购了另外一家公司:Captovation

看来,Oracle的收购又进入高发期了。

Linux Bash 测试和比较函数

Wednesday, January 16th, 2008

本文系转载, 最近写了一些小而实用的脚本,经常用到测试和比较函数,所以转载一下,原始出处是ibm的网站

Bash shell 在当今的许多 Linux® 和 UNIX® 系统上都可使用,是 Linux 上常见的默认 shell。Bash 包含强大的编程功能,其中包括丰富的可测试文件类型和属性的函数,以及在多数编程语言中可以使用的算术和字符串比较函数。理解不同的测试并认识到 shell 还能把一些操作符解释成 shell 元字符,是成为高级 shell 用户的重要一步。这篇文章摘自 developerWorks 教程 LPI 102 考试准备,主题 109: Shell、脚本、编程和编译,介绍了如何理解和使用 Bash shell 的测试和比较操作。

这个技巧解释了 shell 测试和比较函数,演示了如何向 shell 添加编程功能。您可能已经看到过使用 && 和 || 操作符的简单 shell 逻辑,它允许您根据前一条命令的退出状态(正确退出或伴随错误退出)而执行后一条命令。在这个技巧中,将看到如何把这些基本的技术扩展成更复杂的 shell 编程。

测试

在任何一种编程语言中,学习了如何给变量分配值和传递参数之后,都需要测试这些值和参数。在 shell 中,测试会设置返回的状态,这与其他命令执行的功能相同。实际上,test 是个内置命令!

test 和 [

内置命令 test 根据表达式expr 求值的结果返回 0(真)或 1(假)。也可以使用方括号:test expr 和 [ expr ] 是等价的。 可以用 $? 检查返回值;可以使用 && 和 || 操作返回值;也可以用本技巧后面介绍的各种条件结构测试返回值。
(more…)

如何为Oracle RAC配置SSH

Monday, January 14th, 2008

众所周知,在安装Oracle Clusterware(Former Oracle CRS)之前,有一些必备的条件,比如双网卡,同版本的操作系统,一些必需的补丁等等,还有一些比如同样ID的组和用户,这些都可以通过clusterware附带的一个检查工具cluvfy进行检查。详细的列表和检查方法可以参考oracle的官方安装文档
除此之外,安装之前另外一个重要的前提就是ssh或者rsh的配置,这就是oracle在节点之间进行文件copy时候必须的,下面就分十个步骤介绍如何进行ssh的配置。

1. Login as oracle user
2. create .ssh directory in the oracle user’s home directory
$cd
$mkdir ~/.ssh
$chmod 700 ~/.ssh

3. Generate an RSA and DSA key for SSH
$/usr/bin/ssh-keygen -t rsa
$/usr/bin/ssh-keygen -t dsa

4. After this, four files generated
~/.ssh/id_rsa.pub
~/.ssh/id_rsa
~/.ssh/id_dsa.pub
~/.ssh/id_dsa

5. Create an authorized key file
$touch ~/.ssh/authorized_keys
$cd ~/.ssh
$ls

6. Copy the contents of rsa.pub and dsa.pub files to authrorized file
[oracle@node1 .ssh]$ ssh node1 cat /home/oracle/.ssh/id_rsa.pub >> authorized_keys
oracle@node1’s password:
[oracle@node1 .ssh]$ ssh node1 cat /home/oracle/.ssh/id_dsa.pub >> authorized_keys
[oracle@node1 .ssh$ ssh node2 cat /home/oracle/.ssh/id_rsa.pub >> authorized_keys
oracle@node2’s password:
[oracle@node1 .ssh$ ssh node2 cat /home/oracle/.ssh/id_dsa.pub >>authorized_keys
oracle@node2’s password:

7. Use scp to copy the authorized file to other nodes in ~/.ssh
[oracle@node1 .ssh]scp authorized_keys node2:/home/oracle/.ssh/

8. Change the permissions on the oracle user’s authorized file on all cluster nodes
$ chmod 600 ~/.ssh/authorized_keys

9. Enable OUI to use ssh and scp
$ exec /usr/bin/ssh-agent $SHELL
$ /usr/bin/ssh-add

10. Verify ssh configuration on all nodes
$ ssh nodename1 date
$ ssh nodename2 date

其他的具体步骤可以参考oracle的手册B28264-03,地址如下:
http://download.oracle.com/docs/cd/B28359_01/install.111/b28264/toc.htm


Close
E-mail It