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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值