Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1829889
  • 博文数量: 323
  • 博客积分: 5970
  • 博客等级: 大校
  • 技术积分: 2764
  • 用 户 组: 普通用户
  • 注册时间: 2011-04-03 23:13
文章分类

全部博文(323)

文章存档

2018年(2)

2017年(11)

2016年(10)

2015年(27)

2014年(2)

2013年(30)

2012年(197)

2011年(44)

分类: Oracle

2012-05-09 16:20:02

RHEL AS5 安装oracle10g

 

作者:Roc

说明:根据网上很多文档的学习,结合本人安装过程中犯的错误,编写一份较详细的过程。参考了很多网上文档,互相学习!~

 

参考如下一些文档:

RHEL5上安装Oracle10g Release 2 (Oracle 11gR1基本相同)(比较详细)

http://blog.chinaunix.net/u/22677/showart_1205499.html

 

RHEL 5 环境 ORACLE10G(32安装)(标注了很多注意点)

http://neptune.javaeye.com/blog/165863

 

RHEL5.1 下安装oracle 10.2.0.1

 

首先安装RHEL AS5系统,去掉一些不用的功能,一些编辑和开发工具选上;

语言选择英文和简体中文两种,应用英文作为系统语言;

RHEL AS5 SWAP分区最好大于2G,否则会出现警告,不过强行安装也可以;

不要使用防火墙和selinux

 

可以从Oracle的主页上下载:

Oracle Database 10g Release 2 (10.2.0.1) Software

使用samba或者winscp拷贝文件到指定目录:我的是/mnt/zzp

解压下载好的文件:unzip 10201_database_linux32.zip

你可以把他解压到一个目录中,例如 "db/Disk1" 或者 "database",默认解压到database目录。

 

10g Release2 前的配置

RedHat AS5 光盘1

cd /media/cdrom/Server

rpm -Uvh setarch-2*

rpm -Uvh make-3*

rpm -Uvh glibc-2*

rpm -Uvh libaio-0*

 

RedHat AS5 光盘2

cd /media/cdrom/Server

rpm -Uvh compat-libstdc++-33-3*

rpm -Uvh compat-gcc-34-3*

rpm -Uvh compat-gcc-34-c++-3*

rpm -Uvh gcc-4*

rpm -Uvh libXp-1*

 

RedHat AS5 光盘3

cd /media/cdrom/Server

rpm -Uvh openmotif-2*

rpm -Uvh compat-db-4*

 

#安装过程中如果需要安装其他文件,可以先安装其它文件再安装所需的,安装不成功的,可以尝试多安装一次,有些错误可以忽略。

vi /etc/redhat-release

redhat-4

#Red Hat Enterprise Linux Server release 5 (Tikanga)

 

因为oracle 的官方只支持到RHEL4为止,所以要修改版本说明,把Red Hat Enterprise Linux Server release 5 (Tikanga) 注释掉,前面加上一行redhat-4,当然oracle安装完成后,要修改回来。redhat-4 必须为redhat-release文件的第一行,否则安装时还会报警告。

#vi /etc/sysctl.conf

增加下面的内容到文件中:

#kernel.shmmax共享内存段:设置要根据自己机器的配置,要大于sga+pga尺寸,并且不能超过本机内存量,如果超过本机的,系统会取一个默认值,一般这个值只有30多M,肯定不能满足oracle最低要求

kernel.shmall = 2097152

kernel.shmmax = 2147483648 

kernel.shmmni = 4096

# semaphores: semmsl, semmns, semopm, semmni

kernel.sem = 250 32000 100 128

fs.file-max = 65536

net.ipv4.ip_local_port_range = 1024 65000

net.core.rmem_default=262144

net.core.rmem_max=262144

net.core.wmem_default=262144

net.core.wmem_max=262144

 

运行下面的命令使得内核参数生效:

/sbin/sysctl p

groupadd oinstall

groupadd dba

groupadd oper

 

useradd -g oinstall -G dba oracle

passwd oracle

 

mkdir -p /u01/app/oracle/product/10.2.0/db_1

chown -R oracle.oinstall /u01

 

#vi /etc/security/limits.conf

增加下面的内容到文件 /etc/security/limits.conf 文件中:

* soft nproc 2047

* hard nproc 16384

* soft nofile 1024

* hard nofile 65536

 

增加下面的内容到文件 /etc/pam.d/login 中,使shell limit生效:

session required /lib/security/pam_limits.so

安装RHEL的时候最好采用静态IP地址,如果当时选择的是DHCP,现在需要更改/etc/sysconfig/network-scripts/ifcfg-eth0文件

DEVICE=eth0

BOOTPROTO=static

HWADDR=00:0C:29:4B:17:C4             #你的mac地址

ONBOOT=yes                       #此处rhel6为no,如果是no,则不会开启静态ip

IPADDR=192.168.1.253                 #你的IP地址

NETMASK=255.255.255.0

GATEWAY=192.168.1.1                 #你的网关

127.0.0.1改为具体的ip地址,注意最好去掉那些无用的,格式就是

ip地址   主机名   localhost

因为SELINUXoracle有影响,所以把secure linux设成无效,编辑文件/etc/selinux/config :

SELINUX=disabled

当然你也可以用图形界面下的工具 (系统 > 管理 > 安全级别和防火墙)。选择SELinux页面并且设为无效。

登录到oracle 用户并且配置环境变量,编辑/home/oracle目录下的.bash_profile文件

vi .bash_profile

增加下面的内容到文件 .bash_profile

 

# Oracle Settings

TMP=/tmp; export TMP

TMPDIR=$TMP; export TMPDIR

 

ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE

ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1; export ORACLE_HOME

ORACLE_SID=orcl; export ORACLE_SID

ORACLE_TERM=xterm; export ORACLE_TERM

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

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

CLASSPATH=$ORACLE_HOME/JREORACLE_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

 

#里面的SID在安装数据库时候如果修改了,安装完后需要回来重新修改SID

修改完用:source .bash_profile生效。

如果没有下面这些步骤,oracle在安装时,可能出现问题(可能使用oracle用户启动安装界面的时候报错,无法启动图形化界面。)

#vi /etc/inittab
 id:5:initdefault: 修改为 id:3:initdefaultoracle安装完成后,可以修改回来

#reboot(重启)

在文本模式下,用root登录

# startx
# xhost +
# su - oracle
$ export DISPLAY="192.168.1.253:0.0"        #
此处修改为你的IP地址

$ export LANG=en_US                         #设置运行语言

$ cd /tmp/zzp/databases

$ ./runInstaller

图片请参考:http://blog.chinaunix.net/u/22677/showart_1205499.html

这里我选择高级安装,默认安装的字符集是欧洲,对简体中文数据显示乱码。

 

 

 

这里选择企业版,语言选择英文和简体中文,如下图所示:

 

 

因为我们在.bash_profile中已经声明,所以这里会自动填充.如下图所示:我的路径为:/u01/app/oracle/product/10.2.0/db_1

 

 

开始进行安装前的检查工作

 

 

 

 

 

 

 

指定字符集为库所用的字符集,中文的为simplified Chinese zhs16gbk,如果字符集不对,可能造成以后数据乱码。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

需要root权限执行

sh /oracle/oraInventory/orainstRoot.sh

sh /oracle/product/10.2.0/db_1/root.sh

使用root用户,执行两个文件即可。

 

 

 

 

修改系统版本:

#vi /etc/redhat-release

Red Hat Enterprise Linux Server release 5 (Tikanga)

 

修改oracle用户修改环境变量:

#vi .bash_profile

修改安装过程中你修改过的SID及安装路径(如果你修改了的话)。

 

修改图形化界面登录

#vi /etc/inittab
 id:3:initdefault: 修改为 id:5:initdefault

 

su - oracle

cd /u01/app/oracle/product/10.2.0/db_1/bin

调用./lsnrctl service(可以查看当前监听器服务情况)

调用./lsnrctl start(启动监听器),如想停用则lsnrctl stop

判断监听器服务是否好用,可以使用tnsping ip地址。

#oracle用户登录下,其实不用进去目录,也不需要“./”,可以直接执行lsnrctl命令。

调用./sqlplus "/as sysdba"

start 开启数据库。

 

或者:

sqlplus /nolog
SQL> connect / as sysdba
start

 

SQL> shutdown immediate

SQL> exit

 

修改/ext/oratab,N改为Y/etc下面没有oratab文件的话,修改ORACLE_HOME/bin下面的dbstart 修改oratab=/etc/oratab

 

Oracle用户登录,确认oracle_homeoracle_sid为你安装时设置的正确HOMESID

 

增加:

su - oracle -c 'lsnrctl start'

su - oracle -c 'dbstart'

#不要偷懒用复制黏贴的,注意符号全角半角。

1、    运行 $ORACLE_HOME/bin/localconfig delete

2、    rm -rf $ORACLE_BASE/*

3、    rm -f /etc/oraInst.loc /etc/oratab

4、    rm -rf /etc/oracle

5、    rm -f /etc/inittab.cssd

6、    rm -f /usr/local/bin/coraenv /usr/local/bin/dbhome /usr/local/bin/oraenv

7、    删除oracle用户和组。

 

安装oracle的目录建议安装在一个单独的分区或者磁盘上。原因不细说了,oracle的文件是可以恢复的,万一你的系统坏掉了,把oradata下面的文件取出来还是可以恢复的。

 

最好在安装oracle时不要创建数据库,只安装oracle基本系统。系统安装好后用$ORACLE_HOME/bin/dbca,命令创建数据库,创建数据库时我们可以选择针对数据库的各种参数如“字符集”等。

 

如果你的系统使用的是中文,启动安装界面可能为乱码,最好先指定语言环境改为英文,在终端里输入:

$export LC_CTYPE=en_US.UTF-8

网上关于乱码的问题很多,安装界面以致最后的管理界面,出现中文乱码。需要去找一些字符包,替换掉原来的。参考:http://hi.baidu.com/kurz/blog/item/18e89123d02dbb44ac34de4b.html

 

如果安装时默认安装,字符集为欧洲的,导入dmp文件以后,中文字符为“?”,按照网上的方法修改字符集后,中文字符又变成了“靠”,很是郁闷。

假如使用了默认安装,也不是只有重装。用oracle用户登录,运行dbca,新建一个实例,可以指定字符集的。将原dmp文件导入新的实例,这个方法最安全了。

 

如果打开了防火墙,为了让其他计算机能够访问数据库,必须把下面端口打开:

端口1521(用于连接数据库)

端口1158(如果要用浏览器访问enterprise managment)

端口5560(如果要用浏览器访问isqlplus)

你可以用图形界面下的工具 (系统 > 管理 > 安全级别和防火墙)。选择防火墙页面,并且增加上面的端口。

 

环境变量根据个人的设置,SIDORACLE_HOME路径等一定要正确。

 

使用oracle用户不能启动oracle安装的图形化界面时,注销root,直接用oracle用户登录。

或者重新执行一次:

# xhost +
# su - oracle
$ export DISPLAY="192.168.1.253:0.0"

 

Message 1070 not found

安装结束以后要以oracle用户启动监听。

 

配置完自动启动后,重启发现数据库没有自动启动,运行dbstart,出现问题了。原因是dbstart的监听环境变量错了。(先检查你的/etc/oratab里面是否已经改为Y

解决方法:

修改oracle_home/bin下面的dbstart

vi dbstar

将该行改为export ORACLE_HOME_LISTNER=$ORACLE_HOME

保存退出,然后执行dbstart就没问题了。

 

运行 $ORACLE_HOME/bin/localconfig delete出错:

[root@skate-test ~]# sh /home/oracle/product/10.2.0.3/db_1/bin/localconfig delete

/etc/oracle does not exist. Creating it now.

/home/oracle/product/10.2.0.3/db_1/bin/localconfig: line 715: /etc/init.d/init.cssd: No such file or directory

需要先执行:

[root@skate-test ~]# sh /home/oracle/product/10.2.0.3/db_1/bin/localconfig add

阅读(1005) | 评论(1) | 转发(1) |
给主人留下些什么吧!~~

布毫铯2012-05-10 21:34:45

很详细明了的文章,有兴趣的可以精读一下