标签: 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,就全部变成英文的啦,看起来还蛮不错的喔~
************************************************************************/