欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Centos6.9 安装Oracle11gR2

程序员文章站 2022-05-25 16:18:21
最近在学习怎么安装Centos,在Centos6.9版本安装Oracle数据库。参考了网络上很多文章,终于可以不报错的完成安装了,在这里记录一下 一、需要用到的安装文件 Centos6.9 ps:光盘1用来安装,光盘2用来安装一些依赖包。 链接:https://pan.baidu.com/s/1hg ......

最近在学习怎么安装centos,在centos6.9版本安装oracle数据库。参考了网络上很多文章,终于可以不报错的完成安装了,在这里记录一下

一、需要用到的安装文件

centos6.9   ps:光盘1用来安装,光盘2用来安装一些依赖包。

链接:https://pan.baidu.com/s/1hgpqg-4s5lns_8zhc5ufgq 密码:d35j

oracle 11gr2 11.2.0.1.0

链接:https://pan.baidu.com/s/1dulo84u2f_dskz7nfngc1w 密码:jhsb

依赖包

链接:https://pan.baidu.com/s/17l5i8lrrt1o5shku-7eiew 密码:rlqm

xshell&xftp

链接:https://pan.baidu.com/s/16lmql8j3cjmngff-1wvp9a 密码:x6i5

u盘启动制作工具 rufus及ultraiso

链接:https://pan.baidu.com/s/13h0ngoi6_8acfrm6mvpjoq 密码:rhti

u盘启动具*作bing一下即可,有时间我会整理出来

 

二、准备工作

默认服务器centos系统已经安装完成并开机,配置ip为192.168.1.x

现在你手中有一台服务器s。还有一个你的存储文件的计算机a。这样安装就不用一行行的敲命令了。

用a使用xshell登陆s,

显示:[root@localhost ~]# 

 

1):输入命令: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):输入命令:vi /etc/pam.d/login 

按i键进入编辑模式,将下列内容加入该文件最后 

 

内容:

session required /lib/security/pam_limits.so

session required pam_limits.so

 

粘贴完成后按esc键,输入“:wq”存盘退出

 

3):输入命令: vi /etc/sysctl.conf

按i键进入编辑模式,将下列内容加入该文件最后(kernel.shmall=4294967296 下一行)

 

内容:

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”存盘退出

并输入命令:sysctl -p

 

4):输入命令:vi /etc/profile

按i键进入编辑模式,将下列内容加入该文件(粘贴在倒数第二行 上部 unset i 上一行)。

 

内容:

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”存盘退出

 

5):#创建用户和组,作为软件安装和支持组的拥有者

 

输入命令:groupadd oinstall

输入命令:groupadd dba

输入命令:useradd -g oinstall -g dba -m oracle

输入命令:passwd oracle

#屏幕显示password:

需要连续输入2次密码:“oracle”

 

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

输入命令:mkdir  /home/oracle/app

输入命令:mkdir  /home/oracle/app/oracle

输入命令:mkdir  /home/oracle/app/oracle/product

输入命令:mkdir  /home/oracle/app/oradata

 

7):#更改目录属主为oracle用户所有,输入命令:

输入命令:chown -r oracle:oinstall /home/oracle/app

 

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

输入命令:su - oracle

输入命令:vi .bash_profile

按i键进入编辑模式,将下列内容加入该文件(放在export path下一行)

 

内容:

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”存盘退出

 

 

到此,系统环境配置初步完成,以下开始安装。

 

三、安装过程

在服务器上操作,首先使用服务器oracle用户登录

插入u盘,找到桌面显示的u盘,我的是“2.8gb filesystem”

拷贝所有文件到oracle’home目录下。

 

进入oraclepackages文件夹

右键open in terminal

输入命令:su

输入密码:

 

复制一下命令内容(先将命令保存成文本文件)

输入命令:rpm -ivh compat-libstdc++-33-3.2.3-69.el6.i686.rpm compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm elfutils-libelf-devel-0.164-2.el6.i686.rpm elfutils-libelf-devel-0.164-2.el6.x86_64.rpm gcc-c++-4.4.7-18.el6.x86_64.rpm glibc-2.12-1.209.el6.i686.rpm glibc-2.12-1.209.el6.x86_64.rpm libaio-0.3.107-10.el6.i686.rpm libaio-devel-0.3.107-10.el6.i686.rpm libaio-devel-0.3.107-10.el6.x86_64.rpm libstdc++-4.4.7-18.el6.i686.rpm libstdc++-devel-4.4.7-18.el6.x86_64.rpm unixodbc-2.2.14-14.el6.i686.rpm unixodbc-2.2.14-14.el6.x86_64.rpm unixodbc-devel-2.2.14-14.el6.i686.rpm unixodbc-devel-2.2.14-14.el6.x86_64.rpm --nodeps --force

回车等待安装完成

 

解压oracle安装文件

输入命令:unzip linux.x64_11gr2_database_1of2.zip

输入命令:unzip linux.x64_11gr2_database_2of2.zip

关闭terminal

 

启动图形安装

进入oracle’home/database目录,右键open in terminal

显示【oracle@loaclhost database】$

输入命令:./runinstaller

启动图形安装

 

去掉i wish to receive security updates via my oracle surrport选项,跳出对话框选yes

 Centos6.9 安装Oracle11gR2

 

选择install database software only,点击next。

 Centos6.9 安装Oracle11gR2

 

 

选择single instance database installation,点击next。

 Centos6.9 安装Oracle11gR2

 

 

在available languages中点选english、simplified chinese、traditional chinese,点击两个框中间的>,将选中的语言加入到右边的selected languages中,然后点击next。(实际只添加一个sc中文简体)

 Centos6.9 安装Oracle11gR2

 

 

按照实际情况,选择企业版本,如下图

 Centos6.9 安装Oracle11gR2

 

 

填写oracle的基本路径和软件路径(默认不用修改),如下图:

 Centos6.9 安装Oracle11gR2

 

 

选择安装日志目录,如下图所示

 Centos6.9 安装Oracle11gR2

 

选择dba组(两项都选择dba)

 Centos6.9 安装Oracle11gR2

 

 

继续下一步安装操作

 Centos6.9 安装Oracle11gR2

 

 

可以忽略,因为centos版本较高,所以11g check的时候不识别高版本lib包

 Centos6.9 安装Oracle11gR2

 

 

继续安装,点击finish

 Centos6.9 安装Oracle11gR2

 

 

安装中,这个时间比较漫长。如中间遇到84%错误,如下方法解决(如果是虚拟机安装,可能就没有这个错误):

首先解压centos-6.9-x86_64-bin-dvd2.iso光盘文件,把packages文件夹拷贝到oracle’home文件夹中

进入文件夹右键open in terminal

输入命令:su

输入密码:

输入命令:rpm --import /etc/pki/rpm-gpg/rpm*

 

#安装gcc,软件安装顺序不能错。

输入命令:rpm -ivh glibc-common-2.12-1.25.el6.x86_64.rpm kernel-headers-2.6.32-696.el6.x86_64.rpm libgcc-4.4.7-18.el6.x86_64.rpm glibc-2.12-1.209.el6.x86_64.rpm  libgomp-4.4.7-18.el6.x86_64.rpm  nscd-2.12-1.209.el6.x86_64.rpm  glibc-headers-2.12-1.209.el6.x86_64.rpm glibc-devel-2.12-1.209.el6.x86_64.rpm  mpfr-2.4.1-6.el6.x86_64.rpm  ppl-0.10.2-11.el6.x86_64.rpm 

 

#以下安装gcc-c++

输入命令:rpm -ivh cloog-ppl-0.15.7-1.2.el6.x86_64.rpm  cpp-4.4.7-18.el6.x86_64.rpm   gcc-4.4.7-18.el6.x86_64.rpm 

 

问题解决,点击重试,继续安装。

 Centos6.9 安装Oracle11gR2

 

 

需要等待中,大概20分钟左右。点击ok,继续,

 Centos6.9 安装Oracle11gR2

 

 

 

然后点击close,结束安装

 Centos6.9 安装Oracle11gR2

 

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

和 /home/oracle/orainventory/orainstroot.sh 

新开启一个终端,

输入命令:su

输入密码:

输入命令:cd /home/oracle/app/oracle/product/11.2.0/dbhome_1

输入命令:sh root.sh

中间暂停,输入一个回车键

输入命令:cd /home/oracle/orainventory

输入命令:sh orainstroot.sh

 

至此,oracle已经安装完毕

 

四、创建数据库

数据库的创建使用oracle用户进行(假设数据库名称为orcl,在实际操作中,斜体的orcl需要替换为实际定义的数据库名),按下面步骤创建数据库。

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

 Centos6.9 安装Oracle11gR2

 

 

选择custom database

 Centos6.9 安装Oracle11gR2

 

global database name框:输入前面确定的数据库名  sid框:自动出现和数据库名相同的内容作为数据库实例名,单实例情况下不作改动

 Centos6.9 安装Oracle11gR2

 

 

取消选择 configure enterprise manager

 Centos6.9 安装Oracle11gR2

 

 

输入你自己创建的密码,这里我使用system,在之后的测试环节会用到。

 Centos6.9 安装Oracle11gR2

 

 Centos6.9 安装Oracle11gR2

 

 Centos6.9 安装Oracle11gR2

 

 Centos6.9 安装Oracle11gR2

 

 

 

initialization parameters,内存分配(测试库所以分小一些,生产库可以分配较大的比如40%60%等),

 Centos6.9 安装Oracle11gR2

 

 

字符集选择兼容utf8的选项

 Centos6.9 安装Oracle11gR2

 

点击file location variables,里面可以看到一些基础参数信息,返回,然后直接点finish,如下图所示:

Centos6.9 安装Oracle11gR2

 

 

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

 

四、配置监听及本地网络服务

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

 Centos6.9 安装Oracle11gR2

 

 

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

 Centos6.9 安装Oracle11gR2

 

 Centos6.9 安装Oracle11gR2

 

 Centos6.9 安装Oracle11gR2

 

 

 Centos6.9 安装Oracle11gR2

 

 

 Centos6.9 安装Oracle11gR2

 

 

 Centos6.9 安装Oracle11gR2

 

 

 

 

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

 Centos6.9 安装Oracle11gR2

 

 Centos6.9 安装Oracle11gR2

 

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

 Centos6.9 安装Oracle11gR2

 

 Centos6.9 安装Oracle11gR2

 

输入oracle服务器的ip地址,填你自己的

 Centos6.9 安装Oracle11gR2

 

选中yes测试

 Centos6.9 安装Oracle11gR2

 

点击change login 输入所连接oracle服务器的其中某一个用户名和密码(用户名和密码都是system),点击ok

 Centos6.9 安装Oracle11gR2

 

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

 Centos6.9 安装Oracle11gR2

 

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

 

 Centos6.9 安装Oracle11gR2

 

 Centos6.9 安装Oracle11gR2

Centos6.9 安装Oracle11gR2

 

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

 

注意:

1、linux oracle数据库listener.ora存放路径

cd /home/oracle/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora

2、linux oracle数据库tnsnames.ora存放路径

cd /home/oracle/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora

3、oracle启动监听器
(1)切换至oracle安装用户(一般为oracle)
su - oracle
(2)启动监听器
lsnrctl start
(3)停止监听器
lsnrctl stop

4、启动测试oracle:
[oracle@oracle ~]$ sqlplus /nolog
sql*plus: release 11.2.0.1.0 production on fri jul 27 02:12:12 2012
copyright (c) 1982, 2009, oracle. all rights reserved.
sql> quit
测试的另一种方法:找一台windows平台电脑,telnet oracle主机ip地址:1521,通的话,会出现一个黑屏,光标一闪一闪。

5、linux开放1521端口允许网络连接oracle listener

症状:
(1)tcp/ip连接是通的。可以用ping 命令测试。
(2)服务器上oracle listener已经启动。
lsnrctl status 查看listener状态
lsnrctl start 启动oracle listener
(3)客户端得到的错误信息通常是:ora-12170: tns:连接超时
这时,我们基本可以肯定是服务器没有开放1521端口(假设你用默认设置)

解决方法:
(1)假如你是在一个局域网环境,配置了防火墙。那么可以关闭linux的防火墙。
sudo service iptables stop
(2)编辑iptables, 开放1521端口:
sudo vi /etc/sysconfig/iptables
-a input -p tcp -m state --state new -m tcp --dport 1521 -j accept
:wq

重启防火墙
sudo service iptables restart
保存配置,以便linux重启后依然有效
sudo service iptables save
查看防火墙规则:
sudo iptables -l –n

6、linux下创建oracle用户表空间

就是在已有的数据库实例上创建一个新的帐号,访问一些新的表
操作步骤如下:
(1)登录linux,以oracle用户登录(如果是root用户登录的,登录后用 su - oracle命令切换成oracle用户)
(2)以sysdba方式来打开sqlplus,命令如下: sqlplus "/as sysdba"
(3)查看我们常规将用户表空间放置位置:执行如下sql:
select name from v$datafile
(4)创建用户表空间:
create tablespace notifydb datafile '/home/oracle/app/oradata/orcl/scsdb.dbf' size 200m autoextend on extent management local segment space management auto;
(5)创建用户,指定密码和上边创建的用户表空间
create user scs identified by scs default tablespace notifydb;
(6)赋予权限
grant connect,resource to scs;
grant unlimited tablespace to scs;
grant create database link to scs;
grant select any sequence,create materialized view to scs;
--经过以上操作,我们就可以使用scs/scs登录指定的实例,创建我们自己的表了