安装Oracle Linux的时候选上Oracle需要的那些rpm包,还有Oracle ASM那些rpm包。 1,修改/boot/grub/grub.conf文件,把default改成1 0对应ELhugemem内核 1对应ELsmp内核 (我这里的虚拟机是vbox,如果启动ELhugemem内核会报错,所以在此修改了grub.conf文件)

安装Oracle Linux的时候选上Oracle需要的那些rpm包,还有Oracle ASM那些rpm包。

1,修改/boot/grub/grub.conf文件,把default改成1

0对应ELhugemem内核

1对应ELsmp内核

(我这里的虚拟机是vbox,如果启动ELhugemem内核会报错,所以在此修改了grub.conf文件)

2,修改/etc/inittab文件,把默认启动级别由5改为3

把id:5:initdefault: 改为id:3:initdefault:

关闭selinux,修改/etc/selinux/config文件:

SELINUX=disabled

3,关闭不需要的服务

因为我这里是为了安装oracle,所以就把一些不需要的service关闭了。

输入chkconfig --list查看服务,然后输入下面这些指令关闭不需要的服务:

chkconfig anacron off

chkconfig atd off

chkconfig crond off

chkconfig apmd off

chkconfig autofs off

chkconfig dund off

chkconfig pand off

chkconfig capi off

chkconfig isdn off

chkconfig dc_client off

chkconfig dc_server off

chkconfig diskdump off

chkconfig netdump off

chkconfig gpm off

chkconfig irda off

chkconfig lm_sensors off

chkconfig mdmonitor off (RAID or LVM)

chkconfig mdmpd off

chkconfig smartd off

chkconfig iptables off(关闭防火墙,这个很重要,当然也可以设置,这里为了简单起见,直接把防火墙关了)

chkconfig bluetooth off

chkconfig cups off

chkconfig sendmail off

chkconfig iiim off

4,软件包检查:(如果是安装的Oracle Enterprise Linux 4.7,那么这些包应该是已经自带了的)

binutils-2.15.92.0.2-13.EL4

compat-db-4.1.25-9

compat-libstdc++-296-2.96-132.7.2

control-center-2.8.0-12

gcc-3.4.3-22.1.EL4

gcc-c++-3.4.3-22.1.EL44

glibc-2.3.4-2.9

glibc-common-2.3.4-2.9

gnome-libs-1.4.1.2.90-44.1

libstdc++-3.4.3-22.1

libstdc++-devel-3.4.3-22.1

make-3.80-5

pdksh-5.2.14-30

sysstat-5.0.5-1

xscreensaver-4.18-5.rhel4.2

setarch-1.6-1

5,修改内核参数(其实Oracle Enterprise Linux 4.7的默认内核参数已经优化过了,基本上不需要我们再修改了)

修改/etc/sysctl.conf的内容:

kernel.shmall = 2097152

kernel.shmmax = 2147483648

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

fs.file-max = 65536

net.ipv4.ip_local_port_range = 1024 65000

net.core.rmem_default = 1048576

net.core.rmem_max = 1048576

net.core.wmem_default = 262144

net.core.wmem_max = 262144

然后执行sysctl -p使内核参数修改生效

6,提升shell限制

在文件/etc/security/limits.conf中添加如下内容:

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

7,修改文件/etc/pam.d/login

session required /lib/security/pam_limits.so

session required pam_limits.so

8,在文件中/etc/profile添加

if [ $USER = "oracle" ]; then

if [ $SHELL = "/bin/ksh" ]; then

ulimit -p 16384

ulimit -n 65536

else

ulimit -u 16384 -n 65536

fi

fi

9,用root创建组,用户,目录。

groupadd oinstall

groupadd dba

useradd oracle -g oinstall -G dba

passwd oracle

mkdir -p /u01/app/oracle

chown -R oracle:oinstall /u01

chmod -R 775 /u01

10,oracle用户在.bash_profile文件添加如下内容

export TMP=/tmp

export TMPDIR=$TMP

umask 022

export ORACLE_HOSTNAME=asmnode

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1

export ORACLE_SID=orcl

export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib

export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

(修改主机名可以修改/etc/sysconfig/network)

11,给linux添加磁盘,并且把oracle安装包用FileZilla传到这个磁盘对应的目录/mnt/b

(其实这一步可以跳过,直接把安装包传到oracle用户的目录下再解压就行。

我这样做的目的是不想让虚拟机的第一块磁盘增长过快,这个知识点后面在建asm磁盘的时候会用到)

fdisk /dev/sdb

n(新建分区)

p(主分区)

1(分区号是1)

1(开始cylinder为1)

1566(结束cylinder为1566,相当于12GB)

然后输入p查看分区表

w(保存)

partprobe(让kernel读取分区信息 )

mkfs.ext3 /dev/sdb1 把第二块硬盘的第一个主分区格式化为ext3

mount /dev/sdb1 /mnt/b #将第一个分区挂载到d这个目录

重启后自动挂载:vi /etc/fstab

添加:/dev/sdb1 /mnt/b ext3 default 0 0

12,安装Oracle软件

用户远程登陆用

Xmanager Enterprise 3的Xshell的,然后输入emacs弹出图形界面,说明远程登陆没问题了。

oracle用户在家目录执行/mnt/b/database/runInstaller,根据图形界面一步步做,选择仅安装数据库软件

13,创建asm磁盘(基于ASMLib方式)

先删除第11步创建的磁盘,然后给虚拟机添加4块磁盘

两块属于scsi控制器

另外两块属于sas控制器

如图所示

配置 ASMLib:

root用户输入/etc/init.d/oracleasm configure

如图:

输入/etc/init.d/oracleasm createdisk VOL1 /dev/sdb

此时会出错,如下所示:

[root@asmnode ~]# /etc/init.d/oracleasm createdisk VOL1 /dev/sdb

Marking disk "/dev/sdb" as an ASM disk: asmtool: Device "/dev/sdb" is not a partition

解决方案是:

需要对/dev/sdb分区/dev/sdb1

fdisk /dev/sdb

n-p-1-回车-回车-p-w

其他磁盘也是这样分区,最后执行fdisk -l查看分区效果,确保已经分区了

然后再执行partprobe让kernel读取分区信息

这时候我们就可以创建asm磁盘了:

/etc/init.d/oracleasm createdisk VOL1 /dev/sdb1

/etc/init.d/oracleasm createdisk VOL2 /dev/sdc1

/etc/init.d/oracleasm createdisk VOL3 /dev/sdd1

/etc/init.d/oracleasm createdisk VOL4 /dev/sde1

接着我们查看asm磁盘信息:

[root@asmnode ~]# /etc/init.d/oracleasm listdisks

VOL1

VOL2

VOL3

VOL4

[root@asmnode ~]# /etc/init.d/oracleasm querydisk /dev/sdb1

Disk "/dev/sdb1" is marked an ASM disk with the label "VOL1"

如果要删除 ASM 磁盘通过以下命令:

# /etc/init.d/oracleasm deletedisk VOL4

如果是在 RAC 环境中的某一个节点中添加了ASM 磁盘,那么需要在其它的节点上

运行scandisks 来获取这种变化。

/etc/init.d/oracleasm scandisks

14,用dbca创建asm实例:

如图:

用root用户创建css服务(这一步的目的是实现asm实例和database实例之间的同步)

/u01/app/oracle/product/10.2.0/db_1/bin/localconfig add

可以用root用户查看css服务是否成功

[root@asmnode ~]# ps -ef | grep css

oracle 5174 1 4 10:12 ? 00:00:06 /u01/app/oracle/product/10.2.0/db_1/bin/ocssd.bin

root 5429 3943 0 10:14 pts/0 00:00:00 grep css

也可以用oracle用户执行crsctl check css来查看

效果:

[oracle@asmnode ~]$ crsctl check css

CSS appears healthy

完成

15,用oracle用户执行验证

export ORACLE_SID=+ASM

sqlplus / as sysdba

select name,state from v$asm_diskgroup;

select name||header_status||path from v$asm_disk;

16,用dbca创建基于ASM的数据库

这里除了第6,7,8步,其它跟普通的dbca创建数据库是一样的。我们选择的是ASM存储方式。

创建完数据库后

export ORACLE_SID=orcl

sqlplus / as sysdba

然后执行查询

select * from scott.dept;

select name from v$datafile;

select name from v$tempfile;

select member from v$logfile;

到此我们完成了基于Oracle ASM的数据库的创建。

还有就是记得用netca创建oracle监听程序

然后用sys用户执行alter system register;

最后来查看进程ps -ef | grep oracle

17,体验一下rebanlance

执行alter diskgroup dgroup1 drop disk asmvol2;

SELECT group_number, operation, state, est_work, sofar, est_rate,

est_minutes FROM v$asm_operation;

返回

GROUP_NUMBER OPERATION STATE EST_WORK SOFAR EST_RATE

------------ --------------- ------------ ---------- ---------- ----------

EST_MINUTES

-----------

1 REBAL RUN 1021 44 343

2

然后

GROUP_NUMBER OPERATION STATE EST_WORK SOFAR EST_RATE

------------ --------------- ------------ ---------- ---------- ----------

EST_MINUTES

-----------

1 REBAL RUN 1139 1063 322

0

然后

GROUP_NUMBER OPERATION STATE EST_WORK SOFAR EST_RATE

------------ --------------- ------------ ---------- ---------- ----------

EST_MINUTES

-----------

1 EXPEL RUN 0 0 0

0

然后

no rows selected

SQL> select STATE,REDUNDANCY,TOTAL_MB,FREE_MB,NAME,FAILGROUP from v$asm_disk;

STATE REDUNDANCY TOTAL_MB FREE_MB NAME FAILGROUP

---------- --------------------- ---------- ---------- --------------- --------------------

NORMAL UNKNOWN 12284 0

NORMAL UNKNOWN 12284 11157 ASMVOL1 FGROUP1

NORMAL UNKNOWN 12284 11719 ASMVOL3 FGROUP2

NORMAL UNKNOWN 12284 11720 ASMVOL4 FGROUP2

[oracle@asmnode ~]$ ps -ef | grep arb0

oracle 7036 1 12 16:37 ? 00:00:26 asm_arb0_+ASM

oracle 7056 6942 0 16:41 pts/0 00:00:00 grep arb0

[oracle@asmnode ~]$ ps -ef | grep arb0

oracle 7069 6942 0 16:47 pts/0 00:00:00 grep arb0

由此可见当删除磁盘重新平衡的时候,会出现asm_arb0_+ASM进程,平衡结束后这个进程也就结束了

在asm实例中查询:

SQL> SELECT disk_number, label FROM V$asm_disk;

DISK_NUMBER LABEL

----------- ---------------------------------------------------------------------------------------------

0 VOL2

2 VOL1

0 VOL3

1 VOL4

而在数据库实例中查询:

SQL> SELECT disk_number, label FROM V$asm_disk;

DISK_NUMBER LABEL

----------- -------------------------------

0 VOL3

1 VOL4

2 VOL1

我们可以从上面的SQL 知道在ASM 实例中可以查询到所有可以用的磁盘,而在数据库实

例中只可以查询到让自己使用的磁盘

18,创建表空间和用户

连接asm实例:

export ORACLE_SID=+ASM

sqlplus / as sysdba

create diskgroup dgtest external redundancy

disk 'ORCL:VOL2' name testvol2;

连接数据库实例:

export ORACLE_SID=orcl

sqlplus / as sysdba

create tablespace testtblsp datafile '+dgtest';

create user lmc identified by lmc

temporary tablespace temp default tablespace testtblsp;

grant connect,resource to lmc;

conn lmc/lmc

create table tt(id int,name varchar2(20));

insert into tt values(1,'wilson');

insert into tt values(2,'scott');

commit;

conn / as sysdba

注意:释放内存可以用

echo 3 > /proc/sys/vm/drop_caches

Oracle11g R2的ASM安装可以参考http://blog.csdn.net/liumengcheng/article/details/37565931

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

oracle 10g 配置asm,在Oracle Linux 4.7上安装配置Oracle 10g ASM数据库相关推荐

  1. Oracle rac 组件reload,亲测Linux 7系列 上安装Oracle RAC 遇到的问题和坑

    在安装grid后跑root.sh时候遇到第一个问题: ohasd failed to start Failed to start the Clusterware. Last 20lines of th ...

  2. arch linux 树莓派,树莓派上安装配置Archlinux

    安装Archlinux 安装Archlinux这部分在Linux系统中测试通过.sdX是SD卡盘符. SD卡分区 使用fdisk工具 # fdisk /dev/sdX 在fdisk提示命令下删除旧分区 ...

  3. red hat linux 安装oracle10g vm,oracle 10g 在 RED HAT ENTERPRISE LINUX 5下的安装

    oracle 10g 在 RED HAT ENTERPRISE LINUX 5下的安装 ORACLE 10G在LINUX的安装: 先上来两张图: DBA是努力的方向,ORACLE DBA包罗万象,连L ...

  4. biee 12c linux 安装,oracle biee 12c linux ha 集群安装配置手册.pdf

    oracle biee 12c linux ha 集群安装配置手册 Oracle BIEE 12c Linux 系统集群安装配置文档 仇 辉 2017 年 2 月 1 1 文档控制 编制 日期 作者 ...

  5. 使用 VMware 在 Linux 5.4 上安装、升级及维护 Oracle 10gR2 RAC

    使用 VMware 在 Linux 5.4 上安装.升级及维护 Oracle 10gR2 RAC ---- 实验名称 使用 VMware Server 2.0 在 Linux Enterprise 5 ...

  6. 红旗linux安装oracle,红旗linux 4.1上安装oracle 9204

    本文是在参照和实践网上相关安装文档后整理其流程如下.[@more@] 一.红旗linux4.1的安装介质是光盘,oracle 9204为ISO文件: 红旗linux必须为最大化安装,否则其不能安装or ...

  7. Oracle SQL Developer 19.1 Microsoft Windows x64 64-bit 下载 安装 配置

    Oracle SQL Developer 19.1 Microsoft Windows x64 64-bit 下载 安装 配置 下载地址 安装步骤 连接Oracle数据库 添加用户 下载地址 下载地址 ...

  8. Linux下Tomcat的安装配置

    Linux下Tomcat的安装配置 一.下载安装对应的jdk,并配置Java环境. 官网下载地址: http://www.oracle.com/technetwork/java/javase/down ...

  9. 开发人员学Linux(10):CentOS7安装配置代码质量管理平台SonarQube6.4

    2019独角兽企业重金招聘Python工程师标准>>> 1.前言 上一章讲述了如何配置使用源代码管理工具SVN并使之与Apache集成,从而实现代码的变更可追溯,虽然在大多数团队里强 ...

最新文章

  1. WINCE应用BINFS
  2. 七牛技术总监陈超:记Spark Summit China 2015
  3. 【Python】spyder编译器调试时添点断点的方法
  4. 【CyberSecurityLearning 69】反序列化漏洞
  5. OpenGL计算着色器
  6. Python 线程定时器 Timer - Python零基础入门教程
  7. SpringMVC常用的注解
  8. 《SDN期末作业——实现负载均衡》
  9. formidable模块的使用
  10. mysql如果中途报错则_Mysql的下载安装全过程(包括中途遇到的问题)
  11. 基于PHP的学生选课管理系统
  12. 学生用计算机怎么玩俄罗斯方块,回忆小霸王童年 如何在电脑上玩俄罗斯方块环游记...
  13. 深度学习基础知识——信息论(自信息、信息熵与马尔科夫链)
  14. matlab 门限回归模型,门限回归及Stata操作汇总与空间门槛回归模型简介
  15. 探索深海生态系统和冰卫星的协同作用-深海机器人开发与空间技术合作
  16. Nuvoton M0518 之 记录数据到LDROM,数据掉电不丢失的方式
  17. python爬虫——爬去淘宝商品页面,总是跳转到登录界面
  18. 517电信日丨联通沃云携全新“上云引擎”,助力企业数字化转型
  19. 最新pr值大于6的网站大全
  20. Android 7.1.1 通话记录数据库详解

热门文章

  1. c# richtextbox转html,C# RichTextBox 输入内容转自定义样式图像
  2. 管理大数据存储的十大技巧
  3. Python_Day10_进程、线程、协程
  4. 判断单链表是否存在环及环的入口点
  5. HDU 1576 A/B(数论简单题,求逆元)
  6. RAID组中的“Foreign”状态磁盘
  7. java应用程序打包成可jar执行程序
  8. OpenCV-最值计算cv::minMaxIdxcv::minMaxLoc
  9. linux用户limit修改,linux – 使用cgroups作为用户设置用户创建的systemd范围的MemoryLimit...
  10. matlab 游标 精度,如何在MATLAB数据光标中显示更高精度的数字?