首页 > 代码库 > linux下oracle数据库安装

linux下oracle数据库安装

以下主要内容来自网络---------------------------------屈勇

http://www.linuxidc.com/Linux/2015-02/113222p5.htm----另外值得参考的博文

安装环境

                     Linux服务器:SuSe10 sp2 64位    centos6.5

                     Oracle服务器:Oracle11gR2 64

系统要求

  1. Linux安装Oracle系统要求

 

系统要求

说明

内存

必须高于1G的物理内存

交换空间

一般为内存的2倍,例如:1G的内存可以设置swap 分区为3G大小

硬盘

5G以上

 

 2.修改操作系统核心参数

Root用户下执行以下步骤:

打开这个文件时候,看到该文件里面的内容全部是“#”注释起来的,有点疑惑不知道这个是不是linux下的语法规则呢?然后找了另外郑建山的一台已经安装了oraclelinux系统看了下,原来就是注释,同时到那个操作系统里面最后面几行也是添加了下面这样几行内容,于是就用note++两个文件打开,需要添加的内容添加了进去。觉得vi命令来敲很麻烦,后面的所有文件也都是能这样粘贴就粘贴了。

1)修改用户的SHELL的限制,修改/etc/security/limits.conf文件

输入命令:vi /etc/security/limits.conf,按i键进入编辑模式,将下列内容加入该文件。

oracle   soft    nproc    2047
oracle   hard    nproc    16384
oracle   soft    nofile     1024
oracle   hard    nofile    65536

编辑完成后按Esc键,输入“:wq”存盘退出

 

 

2)修改/etc/pam.d/login 文件,输入命令:vi  /etc/pam.d/logini键进入编辑模式,将下列内容加入该文件。

session   required    /lib/security/pam_limits.so 
session   required    pam_limits.so

编辑完成后按Esc键,输入“:wq”存盘退出

 对于这里的第3步,我发现10.73环境下内容是和本文档3是不一样的,略有差异,由于目前水平有限,不懂得这些配置含义,因此权衡之后决定采用10.73的那个内容添加在了里面。

3)修改linux内核,修改/etc/sysctl.conf文件,输入命令vi  /etc/sysctl.conf i键进入编辑模式,将下列内容加入该文件

fs.file-max = 6815744 
fs.aio-max-nr = 1048576 
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 = 4194304 
net.core.rmem_max = 4194304 
net.core.wmem_default = 262144 
net.core.wmem_max = 1048576

编辑完成后按Esc键,输入“:wq”存盘退出

 对于4执行这里的命令后,显示的和本文档也是稍有差异,直接忽视。

4要使 /etc/sysctl.conf 更改立即生效,执行以下命令。 输入:sysctl  -p 显示如下:

linux:~ # sysctl -p

net.ipv4.icmp_echo_ignore_broadcasts = 1

net.ipv4.conf.all.rp_filter = 1

fs.file-max = 6815744

fs.aio-max-nr = 1048576

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 = 4194304

net.core.rmem_max = 4194304

net.core.wmem_default = 262144

net.core.wmem_max = 1048576

 对于5,则10.73显示的和这里完全不一样,直接在10.73只有配置了一个JAVA_HOMEPATH这里也是决定和10.73保持一致,配置了两个环境变量,但是有点不明白的是,在linux下明明执行javacjavajava –version等命令证明该系统是已经装一下了Jdk,但是在百度了查询JDK安装目录的命令后,也没有找到安装路径最后/user/share/…地方找到了貌似jdk的文件,但是打开后里面是空的,应该是没有权限看哪个文件,就随便配了一下

5编辑 /etc/profile ,输入命令:vi  /etc/profilei键进入编辑模式,将下列内容加入该文件。

if [ $USER = "oracle" ]; then 
if [ $SHELL = "/bin/ksh" ]; then 
  ulimit -p 16384 
  ulimit -n 65536 
else 
  ulimit -u 16384 -n 65536 
fi

fi

编辑完成后按Esc键,输入“:wq”存盘退出

 对于这里的第6,按照文档来的,但是在后面图形化界面安装数据库时,始终没有看见oinstall,与本文档示例的稍有不同

6)创建相关用户和组,作为软件安装和支持组的拥有者。

创建用户,输入命令:

groupadd  oinstall 
groupadd  dba

创建Oracle用户和密码,输入命令:

useradd -g oinstall -g dba -m oracle

passwd  oracle

然后会让你输入密码,密码任意输入2次,但必须保持一致,回车确认

 

7)创建数据库软件目录和数据文件存放目录,目录的位置,根据自己的情况来定,注意磁盘空间即可,这里我把其放到oracle用户下,例如:

输入命令:

mkdir /home/oracle/app

mkdir /home/oracle/app/oracle

mkdir /home/oracle/app/oradata

mkdir /home/oracle/app/oracle/product

 

8)更改目录属主为Oracle用户所有,输入命令:

 

chown -R oracle:oinstall /home/oracle/app

 

9)配置oracle用户的环境变量,首先,切换到新创建的oracle用户下,

输入:su – oracle  ,然后直接在输入 : vi .bash_profile

i编辑 .bash_profile,进入编辑模式,增加以下内容: 

umask 022

export ORACLE_BASE=/home/oracle/app

export ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/dbhome_1

export ORACLE_SID=orcl

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

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

编辑完成后按Esc键,输入“:wq”存盘退出

 

 

安装过程

1) 当上述系统要求操作全部完成后,注销系统,在图形界面以Oracle用户登陆。首先将下载的Oracle安装包复制到linux中,推荐用Xmanager 或其他ftp工具拷贝。

   打开一个终端,运行unzip命令解压oracle安装文件,如:

输入命令:

unzip  linux.x64_11gR2_database_1of2.zip 

unzip  linux.x64_11gR2_database_2of2.zip

 解压完成后 cd 进入其解压后的目录database

输入命令:

cd  database

使用ls命令可以查看解压后database所包含的文件,如下图:

技术分享 

对于这里的命令./runInstaller其实一开始真不知道该在哪里去执行这个命令,命令行里面去执行是命令行的那种形式安装,英文不好,也没有找到相关的文档,没敢装。最后打开Xmanager的图形化界面找到那个database文件夹,双击runInstaller稍等片刻,就出现了下图所示的图形界面

2 执行安装,输入命令:./runInstaller

技术分享 

技术分享 

 

技术分享 

 下一步可以多选择几个语言

技术分享 

 

技术分享 

技术分享 

 下一步这里,我安装时,都是dba、没有oinstall,上边已经说过了。

技术分享 

下一步这里,可以直接勾选右上角的忽视。

技术分享 

 

下面这段话,反正我是没有用到,可能是我选择忽视的缘故。但是我在另外的文档里看到过可以忽视,说是centOS版本太高的就会那些检查失败直接点击finish

装到这一步,可以看到,可以查看到有很多的rpm包没有,我们可以从安装linux的光盘或ISO中查找所缺的包,使用ftp上传到linux中,然后使用rpm  –ivh  xxx.rpm  --nodeps --force 来进行安装(其中加上--nodeps -- force 代表强制安装,是在直接使用rpm –ivh  xxx.rpm安装不成功的情况下用的)安装过程略。

   等到把包全部都安装好的情况下,再次在oracle图形界面中,执行安装过程2,下来在环境检查过程中,就通过了。

技术分享 

执行了第一个root.sh需要按一下回车键。刚开始还以为是让我输入什么东西呢。

安装完成后,系统会提示你需要用root权限执行2shell脚本。按照其提示的路径,找到其所在的位置,如:我的就在/home/oracle/app/oracle/product/11.2.0/dbhome_1/root.sh

 /home/oracle/app/oraInventory/orainstRoot.sh  新开启一个终端,输入命令:

su – root

cd  /home/oracle/app/oracle/product/11.2.0/dbhome_1

sh  root.sh

cd /home/oracle/app/oraInventory

sh  orainstRoot.sh

数据库建库

此步可以Xmanager命令窗口下打开application—system tools—Terminal输入命令dbca但是我的这里输入命令后提示命令不存在,网上说oracle环境变量没有配好,检查.bash_profile觉得没有配错,怀疑是不是jdk环境变量的问题,最后oracle路径下bin目录里找到了dbca文件双击运行

1) 还是在oracle用户的图形界面oracle用户中,新开启一个终端,直接输入命令dbca会弹出如下界面。我们这里采用定制数据库。

技术分享 

技术分享 

技术分享 

技术分享 

输入统一密码(也可以分别设置其密码)

技术分享 

数据库存放位置,我这里采用默认

技术分享 

不指定快速恢复和归档

技术分享 

去掉不常用的模块技术分享

内存分配及指定字符集我的内存默认设的比这里大

技术分享 

一开始我以为我装的没有下面这个界面安装失败后各种百度也是无解,后来发现下面这个界面是上一个界面的另外一个选项卡下的,而且界面里面的内容也是要重新设置成下图所示的内容,不是默认的,最终才能安装成功。技术分享

技术分享 

经过漫长的等待,当看到此界面,说明oracle建库完成

技术分享 

可以用sqlplus来检验下,新开启一个命令窗口,输入sqlplus,然后输入用户名和密码,可以测试下,这里就不做过多的介绍了。

这里root用户以及oracle用户下输入sqlplus均不能够连接到数据库报的是command not found,我想可能还是环境变量的问题,后来配置了下面的监听之后在本机上使用PL/SQL可以连接到数据库

配置监听及本地网络服务

1) 在oracle用户的图形界面oracle用户中,新开启一个终端,输入命令netca 会弹出如下界面。

技术分享 

2)创建监听服务(充当oracle服务器,让别的oracle客户端连接本oracle服务器)

技术分享 

技术分享 

技术分享 

技术分享 

技术分享 

技术分享 

3)配置本地网络服务名(充当oracle客户端,连接别的oracle服务器)

技术分享 

技术分享 

输入连接的oracle服务器的数据库的实例名

技术分享 

技术分享 

输入oracle服务器的ip地址

技术分享 

选中测试

技术分享             

点击change Login 输入所连接oracle服务器的其中某一个用户名和密码,点击OK

连接上之后默认用户名,密码就都填写好了,就没有重新填,结果发现默认的是错的,后来重新填写就successful了。

技术分享 

看到此界面说明测试成功(如果不成功,请查看网络是否畅通,所连接的oracle服务器是否启动,监听是否启动等原因)

技术分享         

为你所设置的本地网络服务名起个名字

技术分享 

 然后下一步,下一步即可

技术分享 

技术分享 

这样oracle服务器安装配置基本就完成了。

linux下oracle数据库安装