您的位置:首页 > 数据库 > Oracle

fedora12 安装oracle11gR2

2011-09-04 02:26 441 查看

fedora12 安装oracle11gR2

(2010-03-12 22:52:27)


转载

标签:

it

试过安装11gR1 网上少资料也觉得是不兼容这么高级的内核 只好找了相对较多资料的 R2:

原帖地址

http://bbs.fedora-zh.org/showthread.php?4776-%E5%9C%A8fedora-12%E4%B8%8A%E9%9D%A2%E5%AE%89%E8%A3%85oracle-11-2
解压文件

解压文件命令

代码:

unzip linux.x64_11gR2_database_1of2.zip

unzip linux.x64_11gR2_database_2of2.zip

其实图形界面解压就可以

设置hosts文件

保证/etc/hosts文件包含下面的内容

代码:

<IP-address> <fully-qualified-machine-name> <machine-name>

这一步一般情况下不用做任何修改,保证文件里面包含上面的内容就可以了

修改内核参数

oracle推荐的下列参数需要设置的最小值:

代码:

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 2097152

kernel.shmmax = 536870912

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 = 1048586

这些参数的当前值可以用下面的命令查看:

代码:

/sbin/sysctl -a | grep <param-name>

一般情况下这些参数的值都不符合要求,因此需要把下列内容添加到"/etc/sysctl.conf"文件末尾

代码:

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 2097152

kernel.shmmax = 536870912

kernel.shmmni = 4096

# semaphores: semmsl, semmns, semopm, semmni

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=1048586

运行下面的命令来更改内核参数的值:

代码:

/sbin/sysctl -p

在"/etc/security/limits.conf"文件末尾添加下列内容:

代码:

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

把下面的内容添加到/etc/pam.d/login文件当中

代码:

session required pam_limits.so

关掉防火墙和selinux,这都是图形界面能解决的,就不多说了

设置

如果你安装fedora 12的时候选择了完全安装,那么大部分oracle依赖的软件包已经安装了,还需要安装的就只有下列这些软件包了,如果在oracle安装前的检查过程中提示还缺少包,可以yum安装,如果源里面没有,可以到rpmfind.net等网站去搜索,自己下载rpm包安装

代码:

yum install binutils

yum install libaio libaio-devel

yum install ksh

yum install sysstat

yum install unixODBC unixODBC-devel

yum install compat-libstdc++-33

还有个比较重要的包: pdksh 与上面的ksh冲突 删掉ksh吧

ftp://fr2.rpmfind.net/linux/PLD/dists/ac/ready/i686/pdksh-5.2.14-33.i686.rpm
可能出现的错误1:error: Failed dependencies:pdksh conflicts with ksh-20100202-1.fc12.i686

解决办法:rpm -e --nodeps ksh

可能出现的错误2:rpm -ivh pdksh-5.2.14-33.i686.rpm

Preparing... ########################################### [100%]

file /bin/sh from install of pdksh-5.2.14-33.i686 conflicts with file from package bash-4.0.33-1.fc12.i686

file /usr/share/man/man1/sh.1.gz from install of pdksh-5.2.14-33.i686 conflicts with file from package bash-4.0.33-1.fc12.i686

解决办法:rpm -ivh --replacefiles pdksh-5.2.14-33.i686.rpm

默认安装的这些包没有32位的版本,oracle在安装前的检查过程中有可能会因为这个原因显示fail,直接忽略就可以了

添加新的组和用户:

代码:

groupadd oinstall

groupadd dba

groupadd oper

groupadd asmadmin

useradd -g oinstall -G dba,oper,asmadmin oracle

passwd oracle

这篇文章介绍的安装过程没打算使用ASM,所以这次安装不会用到 asmadmin 这个用户组

为oracle的安装建立一个新的目录

代码:

mkdir -p /u01/app/oracle/product/11.2.0/dbhome_1

chown -R oracle:oinstall /u01

chmod -R 775 /u01

取得root权限,运行下面的命令

代码:

xhost +<machine-name>

一般情况下不需要运行这个命令

编辑/etc/redhat-release文件,把里面的内容替换为下面的内容

代码:

redhat release 5

用oracle用户登录,把下面的内容添加到.bash_profile的末尾:

代码:

# Oracle Settings

TMP=/tmp; export TMP

TMPDIR=$TMP; export TMPDIR

ORACLE_HOSTNAME=f1264.localdomain; export ORACLE_HOSTNAME

ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE

ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1; export ORACLE_HOME

ORACLE_SID=DB11G; export ORACLE_SID

ORACLE_TERM=xterm; export ORACLE_TERM

ORACLE_UNQNAME=orcl; export ORACLE_UNQNAME

PATH=/usr/sbin:$PATH; export PATH

PATH=$ORACLE_HOME/bin:$PATH; export PATH

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

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

if [ $USER = "oracle" ]; then

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

ulimit -p 16384

ulimit -n 65536

else

ulimit -u 16384 -n 65536

fi

fi

这里面的ORACLE_HOSTNAME的参数的值需要根据自己的情况来设定,默认安装的fedora为localhost.localdomain

安装

用oralce用户登录,如果你使用的是仿真X的话,那么需要设置一下环境变量DISPLAY 的值

代码:

DISPLAY=<machine-name>:0.0; export DISPLAY

在终端里面进入解压出来的database文件夹,运行下面的命令开始安装过程:

代码:

./runInstaller

检查时可能出现的错误:User With Same UID

google翻遍 最终还是忽略了这个警告 右上角 ignore all打钩``安装完成后需要做的操作编辑/etc/oratab文件,设置下面一行的标志为"Y":代码:

DB12G:/u01/app/oracle/product/11.2.0/dbhome_1:Y

最后把/etc/redhat-release文件的内容改为

代码:

Fedora release 12 (Constantine)

最后用root身份执行2个脚本

/***************************************************

重装时还遇到了如下问题:
Error in invoking target 'agent nmhs' of makefile '/u01/app/oracle/product/11.2.0/dbhome_1/sysman/lib/ins_emagent.mk'. See '/u01/app/oraInventory/logs/installActions2010-06-24_03-22-15PM.log' for details
没搞懂什么意思,最后在google上找到了解决方法,方法如下:
When you start to install with ./runInstaller, run in another terminal window (as root)

ls $ORACLE_HOME/sysman/lib/ins_emagent.mk

At first this will produce an error, as the installer wont have created this file yet,then we create this file :
start here

ORACLE_HOME/sysman/lib

make -f ins_emagent.mk "agent"

Once the file exists, do:

vi $ORACLE_HOME/sysman/lib/ins_emagent.mk

Search for the line

$(MK_EMAGENT_NMECTL)

Change it to:

$(MK_EMAGENT_NMECTL) -lnnz11(第一个字母为L的小写,后面两个是数字1,非L的小写)
做了以上修改后,再重试,OK,问题解决!
*************************************************************************
在 linux下启用sql*plus时,发现不能用方向键回显及移动光标。可以通过安装rlwrap这个软件来解决这个问题。这个软件在chinaunix 上有下。安装好后,你就可以使用 rlwrap sqlplus来启动SQL*PLUS了,如果嫌麻烦的话,可以用alias sqlplus='rlwrap sqlplus'给sqlplus 设置别名,以后就只要输入 sqlplus就好了。
至于rlwrap的具体用法,有man查看一下就知道了。

*************************************************************************
关于SQL*PLUS中的edit默认编辑器问题:
你可以在~/.bash_profile 中添加如下行:export EDITOR = vim 以后在执行edit命令和时候就会默认调用vim编辑器了。
*************************************************************************
关于启用oracle服务时图形界面的乱码问题:
我这个人比较懒,所以就直接把 OS和oracle的语言都改成英文的了:
用vim编辑/home/oracle/.bash_profile,加入如下行:

export LANG = en
这是OS语言设置。
export NLS_LANG=english_america.UTF8
这是oracle服务语言设置
保存后离开,重启PC,就全部变成英文的啦,看起来还蛮不错的喔~
************************************************************************/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: