菜鸟在LINUX系统中安装ORACLE11g

由于公司ERP系统的平台为RedHat Linux ES4+ORACLE10g,暂时交由我进行维护,所以想借此机会学习一下linux,对自己的要求不高,就是能在LINUX上安装成功ORACLE,然后会备份和恢复数据库.首先就在当当网上买了一本<基于LINUX平台的Oracel Database 10g管理>的书,由清华出版社翻译的,经过一段时间的阅读,可以说对我的学习没有任何实质性的帮助,建议初学者不要买这本书.

我首先尝试的是在红帽LINUX ES4安装ORACLE10g,经过若干天的尝试,同时也下载了许多的资料一步一步的做,最后都是不成功,最主要的是在进入oracle安装的时候,老是检查出来安装的一些RPM包版本不对,人搞得很烦燥,并且本人对LINUX也是一菜鸟,因此在这之后的好长一段时间都没再去尝试了.

最后在oracle.com.cn的论坛上看到了小布老师专门给菜鸟制作的视频讲座,才又开始新的学习.终于按照视频里的一步一步,安装成功了11g.其实我的文章就是根据视频里的步骤再复述了一遍,我的最大目的是温习一下安装的过程,让自己更熟练一些.,同时也给同级别的菜鸟一些学习的信心.

操作平台:VMWARE6.0+CentOS4.5.(可在www.centos.org下载).大家注意,LINUX版本的不同会给菜鸟带来很多纳闷的困扰,我建议如果想按照这篇文章安装,就一定要下载这个LINUX版本,它是免费的,不会像红帽一样涉及到版权的问题.可以说等于红帽的ES4版本.

数据库版本:ORACLE11G R1(我是在emule上下载的)

辅助软件:SecureCRT   Filezella  AdobeAcrobatReader

硬件:内存 1GB  硬盘空间>18GB

我下载的是DVD版本的OS,在虚拟机软件中先将OS载入到了光驱中.

在LINUX中,一定要注意大小写.特别是命令.

首先在虚拟机软件中安装CentOS,在安装时,

1    SWAP分区我设置了2048MB即内存的2倍,其它空间都装载到了"/"根目录,共计两个分区

2     配置好静态IP地址

3     选择"自定义安装",安装必需的软件包"GNOME图形界面"  ,Developments Tools和Legacy Softeare Development, Editors.其它可以不必安装,节省资源.

安装完成OS后.

1 利用SecreCRT利用SSH登录至LINUX,我大部分的操作都在这上面进行,因为VMWARE中OS切换很不方便 .并且 在实际环境中,管理中也都是通过SSH远程登录维护LINUX,非常方便.

2  利有开源的FileZella  FTP工具SSH连接至LINUX,传入下载的ORACLE文件,我下载的为.ZIP格式.

3   首先修改/etc/inittab文件,将其中的id:5:initdefault:中数字5改成3.就是将启动后进入图形界面改成进入字符界面,以节省资源.这个操作我以前一直想学习到,没想到在这里知道了,当时非常的开心.所以说,会安装ORACLE后,一些常见的LINUX命令操作也都学习到了.    改完后输入reboot重启一下OS

4   打开ORACLE.ZIP中的b32002.pdf文档,从第2节开始就是讲的怎样安装ORACLE.用来做参考,同时一些代码可以直接从PDF中COPY,非常方便.

5  检查PDF文档中要求的必需RPM包是否已安装 . 命令:rpm -qa | grep 包名称.

一般都是有6个包未安装,打开OS的映像文件,打开其中的RPMS目录,将6个包提取出来,再FTP到LINUX目录下.同时,在其目录下输入rpm -ivh *.rpm安装所有包.OK

binutils-2.15.92.0.2-18

compat-libstdc++-33.2.3-47.3

elfutils-libelf-0.97-5

elfutils-libelf-devel-0.97-5

glibc-2.3.9.4-2.19

glibc-common-2.3.9.4-2.19

glibc-devel-2.3.9.4-2.19

gcc-3.4.5-2

gcc-c++-3.4.5-2

libaio-devel-0.3.105-2

libaio-0.3.105-2

libgcc-3.4.5

libstdc++-3.4.5-2

libstdc++-devel-3.4.5-2

make-3.80-5

sysstat-5.0.5

unixODBC-2.2.11

unixODBC-devel-2.2.11

6  创建ORACLE组和用户,安装目录和权限

mkdir -p /u01/oracle

groupadd dba

groupadd oinstall

useradd -g oinstall -G -d /u01/oracle oracle

passwd oracle 设置密码

chown -R oracle:oinstall /u01

ls -l    命令查看是否生效.

7  vi   /etc/hosts

修改该文件,加入   你的LINUXIP地址   主机名称

主机名称可用hostname查看.

8   检查进程数fs-filemax值,应该是10260这个数值,除以512后为进程数值.具体作用不太明白,这是值是系统会给出的,我们也不要去改.命令为:cat /proc/sys/fs/file-max

9  修改/etc/sysctl.conf,加入以下内容:

kernel.shmall = 2097152

kernel.shmmax = 2147483648

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

net.ipv4.ip_local_port_range = 1024 65000

net.core.rmem_default = 4194304

net.core.rmem_max = 4194304

net.core.wmem_default = 262144

net.core.wmem_max = 262144

结束后,

/sbin/sysctl  -p  执行一下.

10 修改/etc/security/limits.conf,加入内容

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

11   修改/etc/pam.d/login,加入内容

session required /lib/security/pam_limits.so

session required pam_limits.so

12 修改/etc/profile,加入内容

if [ $USER = "oracle" ]; then

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

ulimit -p 16384

ulimit -n 65536

else

ulimit -u 16384 -n 65536

fi

fi

12   使用oracle用户登录,修改.bash_profie文件

su - oracle

vi .bash_profile     加入以下内容

ORACLE_BASE=/u01

ORACLE_HOME=$ORACLE_BASE/oracle

ORACLE_SID=wilson

PATH=$ORACLE_HOME/bin:$PATH

export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH

完成

13   用root用户将FTP至LINUX中的ORACLE安装文件移动到

mv ****.zip /u01/oracle/

unzip *.zip      命令进行解压.完成后,所以安装文件都会在u01/oracle/database下.

使用

chown -R oracle:oinstall database/

修改目录归属

14   使用oracle用户登陆,输入startx ,进入图形界面,然后再进入安装目录输入

./runInstaller开始安装.

选择高级安装,进行自定义安装

在安装中,会出现一个关于oraInventory目录的警告 ,点击OK,不用理会继续即可,在随后的窗口中将/oraInventory修改为/u01/oraInventory.

随后参数都是默认,在安装中会弹出一个要求执行u01/oraInventory/oraInstRoot.sh和/u01/oracle /root.sh的提示框,可在secureCRT中,以ROOT用户执行这两个文件 ,一定要注意大小写,其入进行End of installtion窗口,安装结束.

15   输入netca命令进行侦听配置.其中参数一律默认即可.可以用ps -ef 查看该服务是否已启用.

16   输入dbca命令,进行数据库的创建,下面我列出的是一些注意事项

选择gernel purpose,在SID和全局名称中,选择你在.bash_profile中创建的SID.

在Character Sets字符集选项中选择第2项AL32UTF8.

OK,完成.

17   进入u01/oracle/oradata目录,查看一下会出现一些数据库文件 .

ps -ef查看会增加更多的oracle相关服务

18   在图形界面中选择LogOut退出至字符界面

19 创建一个实例进行最后测试

注意:在数据库操作中都是用oracle用户执行命令.

输入

[oracle@computer ~]$ sqlplus /nolog

SQL*Plus: Release 11.1.0.6.0 - Production on Tue Dec 11 15:32:23 2007

Copyright (c) 1982, 2007, Oracle.  All rights reserved.

SQL> conn / as sysdba

Connected.

SQL> create table testbl ( id integer , name char(10));

Table created.

SQL> insert into testbl values ( 0 , 'wilson' );

1 row created.

SQL> commit;

Commit complete.

SQL> select * from testbl;

        ID NAME

---------- ----------

         0 wilson

SQL> shutdown immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> !ps -ef

exit

全部完成,推荐大家一定要看看小布教师的视频讲座.

[oracle@computer ~]$ sqlplus

SQL*Plus: Release 11.1.0.6.0 - Production on Tue Dec 11 15:00:41 2007

Copyright (c) 1982, 2007, Oracle.  All rights reserved.

Enter user-name: sys as sysdba

Enter password:

Connected to:

Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> exit

Disconnected from Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options