闲来无事,今天在虚拟机下安装了oracle11g的单实例,特此记录分享下!
用到的软件:VirtualBox-4.0.8-71778-Win.exe oracle linux 6.3(V33411-01.iso) oracle11g(p10404530_112030_Linux-x86-64_1of7.zip, p10404530_112030_Linux-x86-64_2of7.zip)
一、安装linux。
虚拟机配置的是:1g内存,30g硬盘,一块网卡(host-only模式)
一般来说,安装图形化界面一直走下去即可。需要注意的是在硬盘分配的时候选择自定义。我是新建了三个,一个是swap=2g 一个是boot=1g 剩下的给到了/根节点
二、安装前的配置.
1.设置本地的虚拟网卡及linux下的etho。
一般来讲安装好linux系统之后,在本地的网络连接中会出现host-only的网络 ip=192.168.56.1 掩码=255.255.255.0 其他不填写。
编辑vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
NM_CONTROLLED=yes
ONBOOT=yes
HWADDR=08:00:27:E6:97:FA
TYPE=Ethernet
BOOTPROTO=none
IPADDR=192.168.56.137
PREFIX=24
GATEWAY=192.168.56.1
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
UUID="524b1577-d80a-4f9c-ad33-9480ebf5ddde"
USERCTL=no
然后重启或service network restart使之生效。这样就可以在本地通过xshell或者crt进行远程访问了。
2.设置hosts文件。
vi /etc/hosts 在下面增加一行(ip地址 主机名.域名)
3.修改内核参数(在root帐号下操作): 这个必须要设置,不然安装oracle的时候会报一些错误
编辑内核参数配置文件 vi /etc/sysctl.conf,在该文件下修改或添加如下行:
fs.file-max = 6815744
fs.aio-max-nr=1048576
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
sysctl -p; --生效
sysctl -a --查看
4.编辑系统资源限制配置文件 在文件/etc/security/limits.conf中添加如下内容:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
5.编辑文件 vi /etc/pam.d/login,添加如下行
session required /lib/security/pam_limits.so
session required pam_limits.so
注意:
如果操作系统是64位,则应使用64位so文件
Session required /lib64/security/pam_limits.so
6.编辑 vi /etc/profile 文件,添加如下行(11gR1有要求,R2没有要求):
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
该配置在用户oracle登录时会立即生效,如果当前 oracle 用户已经登录可退出后重新登录使之生效。
7.关闭防火墙
停止2个防火墙服务iptables(ipv4)、ip6tables(ipv6)
service iptables stop
service ip6tables stop
查看防火墙服务状态
service iptables status
service ip6tables status
禁止防火墙服务开机启动
chkconfig iptables off
chkconfig ip6tables off
查看防火墙服务开机启动状态
chkconfig –list | grep iptables
8.关闭selinux
获取selinux状态 getenforce
修改selinux配置文件关闭selinux
vi /etc/selinux/config
SELINUX=disabled --将参数又enforcing修改为disabled
重启操作系统
关闭当前已开启的SELinux使用如下命令 setenforce 0
9.创建或修改安装数据库的用户和组
groupadd oinstall
groupadd dba
groupadd oper
useradd -g oinstall -G dba oracle (如果系统中没用创建oracle用户执行本句及接下来的一条语句)
password oracle
usermod -g oinstall -G dba,oper oracle (如果系统中已经存在oracle 用户)
10.创建oracle安装目录与修改安装权限
mkdir -p /u01/app/oracle
mkdir /u01/app/oraInventory
chown -R oracle:oinstall /u01/app/
chmod -R 755 /u01/app/*
11.设置环境变量 修改vi .bash_profile 在文件中添加以下内容: 切换oracle目录
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/dbhome_1
export ORACLE_SID=orcl
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
export ORACLE_BASE ORACLE_HOME ORACLE_SID LD_LIBRARY_PATH PATH
source /home/oracle/.bash_profile--执行如下命令使以上设置立即生效
12.通过yum的方式安装缺少的系统包(采用本地yum)
(a).在 virtualBox 中挂上 oracle-linux-6.3.iso
cd /mnt
mkdir cdrom
mount /dev/cdrom /mnt/cdrom/
mount: block device /dev/cdrom is write-protected, mounting read-only ---出现这个提示说明挂载成功
(b).cd /etc/yum.repos.d
mv public-yum-ol6.repo public-yum-ol6.repo.bak
vi public-yum-ol6-local.repo
增加
[oel6_local]
name = Enterprise Linux 6.3 DVD
baseurl=file:///mnt/cdrom/Server/
gpgcheck=0
enabled=1
yum install oracle-rdbms-server-11gR2-preinstall
13.解压两个压缩包并进行授权
安装前用root用户执行xhost + 使所有用户都能访问图形桌面
unzip p10404530_112030_Linux-x86-64_1of7.zip
unzip p10404530_112030_Linux-x86-64_2of7.zip
chmod -R 700 /home/oracle/database
chown -R oracle:oinstall /home/oracle/database
su - oracle
./runInstaller
出现的问题:安装oracle碰到 上面的错误:报 Exception in thread "main" java.lang.NoClassDefFoundError
解决:查找缺少哪些包并进行安装。rpm -q --queryformat %-{name}-%{version}-%{release}-%{arch}"\n" \ compat-libstdc++-33 glibc-kernheaders glibc-headers libaio libgcc glibc-devel xorg-x11-deprecated-libs
14.运行./runInstaller 之后就安装图形化界面一步步安装就行了。前期配置好了,不会出现安装出错的问题。图就偷个懒不截图了。
------请大家指点不足,互相探讨 2016-04-19