fedora 12安装oracle 11g数据库

http://hi.baidu.com/smallharry_rui/blog/item/684822219834a1fed7cae203.html

一.所使用的软件
        1.fedora linux 系统下载地址
         http://torrent.fedoraproject.org/
         网上有很多安装方法在这就不说了,配置可以查找本人blogs里的fedora相关文档.
        2.oracle11gR2下载地址
        http://www.oracle.com/technology/software/products/database/index.html
         根据自己机子的情况而选择安装文档

二.查看自己机子的信息
        oracle官方指定要1G以上的内存跟 1.5G以上的交换空间

三.安装oracle database11gr2依赖包

       官方给出Asianux 3, Oracle Enterprise Linux 5, and Red Hat Enterprise Linux 5 的依赖包有因为本人系统是fedora12_32 所以在这里参考Red Hat Enterprise Linux 5安装(也许应该是Red Hat Enterprise Linux 6才对但官方文档给出了5,嘿嘿)
1 binutils-2.17.50.0.6-2.el5
2 compat-libstdc++-33-3.2.3-61
3 elfutils-libelf-0.125-3.el5
4 elfutils-libelf-devel-0.125
5 glibc-2.5-12
6 glibc-common-2.5-12
7 glibc-devel-2.5-12
8 glibc-headers-2.5-12
9 gcc-4.1.1-52
10 gcc-c++-4.1.1-52
11 libaio-0.3.106
12 libaio-devel-0.3.106
13 libgcc-4.1.1-52
14 libstdc++-4.1.1
15 libstdc++-devel-4.1.1-52.e15
16 make-3.81-1.1
17 numactl-devel-0.9.8.i386
18 sysstat-7.0.0
19

        我们可以用fedora源找到这些依赖包安装上
        命令如下:
# yum install binutils
# yum install libaio libaio-devel
# yum install sysstat
# yum install unixODBC unixODBC-devel
# yum install compat-libstdc++-33

        注意:这里还有一个依赖包注意一下Red Hat5 默认安装上一个pdksh包 而Red Hat6 用ksh 代替了pdksh包(而fedora 源也只有ksh包 pdksh也许淘汰了.很多fedora 安装oracle的帖子都强行安装上了pdksh这个包,因为pdksh跟bash有冲突.)所在只安装ksh包就够了.
# yum install ksh

四.配置系统文件

      注意:
         a. 关掉防火墙和selinux 重新启动计算机.
         b. 以下是以root身份.

     1.设置hosts文件
        保证/etc/hosts文件包含下面的内容
                 <IP-address> <fully-qualified-machine-name> <machine-name>
        注意:这一步一般情况下不用做任何修改,保证文件里面包含上面的内容就可以了.

      2.配置内核参数
         Oracle官方给出要添加的属性有
fs.file-max = 6815744
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 = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576

         以上这些参数的当前值可以用下面的命令查看:
              # /sbin/sysctl -a | grep <param-name>
      
         一般情况下这些参数的值都不符合要求,因此需要把下列内容添加到"/etc/sysctl.conf"文件末尾
#Instal Oracle Config
fs.aio-max-nr = 1048576
fs.file-max = 6815744
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 = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
         注意:
               a. #Instal Oracle Config 是注释(你可以不添加进去,但为了更好的说明添加没坏处).
               b. fs.aio-max-nr = 1048576 这是官方没有的,但在oracle-document 6 Configuring Kernel Parameters(配置内核参数)可以找到.
               官方原文:[ Note: This value limits concurrent outstanding requests and should be set to avoid I/O subsystem failures. ].
               翻译: [注:此值限制并发未完成的请求,并应设置为避免I / O子系统故障。]
               我安装时忘记查看fedora 此属性默认值了,你可以用"/sbin/sysctl -a | grep aio-max-nr"这个命令查看如果是1048576你可以不增加此属性保持跟官方一样.如果不一样还是增加保险.

     3.输入以下命令来更改内核参数的当前值:  
        # /sbin/sysctl -p

     4.在"/etc/security/limits.conf"文件末尾添加下列内容:
#Install Oracle Config
oracle              soft    nproc   2047
oracle              hard    nproc   16384
oracle              soft    nofile 1024
oracle              hard    nofile 65536

     5.把下面的内容添加到/etc/pam.d/login文件当中
#Install Oracle Config
session    required     pam_limits.so
   
     6.添加新的组和用户
# groupadd oinstall
# groupadd dba
# groupadd oper
# groupadd asmadmin

# useradd -g oinstall -G dba,oper,asmadmin oracle
# passwd oracle
     注意:这篇文章介绍的安装过程没打算使用ASM,所以这次安装不会用到 asmadmin 这个用户组

     7.为oracle的安装建立一个新的目录
# mkdir -p /u01/app/oracle/product/11.2.0/dbhome_1
# chown -R oracle:oinstall /u01
# chmod -R 775 /u01

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

     9.用oracle用户登录,把下面的内容添加到~.bash_profile(/home/oracle/.bash_profile)的末尾(oracle用户操作):
# Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR

ORACLE_HOSTNAME=localhost; export ORACLE_HOSTNAME
ORACLE_UNQNAME=DB11G; export ORACLE_UNQNAME
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
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
         注意:
               a. 这里面的ORACLE_HOSTNAME的参数的值需要根据自己的情况来设定,默认安装的fedora为localhost.localdomain
               b.ORACLE_SID=DB11G 代表着SID等会安装时记得把SID设置为DB11G.

五.安装Oracle Database 11GR2

       注意:
         a.以下使用oracle这个用户
         b.以下第2小节方法是以前安装JDK解决UI(swing awt)中文字体,经过本人的测试同样也解决了Oracle安装界面的问题(就是本人找oracle安装文件里的JDK花了一点时间)如果你的系统是英文版的那么安装oracle不会出现中文。这样就可以不用设置。

        1.解压安装文件
$ unzip linux.x64_11gR2_database_1of2.zip
$ unzip linux.x64_11gR2_database_2of2.zip

        2.把中文字体增加到oracle安装文件,解决安装时中文是"囗囗囗囗囗囗囗囗"
              进入刚解压的database/stage/Components/oracle.jdk/1.5.0.17.0/1/DataFiles /all.jar就是JDK喽.在桌面新建一个文件夹命名为fallback/找一个zysong.ttf中文字体放入里面去。再用归档管理器打开它进入 /jdk/jre/lib/fonts/(all.jar包的目录)把在桌面建好的fallback文件夹拖放进来,完成后的目录结构应该是/jdk /jre/lib/fonts/fallback/zysong.ttf。

        3.如是你的是仿真X的话
             仿真X需要设置一下环境变量DISPLAY 的值(我是gnome桌面所以没有执行)
                   $ DISPLAY=<machine-name>:0.0; export DISPLAY
      
         4.执行oracle安装文件
              进入解压出来的database文件夹,运行下面的命令开始安装过程:
                   $ ./runInstaller
              稍等一下oracle安装界面出来。

               (因为本人安装时前面忘记截图了所以只好用以下文字来说明吧)
               注意:下以有几大重点
               1. Oracle_SID要设置成 DB11G (因为上面配置文件是这样指定的)
               2. 安装目录不能更改(因为上面配置文件也是这样指定的)
               3. 如果oracle安装程序检查依赖包还有未安装的话用yum install <包名> 安装上.但除包名为‘pdksh’以外(我安装是就剩下一个pdksh没有安装,因为我已经安装上了ksh这个包,所以让它通过)。

(图1)


当执行到Oracle Database 配置时再弹出一个安装数据库的窗体时又出现了囗囗囗囗.

(图2)

嘿嘿!请别紧张当它执行完成后.
(图3)

                 em地址都出来了(这已经代表安装成功了),以上图片囗囗囗囗(4个) 就是 口令管理 囗囗(2个)就是确定。 如果你想安装时解决这个问题请看下面的 : 问题1 解决方案

    接着上面讲,安装成功后oracle会提示你使用root用户手动执行2个脚本,要你执行就执行呗。(这地方我安装时没有截图,跟着oarcle提示操作吧。)

六. 成功安装完成后再接着配置。
   
     1.编辑/etc/oratab文件,设置下面一行的标志为"Y":
             DB11G:/u01/app/oracle/product/11.2.0/dbhome_1:Y

     2.最后把/etc/redhat-release文件的内容改为原来的
             Fedora release 12 (Constantine)

七. 到此安装全部完成


问题1 解决方案
      这个其实是一个很简单的问题,安装oracle产品(只安装软件时还未安装数据库)是中文(因为你安装之前把中文字体给添加到了oracle安装文件的 jdk里)所以它能显示出中文,但是安装执行到安装数据库的时候(就是以上图片时)又出来囗囗囗囗囗囗囗这是因为oracle产品(软件)已经安装上了, 它不使用oracle安装文件里的JDK了而使用环境变量ORACLE_HOME下的jdk(也就是你配置的 ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1; )/u01/app/oracle/product/11.2.0/dbhome_1/jdk这个JDK,但这个jdk下没有/jre/lib /fonts/fallback/zysong.ttf这个文件所以就出来了囗囗囗囗。

      有一种解决办法就在你安装oracle时当它生成/u01/app/oracle/product/11.2.0/dbhome_1/jdk这个目录后你把zysong.ttf字体复制到这个jdk/jre/lib/fonts/fallback/下当它执行到安装数据库的时候应该就是中文了。
注意:一定要在安装数据库之前跟它自己生成环境变量ORACLE_HOME/目录下的jdk之后复制进去。

应该就在(图1)执行复制文件成功后,执行Oracle Database 配置 前这个时间里手动复制zysong.ttf到你环境变量 ORACLE_HOME/jdk下的jre/lib/fonts/fallback/(也就是/u01/app/oracle/product /11.2.0/dbhome_1/jdk/jre/lib/fonts/fallback/这个目录里)。(这方法我未尝试,因为在我安装完成之后才想到的 谁下次安装oracle时试试,好验证我说的是否正确,如果你不想冒险那还是别试了,我不敢当保安装时不会出现错误,但我相信自己这种方法会解决问题,嘿嘿)

如果你的系统是中文,安装完成之后你还要复制,这样在配置oracle时和使用SQL Developer才能显示中文界面。


问题2 : 重启系统后oracle服务不会自动启动

这样我更喜欢,我的机子又不是服务器,为啥要它自己启动(一个吃内存的大虎)

使用以下命令可以手动启动
[alex@localhost ~]$ su oracle
$ cd ~
$ source .bash_profile

启动和停止监听器:
监听器接受客户端的连接请求,并在验证证书后创建数据库连接。要使用 OEM,必须先启动监听器。
$ lsnrctl start
$ lsnrctl stop

启动和停止数据库:
1.启动和停止数据库的最简单方法是从 OEM 控制台启动和停止。要从命令行执行此操作,请在以 oracle 身份登录后使用 SQL*Plus,如下所示:
启动:
$ sqlplus
Enter user-name: / as sysdba
SQL> startup
SQL> exit

停止:
$ sqlplus
Enter user-name: / as sysdba
SQL> shutdown immediate
SQL> exit

2.以下命令也可以启动和停止数据库(如果数据库在使用就不会停止掉)
$ dbstart
$ dbshut

启动和停止 Oracle 企业管理器数据库控制:
$ emctl start dbconsole
$ emctl stop dbconsole

以下是一些软件启动的命今
Net Manager
netmgr

Net Configuration Assistant
netca

Database Configuration assistant
dbca

Database Upgrade Assistant
dbua

Locale Builder
lbuilder

你可能感兴趣的:(jdk,数据结构,oracle,linux,配置管理)