RAC遇到GC Buffer Busy的解决方法
Leave a Comment2010年07月06日 作者: 大头刚
一朋友求助说他的ORACLE RAC服务器负载不是很稳定,时高时低,且没有任何规律。摘取负载高峰时间的一段日志来分析,最大的等待如下:
^LTop SQL Statements DB/Inst: BOSSCENT/bosscent1 (May 19 13:17 to 13:32)
SQL ID Planhash % Activity Event % Event
————- ———– ———- —————————— ———-
f9rf7a8cg40nt N/A 9.14 gc buffer busy 2.53
insert into test(id,user_id,point_num,time,point_gettype,sex) values(
:1,:2,:3,sysdate,:4,:5)
N/A 9.14 gc current block busy 2.22
insert into test(id,user_id,point_num,time,point_gettype,sex) values(
:1,:2,:3,sysdate,:4,:5)
N/A 9.14 gc current block 2-way 1.42
insert into test(id,user_id,point_num,time,point_gettype,sex) values(
:1,:2,:3,sysdate,:4,:5)
bs6z6hs8sum53 1007834728 8.09 [...]
简单对比Mysql的AUTO_INCREMENT和Oracle的SEQUENCE
1 Comment2010年06月11日 作者: 大头刚
好几年前刚学习MYSQL的一些笔记,当时把MYSQL和ORACLE进行一系列对比。前几天遇到MYSQL的AUTO_INCREMENT值增长到极限,导致表无法插入的问题,正好把以前的笔记复习下。
使用oracle的scott模式的数据作为测试数据:
oracle>conn mytest/mytest
Connected.
oracle>@$ORACLE_HOME/sqlplus/demo/demobld.sql
oracle>select table_name from user_tables;
TABLE_NAME
————————————————————
BONUS
DEPT
DUMMY
EMP
SALGRADE
把这些表在导入到MYSQL,具体过程就省略了。
mysql> show tables;
+——————+
| Tables_in_mytest |
+——————+
| bonus |
| dept |
| dummy |
| emp [...]
利用RMAN的DUPLICATE创建STANDBY将单实例数据库升级为RAC环境
Leave a Comment2010年03月05日 作者: 大头刚
利用RMAN的DUPLICATE创建STANDBY,可以在不停机的情况下将单实例数据库迁移到RAC数据库。当然这种不停机是指相对的,在DG进行切换的时候,停机时间可以保证在5分钟之内完成。
首先确保目标服务器上的RAC环境已经建立,由于RMAN的DUPLICATE创建STANDBY,没有办法将数据文件放到远端的ASM磁盘组中,本次测试使用OCFS2做为RAC的共享存储文件系统。如果使用ASM作为存储机制,无法实现不停机迁移。
测试环境:
primary sid : test
primary ip : 192.168.1.200
standby sid : testrac01,testrac03,testrac03
standby Public ip : 192.168.1.101,192.168.1.102,192.168.1.103
standby Virtual ip : 192.168.1.201,192.168.1.202,192.168.1.203
standby Private ip : 10.0.0.1,10.0.0.2,10.0.0.3
RAC数据库环境如下:
SYS@test_rac01>select * FROM v$version;
BANNER
—————————————————————-
Oracle DATABASE [...]
Oracle利用dbms_backup_restore进行恢复
Leave a Comment2009年10月27日 作者: 大头刚
需要搭建一个oracle测试环境,把上周末的一个全备拿出来做恢复。把oracle安装到原始库相同目录,把备份COPY到原始库的备份目录,包括数据文件备份、控制文件备份、归档日志备份。用dbms_backup_restore进行恢复。
一、利用dbms_backup_restore来restore控制文件。
Oracle实现Mysql里的G标志
Leave a Comment2009年09月16日 作者: 大头刚
这篇文章我曾经在chinaunix的blog发表过,现在转过来。
mysql中提供了一个G [g] 标志,放到sql语句后,可以使一行的每个列打印到单独的行。例如:
mysql> select * from test limit 2\G;
*************************** 1. row ***************************
test1: 0
test2: 0
test3: 0
*************************** 2. row ***************************
test1: 0
test2: 0
test3: 0
2 rows in set (0.02 [...]



