转载自http://blog.csdn.net/csuduan/article/details/9011467,加入了自己的一些实际情况
一、硬件检测
1、内存检测 oracle11g要求最低1GB内存
命令: grep MemTotal /proc/meninfo
2、交换空间检测 通常交换空间是内存1.5倍
命令: grep SwapTotal /proc/meninfo
3、临时目录/temp检查
命令:df -k /temp
心得:有些朋友的物理内存和swap分区不够大。物理内存在虚拟机下扩充很方便,就不再赘述了。swap分区扩充如下:
一,查看现有memory及swap
# free -m
total used free shared buffers cached
Mem: 2026 1931 95 0 15 1789
-/+ buffers/cache: 127 1899
Swap: 3074 2 3071
二,用dd命令创建一个2G的文件(2G=1024*1024*2=2097152)
#dd if=/dev/zeroof=/var/swapfile1 bs=1024 count=2097152
三,将它创建为Linux Swap虚拟交换文件
#mkswap/var/swapfile1
3、激活并使用/var/swapfile1交换文件
#swapon/var/swapfile1
4、可以使用free -m查看swap大小,使用swapon -s查看swap状态:
#free -m
...略过
5、设置系统启动后自动激活虚拟交换文件。
#vi /etc/fstab
/var/swapfile1swap swap defaults 0 0
二、配置过程
1、创建用户和用户组
[root@csuduan home]# /usr/sbin/groupadd oinstall
[root@csuduan home]# /usr/sbin/groupadd dba
创建Oracle用户和密码,输入命令:
[root@csuduan home]# /usr/sbin/useradd -g oinstall -g dba -m oracle
[root@csuduan home]# passwd oracle
2、创建数据库软件目录和数据文件存放目录
mkdir /home/oracle/app
mkdir /home/oracle/app/oracle
mkdir /home/oracle/app/oradata
mkdir /home/oracle/app/oracle/ product
更改目录属主为Oracle用户所有
chown -R oracle:oinstall /home/oracle/app
3、修改用户的SHELL的限制
修改/etc/security/limits.conf文件
输入命令:vi /etc/security/limits.conf,按i键进入编辑模式,将下列内容加入该文件。
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
编辑完成后按Esc键,输入 “:wq” 存盘退出
修改/etc/pam.d/login 文件,输入命令:vi /etc/pam.d/login,按i键进入编辑模式,将下列内容加入该文件。
session required /lib/security/pam_limits.so
session required pam_limits.so
编辑 /etc/profile ,输入命令:vi /etc/profile,按i键进入编辑模式,将下列内容加入该文件。
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
4、修改linux内核,修改/etc/sysctl.conf文件
输入命令: vi /etc/sysctl.conf ,按i键进入编辑模式,将下列内容加入该文
件
fs.file-max = 6815744
fs.aio-max-nr = 1048576
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
要使 /etc/sysctl.conf 更改立即生效,执行以下命令
[root@csuduan home]#/sbin/sysctl -p
5、配置oracle用户的环境变量
首先,切换到新创建的oracle用户下,
输入:su – oracle ,然后直接在输入 : vi .bash_profile
按i编辑 .bash_profile,进入编辑模式,增加以下内容:
umask 022
export ORACLE_BASE=/home/oracle/app
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
编辑完成后按Esc键,输入 “:wq” 存盘退出
三、安装数据库
1、当上述系统要求操作全部完成后,注销系统,在图形界面以Oracle用户登陆。
2、打开一个终端,运行unzip命令解压oracle安装文件
输入命令:
unzip linux_11gR2_database_1of2.zip
unzip linux_11gR2_database_2of2.zip
3、防止出现中文乱码 执行如下命令 export LANG=en
4、执行安装,输入命令:./runInstaller
初始界面:
选择仅安装数据库软件
安装单个实例
选择语言,添加简体中文
安装企业版,功能齐全
主目录与基目录,会根据设置的环境变量自动读取
选择用户组
检查软件包
装到这一步,可以看到,很多的rpm包没有,我们可以从安装linux的光盘或ISO中查找所缺的包,然后使用rpm –ivh xxx.rpm --nodeps –force 来进行安装(其中加上--nodeps -- force 代表强制安装,是在直接使用rpm –ivh xxx.rpm安装不成功的情况下用的)安装。
等到把包全部都安装好的情况下,再次在oracle图形界面中,执行安装过程,下来在环境检查过程中,就通过了。
安装完成后,系统会提示你需要用root权限执行2个shell脚本。按照其提示的路径,找到其所在的位置,如:我的就
在/home/oracle/app/oracle/product/11.2.0/dbhome_1/root.sh
和 /home/oracle/app/oraInventory/orainstRoot.sh 新开启一个终端,输入命令:
su – root
cd /home/oracle/app/oracle/product/11.2.0/dbhome_1
sh root.sh
cd /home/oracle/app/oraInventory
sh orainstRoot.sh
四、创建数据库
切换到oracle账户,在终端中输入dbca,启动图形化创建。
有些朋友可能运行后会出现如下的错误:
远程安装oracel执行命令dbca或netca,碰到如下错误:
[oracle@CentOS database]$ dbca
#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
# SIGSEGV (0xb) at pc=0x9ec67510, pid=6899, tid=3077686976
#
# Java VM: Java HotSpot(TM) Client VM (1.5.0_17-b02 mixed mode)
# Problematic frame:
# C [libnnz11.so+0x3c510]
#
# An error report file with more information is saved as hs_err_pid6899.log
#
# If you would like to submit a bug report, please visit:
# http://java.sun.com/webapps/bugreport/crash.jsp
这是因为,没有安装Oracle最新补丁的后果。
可以下载文件p8670579_112010_LINUX.zip
然后上传到服务器
取到补丁包并解压:unzip p8670579_112010_LINUX.zip
Step 2: # cd p8670579
# $ORACLE_HOME/OPatch/opatch apply -invPtrLoc $ORACLE_HOME/oraInst.loc
就可以运行了。
选择定制数据库
输入实例名和全局数据库名
如果想通过web管理数据库,则险种配置企业管理器,否则不选
输入密码
数据库存放位置选择文件系统
启用快速恢复和归档
配置数据库组件,不确定的就全选
内存设置,启用内存自动管理
调整大小,设置块大小及进程数
设置字符集
当看到此界面,说明oracle建库完成