Linux下安装oracle的步骤和一些问题

Posted 夏沫小白

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux下安装oracle的步骤和一些问题相关的知识,希望对你有一定的参考价值。

今天在Linux64位系统安装oracle数据库,折腾了一天,终于搞定了,现在把安装步骤梳理下,防止以后忘记:
    (以下内容来自http://blog.163.com/junwu_lb/blog/static/1916798920117284537210/)
操作系统版本:red hat enterprises Linux 6.2 (santiago)
 数据库版本:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
PL/SQL Release 11.2.0.1.0 - Production
CORE    11.2.0.1.0    Production
TNS for Linux: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - Production

1、检查相应的rpm包的情况(等于或者高于下面版本)
rpm –qa | grep pagename(grep是搜索)
binutils-2.17.50.0.6
compat-libstdc++-33-3.2.3
compat-libstdc++-33-3.2.3 (32 bit)
elfutils-libelf-0.125
elfutils-libelf-devel-0.125
gcc-4.1.2
gcc-c++-4.1.2
glibc-2.5-24
glibc-2.5-24 (32 bit)
glibc-common-2.5
glibc-devel-2.5
glibc-devel-2.5 (32 bit)
glibc-headers-2.5
ksh-20060214
libaio-0.3.106
libaio-0.3.106 (32 bit)
libaio-devel-0.3.106
libaio-devel-0.3.106 (32 bit)
libgcc-4.1.2
libgcc-4.1.2 (32 bit)
libstdc++-4.1.2
libstdc++-4.1.2 (32 bit)
libstdc++-devel 4.1.2
make-3.81
numactl-devel-0.9.8.x86_64
sysstat-7.0.2
unixODBC-2.2.11
unixODBC-2.2.11 (32 bit)
unixODBC-devel-2.2.11
unixODBC-devel-2.2.11 (32 bit)
pdksh-5.2.14-1–这个包需要下载,安装前需要卸载掉ksh-20100621-6.el6包
rpm –e rpm -e ksh-20100621-6.el6

安装缺少的rpm包
rpm –ivh pagename(根据提示,如果缺少依赖包,也需要加上去)

 

2、添加组和用户
/usr/sbin/groupadd oinstall(添加oinstall组)
/usr/sbin/groupadd -g 502 dba(添加dba组)
/usr/sbin/useradd -u 502 -g oinstall -G dba oracle(添加用户oracle,主组oinstall,辅助组dba)
passwd oracle(修改oracle用户密码)

3、创建文件夹并修改组和用户所属关系和相关权限
mkdir -p /opt/oracle(创建文件u01/oracle)
chown -R oracle:oinstall /opt/oracle(使得/opt/oracle文件夹输入oracle用户和oinstall组)
chmod -R 775 /opt/oracle(修改u01文件夹访问权限)—可选(最好执行下)

 

4、添加/etc/hosts中dns解析信息
192.168.1.60               xifenfei

5、在/etc/security/limits.conf中添加用户限制信息
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle hard stack 10240

6、修改或者添加/etc/sysctl.conf中信息
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 1048576
kernel.shmmax = 4294967295
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
net.ipv4.tcp_wmem = 262144 262144 262144
net.ipv4.tcp_rmem = 4194304 4194304 4194304

注意注释掉
# Disable netfilter on bridges.
#net.bridge.bridge-nf-call-ip6tables = 0
#net.bridge.bridge-nf-call-iptables = 0
#net.bridge.bridge-nf-call-arptables = 0
—/sbin/sysctl –p(重新加载这些参数,不用重启系统)

7、编辑vi /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
–注意空格,在用户切换时使用su – username,这样才会加载后面的环境变量的配置信息(不要使用su username切换)

8、配置环境变量
注意:这步要在oracle用户下配置,我第一次就忘了这个问题,在root下面做的,安装完oracle之后,在oracle用户下不能启动sqlplus 、netca、dbca··等等··全都不能启动,纠结半天,才发现这个环境变量的配置有问题,重新配置后,正常了。
在oracle用户下的.bash_profile文件中添加下面信息
ORACLE_BASE=/opt/oracle
ORACLE_HOME=$ORACLE_BASE/oracle
ORACLE_SID=xff
PATH=$ORACLE_HOME/bin:$PATH
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH NLS_LANG

以上是基本环境配置,到此,可以安装数据库了
将zip文件解压:unzip xx.zip /home/oracle(我忘记名字了,直接解压就是了,我给解压到了/home/oracle文件夹下)
在解压出来的文件夹下面
执行 runInstaller
之后出图形界面:
http://blog.163.com/junwu_lb/blog/static/1916798920117284537210/
这个博客里面很清楚,我就是给复制次:

输入技术支持账号,没有就跳过技术图片

出现警告信息,选择 是

技术图片

选择 创建和配置数据库

技术图片

选择 服务器类

技术图片

选择 单实例数据库安装

技术图片

 

选择 高级安装

技术图片


添加中文语言支持

技术图片

 

选择 企业版

技术图片

 

安装路径,默认,下一步

技术图片


保持默认,下一步

技术图片

选择 一般用途/事务处理,下一步

技术图片

数据库实例名,自定义即可,习惯用orcl,下一步

技术图片

 

分配内存大小,推荐使用默认值,如果要调优,可以根据需求修改。下一步

技术图片

 

选择 使用Unicode(AL32UTF8)(U),下一步

技术图片

 

保持默认,下一步

技术图片

 

保持默认,下一步

技术图片

 

不启用自动备份,下一步

技术图片

 

所有账户使用相同的口令,下一步

技术图片

 

密码不符合复杂度要求,忽略警告信息,下一步

技术图片

 

保持默认,下一步

技术图片

 

点击 完成

技术图片
 
安装进度显示
技术图片

 

弹出的安装数据库的进度显示页面

技术图片

 

点击 确定

技术图片 

以 root 用户执行以下两个脚本

/oracle/oraInventory/orainstRoot.sh

/oracle/app/product/11.2.0/dbhome_1/root.sh

执行完脚本后点击 确定

 

技术图片

 

安装成功,点击关闭

技术图片

 

到此,oracle database 11g R2安装完成。

安装完成之后,本机访问没有问题,但是远程无法访问,报ora-12560 : tns 协议适配器错误,查了资料说是防火墙配置问题 ,在root账户下输入

 

iptables -I INPUT -p tcp --dport 1521 -j ACCEPT  --1521端口用于oracle

iptables -I OUTPUT -p tcp --dport 1521 -j ACCEPT    --一进一出

iptables -A INPUT -p tcp --dport 1521 -j ACCEPT    ---这个没搞懂到底啥意思··求高人解惑

iptables -A OUTPUT -p tcp --dport 1521 -j ACCEPT

iptables -I INPUT -p tcp --dport 1158 -j ACCEPT ---1158端口用于em

iptables -I OUTPUT -p tcp --dport 1158 -j ACCEPT ---同样一进一出

永久保存

 service iptables save

然后 /etc/init.d/iptables restart   重启防火墙

当当当当···本来应该没问题的啊,远程一连接··报错··无监听器···我郁闷啊··无限郁闷ing  然后继续,去到%oracle_home/db/network/admin
中,这里面有listen.ora network.ora sqlnet.ora将 host改为IP地址,完了重启数据库和监听··大功告成!!终于搞定啦~~~

 

 

 

以上是关于Linux下安装oracle的步骤和一些问题的主要内容,如果未能解决你的问题,请参考以下文章

Linux下安装Oracle的一般步骤

linux(centOS)下安装Oracle步骤

Linux下如何安装安装oracle 11g

怎么在linux下安装oracle数据库

Linux-Oracle下安装步骤

怎么在linux下安装oracle 11g数据库