linux下oracle11GDG搭建(一):环境准备(二)

2014-11-24 09:03:34 · 作者: · 浏览: 1
L tolist codes): L

8e Linux LVM

Hex code (type L tolist codes): 8e 创建逻辑卷格式

Changed system typeof partition 1 to 8e (Linux LVM)

Command (m forhelp): p

Disk /dev/sdb: 32.2GB, 32212254720 bytes

255 heads, 63sectors/track, 3916 cylinders

Units = cylinders of16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System

/dev/sdb1 1 3916 31455238+ 8e Linux LVM

//查看可知转换逻辑卷格式成功,接下来就是创建逻辑卷

Command (m for help): w //保存退出

\

2、创建物理卷

创建物理卷(pv):

[root@bjsrv ~]# pvcreate /dev/sdb1 //把分区作为一个物理卷来使用

\

[root@bjsrv ~]#pvdisplay //显示物理卷信息

\

3、建立卷组

将物理卷加入卷组(vg):

[root@bjsrv ~]#vgcreate datavg /dev/sdb1 //创建卷组

//格式:vgcreate datavg /dev/sdb1

//说明:建立卷组 逻辑卷组名 物理卷

\

[root@bjsrv ~]#vgdisplay //查看卷组信息

\

4、创建逻辑卷

在卷组下创建逻辑卷:

lvcreate [-n取名] [-L 指定大小]

参考图例:

\

操作:

# lvcreate-n lv_dsk1 -L 7g datavg

# lvcreate-n lv_dsk2 -L 7g datavg

# lvcreate-n lv_dsk3 -L 7g datavg

# lvcreate -n lv_dsk4 -L 8g datavg

//剩余一些空间给卷组头使用

# lvdisplay //查看逻辑卷信息

\

\

5、格式化逻辑卷

对逻辑卷进行格式化:

参考图例:

\

操作如下:

#mkfs.ext3 /dev/datavg/lv_dsk1

#mkfs.ext3 /dev/datavg/lv_dsk2

#mkfs.ext3 /dev/datavg/lv_dsk3

#mkfs.ext3 /dev/datavg/lv_dsk4

6、建虚拟磁盘目录

为虚拟出的4块磁盘建立目录:

#mkdir /dsk1

#mkdir /dsk2

#mkdir /dsk3

#mkdir /dsk4

7、自动挂载

设置自动挂载,即将上几步所创建的目录设置为开机自动挂载

#vi /etc/fstab 设置自动挂载

参考图例:

\

操作添加:

/dev/datavg/lv_dsk1 /dsk1 ext3 defaults 0 0

/dev/datavg/lv_dsk2 /dsk2 ext3 defaults 0 0

/dev/datavg/lv_dsk3 /dsk3 ext3 defaults 0 0

/dev/datavg/lv_dsk4 /dsk4 ext3 defaults 0 0

挂载四块磁盘:

#mount /dsk1

#mount /dsk2

#mount /dsk3

#mount /dsk4

#df–h //查看磁盘信息

\

8、赋权

把新建目录的所有者改为oracle,属组设为dba:

#chown -R oracle:dba /dsk1

#chown -R oracle:dba /dsk2

#chown -R oracle:dba /dsk3

#chown -R oracle:dba /dsk4

2.对sh添加磁盘操作

操作步骤参考“对bj磁盘操作”。

步骤(略)。

5.改造数据库

说明:完成对数据库的改造,与DG无关,是为了设置一个模拟环境。

1、修改显示方式

bj修改

$vi $ORACLE_HOME/sqlplus/admin/glogin.sql

修改

setsqlprompt ‘_user@ _connect_identifier>’

settermout on;

set timeon

set timingon

参考下图:


\

sh修改

参考bj修改,略。

2、改造文件位置

目的:模拟redo日志、datafile不在同一磁盘下。

SQL>startup; //启库

【补充】:报MEMORY_TARGETnot supported on this system

启库时报00845错误\

查看告警日志:

$tail -f /u01/app/oracle/diag/rdbms/testdb12/TestDB12/alert/ log.xml

$df -h

\

内存超出了,需要修改初始化参数文件中的参数值:

SQL>create pfile fromspfile;

$vi$ORACLE_HOME/dbs/initTestDB12.ora;

对内存值进行修改,参考如下图:

\

SQL>create spfile from pfile;

SQL>startup;

补充结束

SQL>select name from v$controlfile; //查看控制文件位置

\

SQL>select member from v$logfile; //查看日志位置


\

SQL>select name from v$datafile; //查看数据文件位置

\

SQL>archive log list //查看归档模式,DG必须是归档模式

\

以上查询得知:

控制文件、日志文件、数据文件在同一目录下,且未开归档。于是下面就要根据查询出的结果对数据库进行改造,模拟一个较复杂的环境。

创建文件放置位置所需目录:

规划:

redo日志放在dsk1、dsk2下

归档日志放在dsk4下

1、创建目录
bj创建目录

$mkdir -p /dsk1/oradata/bj

$mkdir -p /dsk2/oradata/bj

$mkdir -p /dsk3/oradata/bj

$mkdir -p /dsk4/oradata/bj

$mkdir -p /dsk4/arch_bj

sh创建目录

$mkdir -p /dsk1/oradata/sh

$mkdir -p /dsk2/oradata/sh

$mkdir -p /dsk3/oradata/sh

$mkdir -p /dsk4/oradata/sh

$mkdir -p /dsk4/arch_sh

补充:

查看告警日志

\

2、改造redo日志位置(bj)

SQL>selectmember from v$logfile;

\

SQL> selectgroup#,status,bytes from v$log;

\

SQL>alterdatabase add logfile member

‘/dsk2/oradata/bj/redo01b.log’to group 1,

‘/dsk2/oradata/bj/redo02b.log’to group 2,

‘/dsk2/oradata/bj/redo03b.log’to group 3;

SQL> selectmember from v$logfile;

\

迁移redo日志:(需在mount下进行)

SQL>shutdownimmediate;

$ cp/u01/app/oracle/oradata/TestDB12/redo03.log /dsk1/oradata/bj/red