Linux上Oracle11g R2安装及配置

一. 安装环境准备

  1. 1.  环境说明

Linux服务器系统:Oracle Linux Release 6 Update 2 (64bit),先安装好。

Oracle服务器:Oracle11gR2 (64bit)

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

在Root用户下执行以下步骤:

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

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

oracle   soft    nproc    4096
oracle   hard    nproc    16384
oracle   soft    nofile    4096
oracle   hard    nofile    65536

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

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

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

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

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

kernel.shmall=4294967296 (已经存在)
kernel.shmmax=68719476736
(已经存在)

fs.file-max=6815744

fs.aio-max-nr=1048576
kernel.shmmni=4096
kernel.sem=800 113600 800 142
net.ipv4.ip_local_port_range=1024 65500
net.core.rmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_default=262144
net.core.wmem_max=1048576

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

各参数意义如下:

(1)shmmax:该参数定义了共享内存段的最大尺寸(以字节为单位),通常将其设置为2G或更大。

(2)shmmni:用于设置系统范围内共享内存段的最大数量。默认值是 4096 ,通常不需要更改。

(3)shmall:该参数表示系统一次可以使用的共享内存总量(以页为单位)。缺省值就是2097152,如系统自动生成则不需要修改。

(4)sem:该参数表示设置的信号量,当oracle DB初始化参数文件中PROCESSES参数设置较大时,需要调整SEM设置   
如:kernel.sem = 250 32000
100 128各数据段含义如下。
SEMMSL   SEMMNS   SEMOPM   SEMMNI
SEMMSL应该设置为服务器中各个实例中最大的PROCESSES参数+10,如当最大的PROCESSES参数为5000时,SEMMSL应设置为5010。
SEMMNS参数应设置为SEMMSL*SEMMNI,如例SEMMSL为5010,SEMMNS参数应为(5010*128)=641280。
SEMOPM参数应设置与SEMMSL参数相同,接上例此处应设置为5010

(5)file-max:该参数表示文件句柄的最大数量。文件句柄设置表示在linux系统中可以打开的文件数量。

(6)rmem_default — 默认的TCP/IP接收缓冲大小

(7)rmem_max — 最大的TCP/IP接收窗口的大小

(8)wmem_default — 默认的TCP/IP发送窗口大小

(9)wmem_max — 最大的TCP/IP发送窗口的大小

4)要使 /etc/sysctl.conf 更改立即生效,执行以下命令:

# sysctl -p

5)编辑 /etc/profile ,输入命令:vi 
/etc/profile,按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”存盘退出

6)创建用户和组。

创建组:

groupadd  oinstall
groupadd  dba

创建Oracle用户和密码:

useradd -g oinstall -G
dba  oracle

passwd  oracle

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

7)创建数据库软件工作目录和数据文件存放目录,根据自己的情况来定

输入命令:

mkdir /home/oracle/app

mkdir /home/oracle/app/oraInventory

mkdir
/home/oracle/app/oracle

mkdir
/home/oracle/app/oracle/product

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

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

chown -R oracle:oinstall
/home

9)配置oracle用户的环境变量,要在oracle用户下进行操作。

输入:

# su  oracle

$ vi /home/oracle/.bash_profile

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

export EDITOR=vi

export ORACLE_SID=doea5dw
实例名

export
ORACLE_BASE=/home/oracle/app

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

export
INVENTORY_LOCATION=/home/oracle/app/oraInventory

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

export NLS_LANG="American_america.zhs16gbk"

export
NLS_DATE_FORMAT='yyyy-mm-dd hh24:mi:ss'

export
PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin

umask 022

export
JAVA_HOME=/usr/local/development/jdk1.7.0_21

export JRE_HOME=$JAVA_HOME/jre

export
CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH

export
PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

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

10.root用户下, 编辑/etc/hosts文件,输入IP地址和主机名

[root@A5BI-1
//]# vi /etc/hosts

127.0.0.1       localhost.localdomain   localhost

#::1             localhost6.localdomain6 localhost6

192.168.100.31  A5BI-1.a5test.com

127.0.0.1       A5BI-1

二.安装oracle软件

  1. 1. 
    安装准备

1)退出系统以Oracle用户登陆。

2)首先将Oracle软件安装包复制到linux系统中的一个目录下,确保Oracle用户对此目录有足够权限。

3)打开一个终端,运行unzip命令解压oracle软件安装包。

输入命令:

unzip
 linux.x64_11gR2_database_1of2.zip

unzip 
linux.x64_11gR2_database_2of2.zip

解压完成后生成新目录database,进入解压后的database目录查看。

输入命令:

cd /database

ls

  1. 2. 
    开始安装:

由于本次存储采用FILESYSTEM,没有用ASM磁盘组,所以不配置GRID,直接安装ORACLE软件。执行安装要在Oracle用户下进行:

[root@A5BI-1
//]# su  oracle

[oracle@A5BI-1
database]$ cd  /database

[oracle@A5BI-1
database]$ ./runInstaller

 

安装报错,如下图

解决:

Su   ---切换为root用户

Xhost +SI:localuser:oracle  
---
设置本地用户可视化安装

Su oracle  ---切换到oracle用户重新安装

 

邮箱也可不填写,去掉勾选

选择只安装软件

选择安装单实例还是RAC环境,此处选择单实例

选择语言,English

选择安装版本,选择Enterprise Edition,点击select option,选择要安装的组件

输入ORACLE_BASE和ORACLE_HOME路径,确保oracle用户对此目录有访问权限

OSDBA组用户被授予sysdba权限,OSOPER组用户被授予sysoper权限

检测安装环境

安装缺失的软件:

装载iso系统文件到光驱,在虚拟机控制面板上操作。从linux安装ISO中查找所缺的包,进行安装,全部都安装好,再次执行安装过程,就通过了。

由于本次linux系统版本高于数据库版本,我们忽略这些错误,选择lgnore All

点击save response file 保存安装过程到response文件,用于以后静默安装

开始安装

安装快完成时,系统会提示你需要用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

提示:

Running Oracle 11g root.sh script...

The following environment variables are set as:

ORACLE_OWNER= oracle

ORACLE_HOME=  /home/oracle/app/oracle/product/11.2.0/dbhome_1

Enter the full pathname of the local bin directory:
[/usr/local/bin]:

Copying dbhome to /usr/local/bin ...

Copying oraenv to /usr/local/bin ...

Copying coraenv to /usr/local/bin ...

Creating /etc/oratab file...

Entries will be added to the /etc/oratab file as needed by

Database Configuration Assistant when a database is created

Finished running generic part of root.sh script.

Now product-specific root actions will be performed.

Finished product-specific root actions.

执行命令:

cd /home/oracle/app/oraInventory

sh  orainstRoot.sh

提示:

Changing permissions of /home/oracle/oraInventory.

Adding read,write
permissions for group.

Removing
read,write,execute permissions for world.

Changing groupname of /home/oracle/oraInventory
to oinstall.

The execution of the
script is complete.

安装完成,Close结束

三.创建数据库实例

在oracle用户中,新开启一个终端,输入命令:

[orcle@A5BI-1 //] $ dbca

 

Next

创建一数据库

选择数据库类型

输入全局数据库名和实例名

由于未安装EM,此处选择不使用EM管理数据库,去掉勾选

设置管理员密码11g默认密码至少包含一个大写字母、一个小写字母和一个数字,且为8个字符。可以重新设置或者直接Next

由于未使用ASM,此处选择file system,并选择OMF管理数据库文件

不指定Specify Flash Recovery Area(快速恢复和归档)

去掉不常用的模块

可选用Automatic Memory Management,也可不选用

当选用Automatic Memory Management时只需要指定sga和pga总大小,oracle将自动管理内存。分配的内存大小与/dev/shm下空间大小相匹配,如果空间不足要扩大tmpfs文件系统大小。

查看/dev/shm空间大小:

命令:df –TH

设置为/dev/shm空间大小,如果够用不用修改。

命令:mount -t tmpfs -o
size=7300m tmpfs /dev/shm

选择字符集点击Next

保持默认值点击Next

点击Finish进行安装

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

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

在oracle用户的图形界面中,新开启一个终端,创建监听服务(充当oracle服务器,让别的客户端连接本oracle服务器)输入命令:

$ netca

输入oracle服务器的ip地址

选中测试

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

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

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

然后点击Next

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

第一步:登陆 
root登陆之后切换到oracle用户上,输入

su oracle

第二步:连接 
在oracle用户下,输入

sqlplus /nolog

第三步:使用管理员权限 ,输入

connect /as sysdba

第四步:启动/关闭服务,输入

startup

第五步:如果是启动服务,要开启监听 
退出sqlplus模式,输入 :exit 或者ctrl+d 退出

开启监听

lsnrctl start

Oracle Linux下安装Oracle11gR2的更多相关文章

  1. 解决在Linux下安装Oracle时的中文乱码问题

    本帖最后由 TsengYia 于 2012-2-22 17:06 编辑 解决在Linux下安装Oracle时的中文乱码问题 操作系统:Red Hat Enterprise Linux 6.1数据库:O ...

  2. linux下安装Oracle时交换空间不足的解决方法

    摘:linux下安装Oracle时交换空间不足的解决方法 linux上安装Oracle时交换空间不足的解决办法 增加交换空间有两种方法: 严格的说,在系统安装完后只有一种方法可以增加swap,那就是本 ...

  3. Ubuntu Linux下安装Oracle JDK

    from://http://blog.csdn.net/gobitan/article/details/24322561 Ubuntu Linux下安装Oracle JDK Dennis Hu 201 ...

  4. Oracle数据库学习(一):虚拟机下Oracle Linux的安装与配置

    这篇博文主要以图片的形式讲述Oracle Linux在虚拟机下的安装与配置 一.前期虚拟机安装ISO文件的配置 1.创建新的虚拟机 2.选择“自定义(高级)”选项,下一步,默认“虚拟机硬件兼容性”或选 ...

  5. Linux下安装Oracle后重启无法登录数据库ORA-01034:ORACLE not available

    Linux下安装了数据库,安装完成后可以用,今天启动就不能用了,提示Oracle not available,后来查找资料,据说是oracle服务没有打开.如下方式可以解决问题. [root@root ...

  6. Redhat6.8下安装Oracle11gR2

    Step1.配置本地yum源,方便安装依赖包 df -h 补充: df命令查看 linux系统磁盘空间以及使用情况,-h代表方便阅读方式显示  :/dev/sr0为光驱设备名 mkdir cdrom ...

  7. Linux下安装 Posgresql 并设置基本参数

    在Linux下安装Postgresql有二进制格式安装和源码安装两种安装方式,这里用的是二进制格式安装.各个版本的Linux都内置了Postgresql,所以可直接通过命令行安装便可.本文用的是Cen ...

  8. Linux下安装Tomcat服务器和部署Web应用

    一.上传Tomcat服务器

  9. Linux 下安装配置 JDK7

    Linux 下安装配置 JDK7 配置环境(debian 7) 自从从Oracle收购Sun近三年来,已经有很多变化.早在8月,甲骨文将“Operating System Distributor Li ...

随机推荐

  1. OAuth2.0的那点荒唐小秘密 -几个简单概念和原理

    OAuth2.0这个名词你是否在项目中时常听到呢?是否觉得好像懂,又好像不太懂呢? 最近一直想写篇关于OAuth2.0的东西,记录下我的学习与感悟,然各种理由的拖延,直到今日才静下心来写下这篇博客.当 ...

  2. 编写python程序读入1到100之间的整数,然后计算每个数出现的次数,输入0表示结束输人,输入数据不包括0。如果数出现的大现如果大于1,输出时使用复数times

    #-*- coding:UTF-8 -*- #环境:python3 print("Enter the numbers between 1 and 100:") enterList= ...

  3. 深入理解Java虚拟机:JVM高级特性与最佳实践

    第一部分走近Java第1章走近Java21.1概述21.2Java技术体系31.3Java发展史51.4Java虚拟机发展史91.4.1SunClassicExactVM91.4.2SunHotSpo ...

  4. js----UTC时间于本地时间相差8小时问题

    js----UTC时间于本地时间相差8小时问题 js获取周几有两个方法getDay() getUTCDay(),但是它们是有区别的,前者返回的本地时间,后者返回的UTC时间,一般情况下,两者相差8个小 ...

  5. SpringBoot缓存篇Ⅰ--- 缓存抽象

    缓存是每一个系统应该考虑的功能,它可以用来加速系统的访问,提升系统性能,例如要经常访问的高频热点数据,例如某一个商品网站的商品信息,商品信息存储在数据库中,若每次访问都要查询数据库的话,这样的操作耗时 ...

  6. springboot2.x整合spring-data-jpa的问题

    今天使用springboot整合spring-data-jpa遇到一些问题,直接使用JpaRepository的getOne()方法是会报错的.报错信息为:org.hibernate.LazyInit ...

  7. DRF框架之Serializer序列化器的序列化操作

    在DRF框架中,有两种序列化器,一种是Serializer,另一种是ModelSerializer. 今天,我们就先来学习一下Serializer序列化器. 使用Serializer序列化器的开发步骤 ...

  8. idea maven 动态打包指定环境

    jar pom.xml <!-- 指定文件id --> <profiles> <profile> <id>alpha</id> <pr ...

  9. HTTPS 详解一:附带最精美详尽的 HTTPS 原理图

    HTTPS 详解一:附带最精美详尽的 HTTPS 原理图 HTTPS详解二:SSL / TLS 工作原理和详细握手过程 前言 作为一个有追求的程序员,了解行业发展趋势和扩充自己的计算机知识储备都是很有 ...

  10. 1755: N相关孪生素数

    #include<stdio.h>int f(int n,int L,int R){ int ch[10000],i,j,count=0; j=1; for(i=L;i<=R;i++ ...