Thursday, April 30, 2009

some usefull command

chmod

使用 - -reference 参数更改文件权限

chown

使用 - -reference 参数更改文件所有者

chgrp

使用 - -reference 参数更改文件的组

stat

查找文件的扩展属性,如文件的上次访问时间

file

查找文件类型,如 ASCII、数据等

diff

查看两个文件之间的差别

cmp

比较两个文件

comm

了解两个文件的相同内容,并分三列显示输出

md5sum

计算文件的 MD5 散列值(用于确定文件是否已更改)

Wednesday, April 22, 2009

add logfile to rac

alter database add logfile thread 1 group 1 ('+DATA/FRMDB/onlinelog/redo01_1.log', '+BACKUP/FRMDB/onlinelog/redo01_1.log') size 100m
alter database add logfile thread 1 group 2 ('+DATA/FRMDB/onlinelog/redo02_1.log', '+BACKUP/FRMDB/onlinelog/redo02_1.log') size 100m
alter database add logfile thread 2 group 3 ('+DATA/FRMDB/onlinelog/redo03_2.log', '+BACKUP/FRMDB/onlinelog/redo03_2.log') size 100m
alter database add logfile thread 2 group 4 ('+DATA/FRMDB/onlinelog/redo04_2.log', '+BACKUP/FRMDB/onlinelog/redo04_2.log') size 100m

alter database drop logfile group 4;
select group#,status,members from v$log;

alter system set control_files='+DATA/FRMDB/CONTROLFILE/control01.ctl','+BACKUP/FRMDB/CONTROLFILE/control02.ctl';


rmalias control02.ctl
mkalias +DATA/FRMDB/CONTROLFILE/Current.5715.684803005 control01.ctl

Monday, April 20, 2009

DBCA could not startup the ASM instance configured on this node

Today we create database with DBCA ,but dbca can't find ASM.

----------------------------------------------------------------------------------------
DBCA could not startup the ASM instance configured on
this node. To proceed with teh database creation using
ASM you need the ASM instance to be up and running.
Do you want to recreate the ASM instance on this node?
[Yes] [No]
-----------------------------------------------------------------------------------------

Solution

If we create a soft link in the db_home's $ORACLE_HOME/network/admin for the listener.ora that points to the asm_home's $ORACLE_HOME/network/admin/listener.ora, DBCA is able to connect to the ASM instance and proceed with the database creation.

Thursday, April 16, 2009

Times Ten oracle memory database

么是 Oracle 内存数据库 TimesTen?
Oracle 内存数据库 TimesTen 是一个针对内存进行了优化的关系数据库,它为应用程序提供了当今实时企业和行业(例如电信、资本市场和国防)所需的即时响应性和非常高的吞吐量。 Oracle 内存数据库 TimesTen 作为高速缓存或嵌入式数据库部署在应用程序层中,利用标准的 SQL 接口对完全位于物理内存中的数据存储进行操作。

Tuesday, April 14, 2009

VMware2.0.1+oracle linux5.3+oracle10.2.0.4 install oracle RAC

VMware2.0.1+oracle linux5.3+oracle10.2.0.4 install oracle RAC

Plan:
LINUX:
192.168.1.101 dbrac01
192.168.1.102 dbrac02

192.168.1.201 dbrac01-vip
192.168.1.202 dbrac02-vip

172.18.1.101 dbrac01-priv
172.18.1.102 dbrac02-priv

VMware
scsi:0:1 20G
scsi:1:1 120M
scsi:1:2 80M
scsi:1:3 6G
scsi:1:4 6G

memory 1100M
swap 2000M

network: eth0 bridge public
eth0 bridge private
for sharedisk we should create sharedisk folder
for instance:
mkdir sharedisk in vmware dirctory and store scsi:1:1---1:4

ORACLE:
oracle crs software
10.2.0 db software
path for 10.2.0
rpm oracleasmlib-2.0.4-1.el5.i386.rpm

Install
1,linux install and setup
1.1 oracleasm rpm package install-select from list when linux installing
1.2 rpm -ivh oracleasmlib-2.0.4-1.el5.i386.rpm when linux finished
1.3 vim /etc/hosts
1.4 stop some service : sendmail, iptables,ip6tables
chkconfig --list
chkconfig --level 2345 sendmail off
1.5 check oracle user:id oracle
check system requeired for oracle from oracle document
1.6 fdisk /dev/sdb
/sdc /sdd /sde
1.7 mkdir -p /u01/app/oracle
chown -R oracle:oinstall /u01/app/oracle
chmod -R 775 /u01/app/oracle
1.8 vim /etc/rc.local
modprobe hangcheck-timer hangcheck-tick=30 hangcheck_margin=180
1.9 vim /etc/udev/rules.d/60-raw.rules

ACTION=="add", KERNEL=="/dev/sdb1",RUN+="/bin/raw /dev/raw/raw1 %N"
ACTION=="add", ENV{MAJOR}=="8",ENV{MINOR}=="17",RUN+="/bin/raw /dev/raw/raw1 %M %m"
ACTION=="add", KERNEL=="/dev/sdc1",RUN+="/bin/raw /dev/raw/raw2 %N"
ACTION=="add", ENV{MAJOR}=="8",ENV{MINOR}=="33",RUN+="/bin/raw /dev/raw/raw2 %M %m"
ACTION=="add", KERNEL=="/dev/sdd1",RUN+="/bin/raw /dev/raw/raw3 %N"
ACTION=="add", ENV{MAJOR}=="8",ENV{MINOR}=="49",RUN+="/bin/raw /dev/raw/raw3 %M %m"
ACTION=="add", KERNEL=="/dev/sde1",RUN+="/bin/raw /dev/raw/raw4 %N"
ACTION=="add", ENV{MAJOR}=="8",ENV{MINOR}=="65",RUN+="/bin/raw /dev/raw/raw4 %M %m"
KERNEL=="raw[1-4]", OWNER="oracle", GROUP="oinstall", MODE="640"
then check ls /dev/raw/
crw-r----- 1 oracle oinstall 162, 1 Jun 6 17:57 raw1
crw-r----- 1 oracle oinstall 162, 2 Jun 6 17:57 raw2
crw-r----- 1 oracle oinstall 162, 3 Jun 6 17:57 raw3
crw-r----- 1 oracle oinstall 162, 4 Jun 6 17:57 raw4
2.0 shutdown linux and open folder and edit .vmx file

disk.locking = "false"
diskLib.dataCacheMaxSize = "0"
diskLib.dataCacheMaxReadAheadSize = "0"
diskLib.DataCacheMinReadAheadSize = "0"
diskLib.dataCachePageSize = "4096"
diskLib.maxUnsyncedWrites = "0"
scsi1:1.deviceType = "disk"
scsi1:2.deviceType = "disk"
scsi1:3.deviceType = "disk"
scsi1:4.deviceType = "disk"

2 setup the second nodes
1.1 cp dbrac01 dbrac02
1.2 startup linux
1.3 setup network and ip address
1.4 install vmware-tool in both nodes and restart
1.5 set up ssh
1.6 etc/init.d/oracleasm configure
1.6 install crs
建议按下列顺序执行
在 node1 上执行:/opt/ora10g/oraInventory/orainstRoot.sh;
在 node2 上执行:/opt/ora10g/oraInventory/orainstRoot.sh;
在 node1 上执行:/opt/ora10g/product/10.2.0/crs_1/root.sh;
在 node2 上执行:/opt/ora10g/product/10.2.0/crs_1/root.sh;
通常在最后一个节点执行 root.sh 时会遇到错误,就我们的情况而言当然就是 node2~~
提示:一般常见的错误有如下三种:
A).如果你碰到了这个错误:
/opt/ora10g/product/10.2.0/crs_1/jdk/jre//bin/java: error while loading shared libraries: libpthread.so.0:
cannot open shared object file: No such file or directory
可以按照如下方式解决:
===============================
修改 vipca 文件
[root@node2 opt]# vi /opt/ora10g/product/10.2.0/crs_1/bin/vipca
找到如下内容:
Remove this workaround when the bug 3937317 is fixed
arch=`uname -m`
[三思笔记]-手把手教你用 VMware 在 linux 下安装 Oracle10g RAC http://www.5ienet.com/ QQ:5454589 君三思 群:59666289
if [ "$arch" = "i686" -o "$arch" = "ia64" ]
then
LD_ASSUME_KERNEL=2.4.19
export LD_ASSUME_KERNEL
fi
#End workaround
在 fi 后新添加一行:
unset LD_ASSUME_KERNEL
以及 srvctl 文件
[root@node2 opt]# vi /opt/ora10g/product/10.2.0/crs_1/bin/srvctl
找到如下内容:
LD_ASSUME_KERNEL=2.4.19
export LD_ASSUME_KERNEL
同样在其后新增加一行:
unset LD_ASSUME_KERNEL
保存退出,然后在 node2 重新执行 root.sh
当然,既然我们已经知道了有这个问题,建议最好在 node2 执行 root.sh 之前,首先修改 vipca。
其实同时需要你改的还有$ORACLE_HOME/bin/srvctl 文件,不然等装完数据库之后,srvctl 命令
也是会报这个错误地。要知道 srvctl 这么常用,如果它执行老报错,那可是相当致命啊。不过呢你现
在才安装到 crs,离 create db 还远着呢,大可以等到创建完数据库,待到需要管理时再修改该文件。
B).如果你碰到了这个错误:
The given interface(s), "eth0" is not public. Public interfaces should be used to configure virtual IPs.
解决方式如下:
==============================
图形界面上运行$CRS_HOME/bin/vipca,手工重新配置 rac1-vip 和 rac2-vip。
[root@node2 opt]# xhost +
[root@node2 opt]# /opt/ora10g/product/10.2.0/crs_1/bin/vipca
C).如果你碰到了这个错误:
Error 0(Native: listNetInterfaces:[3])
[Error 0(Native: listNetInterfaces:[3])]
解决方式如下:
===============================
[root@node2 bin]# ./oifcfg iflist
eth1 10.10.17.0
virbr0 192.168.122.0
eth0 192.168.100.0
[root@node2 bin]# ./oifcfg setif -global eth0/192.168.100.0:public
[root@node2 bin]# ./oifcfg setif -global eth1/10.10.10.0:cluster_interconnect
[root@node2 bin]# ./oifcfg getif
eth0 192.168.100.0 global public
eth1 10.10.10.0 global cluster_interconnect
然后在视窗界面重新执行 vipca 即可,如上 b 例中所示。

root@node1 ~]# /opt/ora10g/product/10.2.0/crs_1/bin/./crs_stat -t
Name Type Target State Host
------------------------------------------------------------
ora.node1.gsd application ONLINE ONLINE node1
ora.node1.ons application ONLINE ONLINE node1
ora.node1.vip application ONLINE ONLINE node1
ora.node2.gsd application ONLINE ONLINE node2
ora.node2.ons application ONLINE ONLINE node2
ora.node2.vip application ONLINE ONLINE node2

Monday, April 13, 2009

Oracle.Automatic.Storage.Management

McGraw.Hill.Oracle.Automatic.Storage.Management

plan :two day

Apr 14-15

Saturday, April 11, 2009

srvctl status can't get database status

Maybe the database name and the instance name are different. so you can try to check with following command:

parac03 | CRS | /export/home/oracle > ps -ef |grep pmon
oracle 28971 1 0 02:16:31 ? 0:09 ora_pmon_SBWODB3
oracle 27558 1 0 02:14:30 ? 0:04 asm_pmon_+ASM3
oracle 28259 1 0 02:15:40 ? 0:16 ora_pmon_SAMP3
oracle 28385 1 0 02:15:45 ? 0:07 ora_pmon_TELDB3
oracle 18445 10494 0 03:31:33 pts/6 0:00 grep pmon
parac03 | CRS | /export/home/oracle > srvctl status database -d SAMP3
PRKR-1001 : cluster database SAMP3 does not exist
PRKO-2005 : Application error: Failure in getting Cluster Database Configuration for: SAMP3
parac03 | CRS | /export/home/oracle > srvctl status database -d SAMP
PRKR-1001 : cluster database SAMP does not exist
PRKO-2005 : Application error: Failure in getting Cluster Database Configuration for: SAMP

parac03 | CRS | /export/home/oracle > srvctl config
VISDB
TELDB
SBWODB
SAMP_RAC
parac03 | CRS | /export/home/oracle > srvctl status database -d SAMP_RAC
Instance SAMP1 is running on node parac01
Instance SAMP2 is running on node parac02
Instance SAMP3 is running on node parac03
parac03 | CRS | /export/home/oracle > ps -ef |grep pmon
oracle 28971 1 0 02:16:31 ? 0:08 ora_pmon_SBWODB3
oracle 27558 1 0 02:14:30 ? 0:03 asm_pmon_+ASM3
oracle 28259 1 0 02:15:40 ? 0:14 ora_pmon_SAMP3
oracle 28385 1 0 02:15:45 ? 0:07 ora_pmon_TELDB3
oracle 14317 10494 0 03:24:27 pts/6 0:00 grep pmon
parac03 | CRS | /export/home/oracle >

Friday, April 10, 2009

rac load balance

rac下load balance分为两种:
1.client端load balance
tnsName =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = vip1)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = vip2)(PORT = 1521))
(LOAD_BALANCE = yes)
(CONNECT_DATA =(SERVICE_NAME = dbServiceName))
)
2.server端监听load balance
用REMOTE_LISTENER参数,指向tnsname.ora中的监听
LISTENERS_dbname =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = vip1)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = vip2)(PORT = 1521))
)

inbound connection timed out

inbound connection timed out (ORA-3136)

1.set INBOUND_CONNECT_TIMEOUT_ =0 in listener.ora
2. set SQLNET.INBOUND_CONNECT_TIMEOUT = 0 in sqlnet.ora of server.
3. lsnrctl restart

commit时表内容清空

为什么插入一条数据,再提交,数据就没了,怎么回事呀?

insert into faretemp values ('1','1',1,'1','1');

commit;


this is a temp table

cursor_sharing=similar/force bug for 9i

Oracle9i Enterprise Edition Release 9.2.0.1.0 - 64bit Production
System name: HP-UX
Release: B.11.11
Version: U
Machine: 9000/800



ksedmp: internal or fatal error
ORA-07445: exception encountered: core dump [kxspoac()+868] [SIGBUS] [unknown code] [0x000000000] [] []
Current SQL statement for this session:
select NVL(FLG_FWB_RDY,:"SYS_B_0") ,COD_FDS ,:"SYS_B_1" into :b0,:b1,:b2 from AWB_MST where (cod_awb_pfx=:b3 and cod_awb_num=:b4)


cursor_sharing=similar/force, it's a bug for oracle .

9.2.0.2 bug qmn0

hp-ux oracle9.2.0.2

alter.log

Restarting dead background process QMN0

QMN0 started with pid=14

Mon Oct 23 09:16:01 2006

Restarting dead background process QMN0

QMN0 started with pid=14

Mon Oct 23 09:21:01 2006

Restarting dead background process QMN0

QMN0 started with pid=14

Mon Oct 23 09:26:01 2006

Restarting dead background process QMN0

QMN0 started with pid=14

oracle的一个bug导致的,把aq_tm_processes设成0,禁用掉aq的该进程就好了

Listener error

NS-12500: TNS:listener failed to start a dedicated server process
 TNS-12540: TNS:exceeded
  TNS-12560: TNS:protocol adapter error
   TNS-00510: Internal limit restriction exceeded
    HPUX Error: 11: Resource temporarily unavailable

to check the system kernerl parameter

resource_limit,session

dual table

If you drop table dual, you will can't start the database.
so you should set parameter
replication_dependency_tracking = FALSE

and then ,will rebuild the table

cursor_sharing

cursor_sharing=



force, similar, exact

force meaning to force using var.

Thursday, April 9, 2009

CRS

• CRSCTL: Performs various administrative operations for Oracle Clusterware
• CRS_STAT: Reports the current state of resources configured in the OCR
• OCRCONFIG: Performs various administrative operations on the OCR
• OCRCHECK: Verifies the integrity of the OCR
• OCRDUMP: Dumps the contents of the OCR to a text file
These utilities are further described in the following sections.

The CRS_STAT utility reports on the current status of various resources managed by Oracle Cluster-
ware. It is located in the $ORA_CRS_HOME/bin directory.

Wednesday, April 8, 2009

pl/sql study 1

some sample SQL statement
1, where
select * from dept where deptno=12;
select * from dept where deptno=12 and name like 'THOMAS%';
-----------------------------------------------------------------------------------------
select * from dept where name_id <10>5;
select * from dept where name between 5 and 10;
-----------------------------------------------------------------------------------------
2,union, union all
union is only join the different
union all is for join all;
3,intersect, minus
intersect is for getting the same in the both;
minus is for fetch the different in the first table;

scott schema

/u01/app/oracle/product/10.2.0/db_1/rdbms/admin/utlsampl.sql

alter table table_name add id number;

alter table table_name drop column id;

Hold meeting

I feel very nervous when I hold the meeting. I seems I lack some confidence.

Monday, April 6, 2009

v$asm

SQL> select table_name from dict where table_name like 'V$ASM%';

TABLE_NAME
------------------------------
V$ASM_ALIAS
V$ASM_CLIENT
V$ASM_DISK
V$ASM_DISKGROUP
V$ASM_DISKGROUP_STAT
V$ASM_DISK_STAT
V$ASM_FILE
V$ASM_OPERATION
V$ASM_TEMPLATE

9 rows selected.

ASM view

• V$ASM_ALIAS: In the ASM instance, this view lists all aliases in all currently mounted disk
groups. It is not used in the database instance.
• V$ASM_CLIENT: In the ASM instance, V$ASM_CLIENT lists all client databases currently accessing
disk groups. In the database instance, it contains one row for the ASM instance, if the data-
base has any currently open ASM files.
• V$ASM_DISK: In the ASM instance, V$ASM_DISK lists all disks discovered by the ASM instance. In
the database instance, it contains one row for each disk in disk groups currently in use by the
database instance.
• V$ASM_DISKGROUP: In the ASM instance, this view lists all disk groups discovered by the instance.
In the database instance, it lists all disk groups currently in use by the instance.
• V$ASM_FILE: In the ASM instance, all ASM files belonging to disk groups mounted by the ASM
instance are listed by this view. It is not used in the database instance.
• V$ASM_OPERATION: In the ASM instance, this view shows information about any long-running
operations, such as rebalancing, and it is not used in the database instance.
• V$ASM_TEMPLATE: In the ASM instance, V$AM_TEMPLATE shows all templates for all disk groups
currently mounted by the instance. In the database instance, it lists all templates for disk
groups currently in use by the instance.
Oracle 10.2 or above also includes the two following additional dynamic performance views:
• V$ASM_DISKGROUP_STAT: In the ASM instance, this view provides the same information as
V$ASM_DISKGROUP, but it does not discover new disk groups.
• V$ASM_DISK_STAT: This view provides the same information as V$ASM_DISK in the ASM
instance, but it does not discover new disks.

Friday, April 3, 2009

user previlige

client:用户无法登录。
SQL> connect admin/admin@db01;
ERROR:
ORA-12541: TNS:no listener



server:
经过检查,linstner是OK的,
sqlplus admin/admin@db01
报告没有create session权限,
SQL> select * from dba_role_privs where grantee='ADMIN';

no rows selected

SQL> grant connect to admin;

Grant succeeded.

SQL> select * from dba_role_privs where grantee='ADMIN';

GRANTEE GRANTED_ROLE ADM DEF
------------------------------ ------------------------------ --- ---
ADMIN CONNECT NO YES



系统权限:user_sys_privs;
对象权限:user_tab_privs;

Oracle ASM

On Linux, ASM requires a number of additional RPM packages, which can be downloaded from
http://oss.oracle.com. These include the following:
• oracleasm-support
• oracleasm
• oracleasmlib



/etc/init.d/oracleasm script takes the following options:
• configure: Configure ASM.
• start: Start the ASM service.
• stop: Stop the ASM service.
• status: Print the status of ASM service.
• createdisk: Create an ASM disk.
• scandisks: Search for ASM disks.
• listdisks: List ASM disks.
• querydisk: Query the current status of an ASM disk.
• deletedisk: Delete an ASM disk.
• restart: Restart the ASM service.
• link: Load the oracleasm module.
• enable: Enable the ASM service.
• disable: Disable the ASM service.

Thursday, April 2, 2009

Elva's photo




Oracle Clusterware consists of the following components:

• Cluster Synchronization Services (CSS): manages cluster node membership
• Cluster Ready Services (CRS): performs management operations and high availability recovery
• Event Manager (EVM): manages event notifications and callouts

evmd, ocssd and crsd

Oracle a book RAC

Today I will start to read a book named 'Pro oracle database 10g RAC on linux'.
I prepare to cost 4 weeks to finished it

Wednesday, April 1, 2009

The old street in my wife's family


阶级斗争不能忘呀!历史的见证!2009-2



苏州科文中心夜景

苏州科文中心夜景,2008年夏天拍摄


OCR manage

Adding an OCR Location

You can add an OCR location after an upgrade or after completing the Oracle RAC installation. If you already mirror the OCR, then you do not need to add an OCR location; Oracle Clusterware automatically manages two OCRs when you configure normal redundancy for the OCR. Oracle RAC environments do not support more than two OCRs, a primary OCR and a secondary OCR.

Run the following command to add an OCR location using either destination_file or disk to designate the target location of the additional OCR:

ocrconfig -replace ocr destination_file
ocrconfig -replace ocr disk

Run the following command to add an OCR mirror location using either destination_file or disk to designate the target location of the additional OCR:

ocrconfig -replace ocrmirror destination_file 
ocrconfig -replace ocrmirror disk

backup and recover OCR

Oracle Clusterware automatically creates OCR backups every 4 hours. At any one time, Oracle Clusterware always retains the latest 3 backup copies of the OCR that are 4 hours old, 1 day old, and 1 week old.

The default location for generating backups on Red Hat Linux systems is CRS_home/cdata/cluster_name where cluster_name is the name of your cluster and CRS_home is the home directory of your Oracle Clusterware installation.

ocrconfig -showbackup

ocrconfig -export backup_file_name

Recovering the OCR
make sure the OCR is unavailable

ocrcheck

To restore the OCR from automatically generated backup
1,#ocrconfig -showbackup
2,$ocrdump -backupfile file_name
3,#crsctl stop crs
4,#ocrconfig -restore file_name
5,#crsctl start crs
6,cluvfy com ocr -n all [-verbose]

to recover OCR from OCR export file
1,#crsctl stop crs
2,#ocrconfig -import file_name
3,#crsctl start crs
4,#cluvfy com ocr -n all [-verbose]


Adding and Removing Voting Disks

crsctl add css votedisk path

crsctl delete css votedisk path

Backup voting disk
dd if=voting_disk_path of=target.bak.dump

Recover voting disk
dd if=target.bak.dump of=voting_disk_path

Happy new year 2009













平原老豆腐

起源于山东的传统小吃。相信很多人没有听说过,但是应该听说过“豆腐脑”,这在很多地方都有。其实这两样玩意在外观上看差不多的,但是老豆腐的妙处却绝非豆腐脑所能比的了的。
  做法很特别,因为在豆腐的制作上豆腐脑是属于速成的,老豆腐却很有讲究,制作出来的豆腐属于上品;要说他们的关键区别还是在汤里面,豆腐脑一般都是放些酱油水,但是老豆腐的汤那是绝对讲究,放入好几味材料,精心熬制而成。
  特点:豆腐洁白明亮、嫩而不松,卤清而不淡,油香而不腻;食之香气扑鼻,有肉味而不腥,有辣味而不呛。
  老 豆腐在山东出名的有德州平原老豆腐、济南商河老豆腐、聊城高唐老豆腐。这三地的口味又各有千秋,反正都非常好吃.三地的居民早起上班的基本不自己做饭,就 去小摊上吃这老豆腐,因为很实惠,一般售价在6毛-1块钱,属于小本买卖,而且老豆腐摊遍地都是,非常多.是以上三地的早餐首选。
  老豆腐的历史究竟有多少年了,恐怕没人说的上来。
  据说清朝乾隆皇帝下江南路过德州平原吃了一次老豆腐,当场招聘那个做老豆腐的人进宫,加入了御厨“豆腐帮”。现在,老豆腐在北京也有了一个根据地,被冠名为“北京老豆腐”。其实,真正地道的老豆腐还是出自山东。
  《故都食物百咏》中称老豆腐:“云肤花貌认参差,已是抛书睡起时,果似佳人称半老,犹堪搔首弄风姿。”可谓诙谐。注说:“老豆腐较豆腐脑稍硬,形状则相同。豆腐脑如妙龄少女,老豆腐则似半老佳人。”
  老豆腐与豆腐脑有相似之处,不同点是它没有“脑”的细腻和鲜嫩。它在点卤之后,在微火上炖一会儿,而成为老豆腐,盛在碗内,浇麻酱、酱油、韭菜花等调料食用。
   《故都食物百咏》中称老豆腐:“云肤花貌认参差,已是抛书睡起时,果似佳人称半老,犹堪搔首弄风姿。”可谓诙谐。注说:“老豆腐较豆腐脑稍硬,形状则相 同。豆腐脑如妙龄少女,老豆腐则似半老佳人。豆腐脑多在晨间出售,老豆腐则在午后。豆腐脑浇卤,老豆腐则佐酱油等素食之。”.

update my blog

Today , I update my blog . cool!
希望不要放弃。以此鼓励。

oracle RAC initialization parameter

Parameters that Must Have Identical Settings on All Instances

The following list contains the parameters that must be identical on every instance:
  • ACTIVE_INSTANCE_COUNT

  • ARCHIVE_LAG_TARGET

  • CLUSTER_DATABASE

  • CLUSTER_DATABASE_INSTANCES

  • COMPATIBLE

  • CONTROL_FILES

  • DB_BLOCK_SIZE

  • DB_DOMAIN

  • DB_FILES

  • DB_NAME

  • DB_RECOVERY_FILE_DEST

  • DB_RECOVERY_FILE_DEST_SIZE

  • DB_UNIQUE_NAME

  • INSTANCE_TYPE (RDBMS or ASM)

  • PARALLEL_MAX_SERVERS

  • REMOTE_LOGIN_PASSWORD_FILE

  • UNDO_MANAGEMENT


The SERVICE_NAMES initialization parameter specifies one or more names by which clients can connect to the instance. The instance registers its service names with the Listener. When a client requests a service, the Listener determines which instances offer the requested service and routes the client to the appropriate instance.

verify the configuration using the Cluseter untility

[oracle] $ cd /staging_area/clusterware/cluvfy
[oracle] $ ./runcluvfy.sh stage -pre crsinst -n docrac1,docrac2 -verbose

CRS check
/opt/oracle/crs/bin/./crs_stat -t

ASM check
cd /opt/oracle/crs/bin
./srvctl status asm -n docrac1
ASM instance +ASM1 is running on node docrac1.






3 node RAC can't bring up

when install oracle database in the three nodes, it came out some error. and when finished it, we found two nodes some application can't run.

finally, we found the network adapts are not same.

the document said:
  • Public interface names must be the same for all nodes. If the public interface on one node uses the network adapter eth0, then you must configure eth0 as the public interface on all nodes.You should configure the same private interface names for all nodes as well. If eth1 is the private interface name for the first node, then eth1 should be the private interface name for your second node.