linux下一个oracle11G  DG建立(一个):准备环境

周围环境

名称

主库

备库

主机名

bjsrv

shsrv

软件版本号

RedHat Enterprise5.5、Oracle 11g 11.2.0.1

RedHat Enterprise5.5、Oracle 11g 11.2.0.1

一.环境准备:

1.vbox

导入虚拟机镜像(已安装oracle、已建库)

1、导入虚拟机(主库-北京,下面简称bj)

2、导入虚拟机(备库-上海,下面简称sh)

3、主库、备库分别加入一块磁盘

为主库和备库分别加入1块磁盘,大小为30g。

(1)、bj加入磁盘。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaHVhbmd5YW5sb25n/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

(2)、bj网卡设置

依实际须要进行设置host only或桥接,例如以下图:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaHVhbmd5YW5sb25n/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

(3)、sh加入磁盘、网卡设置

操作步骤同上(略)。

2.主机

1、rootpassword

(1)、改动bj的rootpassword

(2)、改动sh的rootpassword

略。

2、主机名

(1)、改动bj下主机名

vi /etc/sysconfig/network     //改动主机名

NETWORKING=yes

NETWORKING_IPV6=no

HOSTNAME=bjsrv

#hostname  bjsrv            //使主机名生效或重新启动系统

(2)、改动sh下主机名

vi /etc/sysconfig/network     //改动主机名

NETWORKING=yes

NETWORKING_IPV6=no

HOSTNAME=shsrv

#hostname  shsrv            //使主机名生效或重新启动系统

3、.bash_profile

此处为显示格式习惯的设置。可不做改动。

(1)、改动bj的.bash_profile

#vi .bash_profile

# .bash_profile

# Get the aliases and functions

if [ -f ~/.bashrc ]; then

.~/.bashrc

fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin

export PATH

unset USERNAME

#PS1=`whoami`@`hostname`':${PWD}> '

PS1='[\u@\h \w]\$'

export PS1

[root@bjsrv ~]#source.bash_profile

(2)、改动sh的.bash_profile

#vi .bash_profile

# .bash_profile

# Get the aliases and functions

if [ -f ~/.bashrc ]; then

.~/.bashrc

fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin

export PATH

unset USERNAME

#PS1=`whoami`@`hostname`':${PWD}> '

PS1='[\u@\h \w]\$'

export PS1

[root@shsrv ~]#source.bash_profile

4、网络配置

(1)、改动bj网络配置

#vi  /etc/hosts

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaHVhbmd5YW5sb25n/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

#vi /etc/sysconfig/network-scripts/ifcfg-eth0
  //改动IP地址

DEVICE=eth0

BOOTPROTO=static

IPADDR=192.168.4.71

NETMASK=255.255.255.0

ONBOOT=yes

#service  networkrestart

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaHVhbmd5YW5sb25n/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

(2)、改动sh网络配置

#vi  /etc/hosts

#vi /etc/sysconfig/network-scripts/ifcfg-eth0
  //改动IP地址

DEVICE=eth0

BOOTPROTO=static

IPADDR=192.168.4.72

NETMASK=255.255.255.0

ONBOOT=yes

#service  networkrestart

3.安装数据库

因为导入虚拟机中已安装好oracle,此处不进行安装。安装详见“oracle安装”文档,此步骤略。

[root@bjsrv ~]#cat /etc/oratab  
//验证库已经存在

注意:在主库安装oracle
软件和数据库,在备库仅仅要安装oracle软件。

4.磁盘

简单介绍:

使用逻辑卷作为物理卷使用。

分别在bj和sh新创建一块30G的硬盘,创建逻辑卷,aix的逻辑卷必须是一整块磁盘,linux下能够是磁盘的一个分区,逻辑卷组就是把好几块物理卷整合在一起,逻辑卷就是从逻辑组切割出来各种大小的分区。(需改动)

目的:虚拟出4块磁盘

1.对bj加入磁盘操作

1、分区→逻辑卷

为磁盘分区,分一个主分区。

然后再转换为逻辑卷。

[root@bjsrv ~]#fdisk –l            //查看硬盘情况

[root@bjsrv ~]# fdisk   /dev/sdb

Command (m for help): m

Command action

a   toggle a bootable flag

b   edit bsd disklabel

c   toggle the dos compatibility flag

d   delete a partition

l   list known partition types

m   print this menu

n   add a new partition

o   create a new empty DOS partition table

p   print the partition table

q   quit without saving changes

s   create a new empty Sun disklabel

t   change a partition's system id

u   change display/entry units

v   verify the partition table

w   write table to disk and exit

x   extrafunctionality (experts only)

Command (m forhelp): n

Command action

e  extended

p  primary partition (1-4)  p

Partition number(1-4):

First cylinder(1-3916, default 1):

Using default value1

Last cylinder or+size or +sizeM or +sizeK (1-3916, default 3916):

Using default value3916

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+  83  Linux

Command (m forhelp): t        //(change a partition'ssystem id)转换成逻辑卷格式

Selected partition 1

Hex code (type 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 指定大小]

參考图例:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaHVhbmd5YW5sb25n/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

操作:

# 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、格式化逻辑卷

对逻辑卷进行格式化:

參考图例:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaHVhbmd5YW5sb25n/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

操作例如以下:

#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;                
         //查看日志位置

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaHVhbmd5YW5sb25n/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

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

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

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaHVhbmd5YW5sb25n/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

以上查询得知:

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

创建文件放置位置所需文件夹:

规划:

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/redo03a.log;

$ cp/u01/app/oracle/oradata/TestDB12/redo02.log  /dsk1/oradata/bj/redo02a.log;

$ cp/u01/app/oracle/oradata/TestDB12/redo01.log  /dsk1/oradata/bj/redo01a.log;

$ls/dsk1/oradata/bj

SQL>startupmount;

SQL>alterdatabase rename file

‘/u01/app/oracle/oradata/TestDB12/redo03.log’to ‘/dsk1/oradata/bj/redo03a.log’;

SQL>alterdatabase rename file

‘/u01/app/oracle/oradata/TestDB12/redo02.log’to ‘/dsk1/oradata/bj/redo02a.log’;

SQL>alterdatabase rename file

‘/u01/app/oracle/oradata/TestDB12/redo01.log’to ‘/dsk1/oradata/bj/redo01a.log’;

SQL>selectmember from v$logfile;

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaHVhbmd5YW5sb25n/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

删除旧的redo日志文件:

$rm/u01/app/oracle/oradata/TestDB12/redo*;

$ls/u01/app/oracle/oradata/TestDB12/

至此,实现了日志文件与数据文件的文件夹分离(即模拟了文件不在同一个磁盘)。

3、设置归档(bj)

SQL>alterdatabase archivelog;

SQL>showparameter archive

SQL>altersystem set log_archive_dest_1='location=/dsk4/arch_bj';

SQL>altersystem set log_archive_format='arch_%t_%s_%r.log' scope=spfile;

SQL>startupforce;

SQL>archivelog list;

4、所有操作均生成redo设置(bj)

强制“全部操作”都生成redo日志:

SQL>alterdatabase force logging;

SQL>selectname from v$archived_log;      
 //再查看一下归档日志信息

********************未完待续**************************

声明:

         原创作品。出自 “深蓝的blog” 博客,同意转载,转载时请务必注明出处(http://blog.csdn.net/huangyanlong)。

关于涉及版权问题。在追究法律责任的权利。

版权声明:本文博客原创文章,博客,未经同意,不得转载。

linux下一个oracle11G DG建立(一个):准备环境的更多相关文章

  1. linux下一个Oracle11g RAC建立(五岁以下儿童)

    linux下一个Oracle11g RAC建立(五岁以下儿童) 四.建立主机之间的信任关系(node1.node2) 建立节点之间oracle .grid 用户之间的信任(通过ssh 建立公钥和私钥) ...

  2. linux下一个Oracle11g RAC建立(四)

    linux下一个Oracle11g RAC建立(四) 三.配置共享存储 配置ASM管理准备 1)OCRDISK :存储CRS资源配置信息 2)VOTEDISK:仲裁盘.记录节点状态 3)DataDis ...

  3. linux下一个Oracle11g RAC建立(八)

    linux下一个Oracle11g RAC建立(八) 七.安装oracle软件   直接在图形界面里安装oracle.在node1操作 在虚拟机界面中,直接切换到oracle用户下: [grid@no ...

  4. Mac、Linux下两个Emacs共享一个配置文件

    Mac.Linux下两个Emacs共享一个配置文件 有些嵌入式的实验需要在Linux进行,就安装了RHEL6.4的虚拟机,下载并编译了Emacs. 在Linux的.emacs文件中加入以下语句,即可引 ...

  5. Linux下查看进程(程序)启动时的环境变量

    背景: 因最近试安装Linux下的jira,有一个中文插件安装后,一旦设置开机启动后,它是英文,而在终端再重新启动一次后呢,似乎插件生效,它又恢复为正常中文界面,我首先想这这涉及到一个环境变量的问题, ...

  6. Linux下的Jenkins+Tomcat+Maven+Git+Shell环境的搭建使用(jenkins自动化部署)【转】

    jenkins自动化部署 目标:jenkins上点构建(也可以自动检查代码变化自动构建)>>>项目部署完成. 一.安装jenkins 1.下载jenkins 这里我选择的是war包安 ...

  7. linux下如何优雅的挂载一个外界设备(比如优盘)

    最近从事linux,实验室一个破服务器,能连上网,但是输入这样的命令:        yum -y install gcc yum -y install gcc-c++ ,居然说是没有这样的镜像,也罢 ...

  8. 在linux下,怎么去查看一个运行中的程序, 到底是占用了多少内存

    1. 在linux下,查看一个运行中的程序, 占用了多少内存, 一般的命令有 (1). ps aux: 其中  VSZ(或VSS)列 表示,程序占用了多少虚拟内存. RSS列 表示, 程序占用了多少物 ...

  9. 记录Window系统下myeclipes连接linux下mysql所出现的一个bug

    记录myeclipes远程连接mysql所出现的一个bug 今天在玩框架hibernate时,出现一个非常费解的bug,话不多说,先看bug Access denied for user 'root' ...

随机推荐

  1. UVa 10286 - Trouble with a Pentagon

    题目:如图在正五边形中画一个正方形,一直正五边形边长,求正方形边长. 分析:计算几何,解析几何.求出边长的比例关系带入求解就可以. 设正五边形边长为1,在顶点建立直角坐标系,则左上角坐标为:B(-co ...

  2. CentOS 7单用户模式修改root密码

    CentOS 7的单用户模式和6.5稍有不同 把ro改成 "rw init=/sysroot/bin/sh". 完成之后按 "Ctrl+x" chroot /s ...

  3. jQuery 自学笔记—5 遍历

    什么是遍历? jQuery 遍历,意为“移动”,用于根据其相对于其他元素的关系来“查找”(或选取)HTML 元素.以某项选择开始,并沿着这个选择移动,直到抵达您期望的元素为止. 下图展示了一个家族树. ...

  4. android编译自己 内置的jar做法

    1.首先 android.mk LOCAL_PATH := $(call my-dir) # ===================================================== ...

  5. HDU 5071 Chat

    题意: CLJ找了很多妹子-  (题目好没节操-)  对于CLJ和妹子的聊天对话框  有一下几种操作: add  加一个妹子在聊天窗队列末尾  假设这个妹子已经在队列中则add失败 close  关掉 ...

  6. hdu3496(二维背包)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3496 题意:题意是 DuoDuo 想看n部电影,但是被要求最长能看的总时间数为 L,每部电影有他的时长 ...

  7. [置顶] JQuery实战总结三 标签页效果图实现

    在浏览网站时我们会看到当我们鼠标移到多个选项卡上时,不同的选项卡会出现自己对应的界面的要求,在同一个界面上表达了尽量多的信息.大大额提高了空间的利用率.界面的切换效果也是不错的哦,这次自己可以实现啦. ...

  8. 采用DWR、maven保存数据到数据库

    一.原理: Ajax是时下比较流行的一种web界面设计新思路,其核心思想是从浏览器获取XMLHttp对象与服务器端进行交互. DWR(Direct Web Remoting)就是实现了这种Ajax技术 ...

  9. Hibernate常用Annotation标签说明

    @ javax.persistence.Entity 实体类定义,该标签表示当前类是一个Hibernate的数据库实体,对应着数据库中的某个表 位置:用于类级别 参数:无 样例:@Entity 注意: ...

  10. Java 二次MD5 32位小写加密算法与php页面加密结果相同

    最近做的一个项目需要使用MD5加密算法,需要加密的参数有两个.自己先试了几次,算的结果为php页面的不一样,后来与写php页面的同事沟通后,了解到php页面的算法如下: action = " ...