Linux(Redhat、Centos)系统安装Oracle数据库

 

 

[Linux系统安装Oracle数据库]

操作手册

 

 

 

 

 

 

 

文件修订历史

 

 


目录

1. 安装前准备 4

1.1 环境及文件准备 4

1.2 创建ORACLE用户组和用户 4

1.3 修改系统参数 5

1.3.1 修改内核参数 5

1.3.2 修改用户限制 6

1.3.3 修改用户验证选项 6

1.3.4 修改用户配置文件 7

1.3.5 修改oracle环境变量 7

1.4 安装vncserver 8

2. 安装 11

2.1 设置Oracle图形界面 11

2.2 Oracle软件安装 11

2.3 创建监听 30

2.4 创建数据库实例 33

2.5 配置监听 47

2.6 检查ORACLEPATH设置 50

3. 验证 51

3.1 本地验证 51

3.2 PL/SQL Develop验证 52

 

 

 

本文档是Linux(redhat6.x、centos6.xredhat7.x) 64位操作系统安装Oracle 11g(Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production),本文基于各种网络资料精心整理而成,共享给有需要的朋友如有问题可联系:QQ:527446862,或邮件:[email protected]

  1. 安装前准备
    1. 环境及文件准备

操作系统:64位Linux (redhat6.x、centos6.xredhat7.x)

内存:2G及以上

硬盘:挂载根目录剩于空间至少7G以上

文件准备:下载好了的压缩包linux.x64_11gR2_database_1of2.zip

Oracle 11g R2(Linux x86-64)

http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html

附:Oracle 10g下载址:

http://www.cnblogs.com/wenlg/archive/2010/05/19/1738893.html

linux.x64_11gR2_database_2of2.zip

压缩包目录:/install

创建目录:/app/oracle

将两个压缩包解压至/ install/database

[root@SZB-L0004047 ~]# chmod -R 777 /install

    1. 创建ORACLE用户组和用户

创建两个oracle用户组:oinstall、dba

[root@SZB-L0004047 ~]# groupadd -g 801 oinstall

[root@SZB-L0004047 ~]# groupadd -g 802 dba

创建一个oracle用户:oracle

[root@SZB-L0004047 ~]# useradd -d /home/oracle oracle

[root@SZB-L0004047 ~]# chmod -R 755 /home/oracle

将oracle用户加入到oinstall和dba两个用户组

[root@SZB-L0004047 ~]# gpasswd -a oracle oinstall

Adding user oracle to group oinstall

[root@SZB-L0004047 ~]# gpasswd -a oracle dba

Adding user oracle to group dba

修改oracle用户密码:

[root@SZB-L0004006 ~]# passwd oracle

    1. 修改系统参数

准备安装oracle前,先把相关参数设置好

      1. 修改内核参数

修改sysctl.conf

[root@liujy ~]# vi /etc/sysctl.conf

内容如下:

kernel.shmmax=2147483648

kernel.shmmni=4096

kernel.shmall=2097152

kernel.sem=800 32000 400 128

fs.file-max=6815744

fs.aio-max-nr=1048576

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

kernel.msgmni=4096

kernel.msgmax=65536

kernel.msgmnb=84000

修改内核参数的值使其生效:

[root@SZB-L0004047 ~]# sysctl -p

kernel.shmmax = 2147483648

kernel.shmmni = 4096

kernel.shmall = 2097152

kernel.sem = 800 32000 400 128

fs.file-max = 6815744

fs.aio-max-nr = 1048576

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

kernel.msgmni = 4096

kernel.msgmax = 65536

kernel.msgmnb = 84000

      1. 修改用户限制

修改limits.conf

[root@SZB-L0004047 ~]# vi /etc/security/limits.conf

末尾增加以下内容:

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

      1. 修改用户验证选项

修改/etc/pam.d/login

[root@SZB-L0004047 ~]# vi /etc/pam.d/login

增加以下内容:

session  required   pam_limits.so

      1. 修改用户配置文件

修改/etc/profile

[root@SZB-L0004047 ~]# 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

使其生效:

[root@SZB-L0004047 ~]# source /etc/profile

      1. 修改oracle环境变量

切换到oracle用户

[root@SZB-L0004047 ~]# su oracle

跳转到oracle的home目录

[oracle@SZB-L0004047 root]$ cd   

修改oracle用户的环境变量

[oracle@SZB-L0004047 ~]$ vi .bash_profile

内容如下:

export TMP=/tmp

export TMPDIR=$TMP

export ORACLE_SID=poc

export ORACLE_BASE=/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0

export TNS_ADMIN=$ORACLE_HOME/network/admin

export ORACLE_OWNER=oracle

export LANG=en_US

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

export LC_CTYPE=zh_CN.GBK

export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data

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

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

CLASSPATH=$ORACLE_HOME/JREORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib

export CLASSPATH

内容说明:

ORACLE_SID请跟据实际情况填写

ORACLE_HOME请跟据实例情况填写,11.2.0是指oracle版本号

使其生效:

[oracle@SZB-L0004047 ~]$ source .bash_profile

    1. 安装vncserver

由于安装oracle需要可视界面

需先安装vncserver,方便windows远程到Linux上

切换到root用户

[root@SZB-L0004047 ~]# yum install  gdm  nautilus gnome-panel gnome-terminal   tigervnc-server -y

然后启动vncserver,

[root@SZB-L0004047 ~]# vncserver :1

:1表示启动第一个vnc端口,回车提示输入密码,输入123456

然后windows输入 IP:1

如下:

  1. 安装
    1. 设置Oracle图形界面

root用户下:

修改hosts文件,增加IP配置

[root@SZB-L0004047 ~]# vi /etc/hosts

增加一行:

10.20.16.122 SZB-L0004047

左边是Linux的IP,右边是linux的机器名

设置Linux的图形显示:

[root@SZB-L0004047 ~]# export DISPLAY=localhost:1

[root@SZB-L0004047 ~]# xhost +

access control disabled, clients can connect from any host

提示access control disabled, clients can connect from any host,表示成功,这样就可以在windows上的SSH上执行命令,SVN窗口里会自动弹出oracle安装界面了

为防止oracle安装界面乱码,

临时设置语言为:

[root@SZB-L0004047 ~]# export LC_CTYPE=en_US.iso88591

    1. Oracle软件安装

切换到oracle用户,

[oracle@SZB-L0004047 database]$ export DISPLAY=localhost:1

[oracle@SZB-L0004047 database]$ xhost +

跳转到/install/database/,执行oracle安装命令

[oracle@SZB-L0004047 database]$ ./runInstaller

SVN窗口里弹出了oracle界面,去掉“I wish”的勾

然后next,

点击yes

选择“Skip software updates”,下一步

将简体中文添加右边窗口,next

如果不存在/app/oracle目录,则创建,创建后更改/app的权限为777

next,group name选择dba,修改Inventory/app/oracle/oraInventory

点击yes

next

warning可忽略,Failed不能忽略,是由于用户ada和root有相同的UID号,需解决,

root用户下,

[root@SZB-L0004047 ~]# vi /etc/passwd

找到ada,然后将ada:x:0:0::/home/ada:/bin/bash改为ada:x:100:100::/home/ada:/bin/bash

保存。

然后点击:“check again”

系统识别了shmmax推荐值为4294967295,重复1.3.1里的步骤,

解决完所有的“Failed”后,勾上ignore all,然后下一步

Are you sure you want to continue, 点击yes.

root用户下,执行上面两个shell脚本,然后点击OK

    1. 创建监听

跳转到ORACLE安装目录:/app/oracle/product/11.2.0/dbhome_1/bin

执行netca命令:

[oracle@SZB-L0004047 bin]$ /app/oracle/product/11.2.0/dbhome_1/bin/netca

VNC窗口弹出:

设置监听端口,默认为1521

最后询问是否再创建一个监听器,选择No,下一步后,点击Finish,监听器创建完毕。

    1. 创建数据库实例

oracle用户下,

[oracle@SZB-L0004047 ~]$ /app/oracle/product/11.2.0/dbhome_1/bin/dbca

弹出

输入数据库SID

设置快速恢复区,建议生产环境勾上,开发、测试环境可不勾。

设置SGA和PGA,可根据硬件实际情况设置。

设置编码,跟据实际情况设置

可勾上第二个选项,表示创建一个模板,可供后续使用,第三个勾是用来保存创建数据库的脚本,可不选

然后关注进度条,总共大约需30分钟左右,可以去休息一会儿了,不定期关注进度条,和查看是否有弹窗。

跟据提示,

    1. 配置监听

oracle用户下,

[oracle@SZB-L0004047 ~]$ /app/oracle/product/11.2.0/dbhome_1/bin/netca

点击change login,输入密码后点ok,出现,Connecting...Test successful.

    1. 检查ORACLE的PATH设置

oracle用户下,试着运行sqlplus命令,如果出现bash: sqlplus: command not found...

则表明oracle的path没有配好

[oracle@SZB-L0004047 ~]$ sqlplus

bash: sqlplus: command not found...

查看.bash_profile,看看里面的ORACLE_HOME配置得对不对

[oracle@SZB-L0004047 ~]$ vi .bash_profile

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1

如果不对,则修改,然后使其生效

[oracle@SZB-L0004047 ~]$ source .bash_profile

  1. 验证
    1. 本地验证

oracle用户下,

sqlplus登录

[oracle@SZB-L0004047 ~]$ sqlplus '/as sysdba'

SQL*Plus: Release 11.2.0.4.0 Production on Mon Jan 19 16:09:38 2015

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

Connected to:

Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> select instance_name, status from v$instance;  

INSTANCE_NAME    STATUS

---------------- ------------

poc              OPEN

SQL>

OPEN表示数据库已经成功启动

    1. PL/SQL Develop验证

打开/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora

复制

POC =

 (DESCRIPTION =

   (ADDRESS = (PROTOCOL = TCP)(HOST = SZB-L0004047)(PORT = 1521))

   (CONNECT_DATA =

     (SERVER = DEDICATED)

     (SERVICE_NAME = poc)

   )

 )

然后把此连接串复制到windows本地的tnsnames.ora,最好把其中的HOST改成IP形式,防止主机名改了网络不认识。

再重启PL/SQL Develop,输入用户名密码,选择SYSDBA

然后登录,成功则表示一个数据库空库安装完整成功。

    1. 数据库维护常用命令

查看监听状态:

[oracle@SZB-L0004047 oracle]$ lsnrctl status

启动监听

[oracle@SZB-L0004047 oracle]$ lsnrctl start

停止监听

[oracle@SZB-L0004047 oracle]$ lsnrctl stop

数据库的停和启

sqlplus '/as sysdba'登录

停:shutdown immediate

启:startup

附件地址:https://download.csdn.net/download/china_3/10563420

猜你喜欢

转载自blog.csdn.net/china_3/article/details/81203884