CentOS 6.5 无界面安装 Oracle 11g R2

  • 前一段时间公司负责在Linux服务器上安装Oracle 11g R2的一些心得体会,写个文章记录一下。
  • 本文参考了网上的一些类似的博文;系统环境基于无外网和无图形化界面安装Oracle 11G。

准备软件

检查系统配置

Oracle Database 11g Release 2官方的系统配置要求如下:

  • 物理运行内存(Physical RAM):1GB以上,推荐配置2GB以上
    查看内存占用情况:
    free -g

  • 硬盘空间(Disk Space):8GB以上,/tmp目录剩余空间在1GB以上
    查看其他挂载区的目录使用情况:
    df -h

  • 查看目录的剩余空间:
    df -kh /tmp

  • 查看系统当前的版本:
    lsb_release -a

  • 查看系统对应的版本和位数:
    cat /proc/version

我所安装的服务器环境是 Red Hat Enterprise Linux 4

系统安装Oracle 11g R2所必须的安装包

binutils-2.15.92.0.2
compat-libstdc++-33-3.2.3
elfutils-libelf-0.97
elfutils-libelf-devel-0.97
expat-1.95.7
gcc-3.4.6
gcc-c++-3.4.6
glibc-2.3.4-2.41
glibc-common-2.3.4
glibc-devel-2.3.4
glibc-headers-2.3.4
libaio-0.3.105
libaio-devel-0.3.105
libgcc-3.4.6
libstdc++-3.4.6
libstdc++-devel 3.4.6
make-3.80
numactl-0.6.4.x86_64
pdksh-5.2.14
sysstat-5.0.5

  • 查询系统安装软件是否缺失:
    rpm -qa|grep 软件包名

我所安装Oracle的服务器不能连接外网,只能通过下载安装包用FTP传输到服务器上安装,以上安装包缺失可以到一下地址查找:
http://vault.centos.org/6.5/os/x86_64/Packages/

  • 安装软件命令(具体安装顺序自己调配,不能用通配符批量安装,会出现依赖问题):
    rpm -ivh 软件名.rpm

配置内核参数和资源限制

  • 使用vi编辑器对/etc/sysctl.conf文件进行编辑:
    vi /etc/sysctl.conf
    文件末尾添加一下内容:

fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
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 = 1048576

  • 使内核参数生效,执行命令:
    sysctl -p

创建Oracle相关用户

  • 创建用户组oinstall:
    groupadd –g 200 oinstall

  • 创建用户组dba:
    groupadd –g 201 dba

  • 创建oracle用户并指定用户组和Oracle用户的用户目录:
    useradd –u 440 –g oinstall –G dba –d /home/oracle oracle

  • 更改Oracle用户的用户登录密码:
    passwd oracle

修改登录系统参数

  • 使用vi编辑器对/etc/pam.d/login文件进行编辑:
    vi /etc/pam.d/login
    在文件末尾添加:

session required pam_limits.so

修改Oracle软件安装用户的资源限制

  • 使用vi编辑器对/etc/security/limits.conf文件进行编辑:
    vi /etc/security/limits.conf
    在文件末尾添加:

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

修改环境变量文件

  • 使用vi编辑器对/etc/profile文件进行编辑:
    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

  • 更新配置文件更改:
    source profile

创建目录并分配权限

创建目录

mkdir /oracle

授权oracle目录

  • 授权目录给当前用户/其他用户/用户组 可读可写可执行
    chmod -R 775 /oracle
    chown –R oracle:oinstall /oracle

  • 切换到oracle帐号并添加oracle用户下面的环境变量:
    su – oracle

  • 使用vi编辑器对用户目录下.bash_profile文件进行编辑:
    vi ~/.bash_profile
    在.base_profile里面添加如下内容(有些内容存在就不用加,对照着修改)
    ORACLE_HOME在配置时注意后面不要带有:分隔符,否则PATH会取不到;
    ORACLE_HOME的路径;
    ORACLE_SID是对应后面创建数据库SID的,可以随时更改;
    以下是配置内容:

PATH=$PATH:$HOME/bin
umask 022
export PATH
export ORACLE_BASE=/oracle
export ORACLE_SID=orcl
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export PATH=$PATH:$ORACLE_HOME/bin:

安装数据库

  • Ctrl+D注销Oracle用户,切换成root用户

  • 解压Oracle 11g R2 数据库压缩包(在本文我已经把数据库压缩包用FTP软件传输到/tmp目录下),执行命令:
    cd /tmp
    unzip linux.x64_11gR2_database_1of2.zip
    unzip linux.x64_11gR2_database_2of2.zip

  • 拷贝database/response/下面的dbca.rsp、db_install.rsp及netca.rsp三个文件至/home/oracle目录中:
    cp database/response/dbca.rsp /home/oracle/
    cp database/response/db_install.rsp /home/oracle/
    cp database/response/netca.rsp /home/oracle/
    chmod 777 /home/oracle/dbca.rsp

  • 使用vi编辑数据库安装的配置文件db_install.rsp:
    cd /home/oracle
    vi db_install.rsp
    修改如下参数:

Oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME= master
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/oracle/oraInventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/oracle/product/11.2.0/dbhome_1
ORACLE_BASE=/oracle
Oracle.install.db.InstallEdition=EE
Oracle.install.db.DBA_GROUP=dba
Oracle.install.db.OPER_GROUP=oinstall
Oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
Oracle.install.db.config.starterdb.globalDBName=orcl
Oracle.install.db.config.starterdb.SID=orcl
Oracle.install.db.config.starterdb.characterSet=ZHS16GBK
Oracle.install.db.config.starterdb.password.ALL=oracle
DECLINE_SECURITY_UPDATES=true

  • 切换到oracle 帐号,创建oraInventory目录:
    su – oracle
    mkdir /oracle/oraInventory

  • 切换到刚才解压的Oracle安装文件根目录中:
    cd /tmp/database
    开始执行安装操作:
    ./runInstaller -silent -ignorePrereq -responseFile /home/oracle/db_install.rsp
    在/oracle/oraInventory/logs/可以查看对应的安装日志文件。

  • 上述执行成功会提示执行两个脚本
    Ctrl+D注销Oracle用户,切换成root用户
    执行orainstRoot.sh及root.sh两脚本:
    cd /oracle/oraInventory
    sh orainstRoot.sh
    cd /oracle/product/11.2.0/dbhome_1
    sh root.sh

  • 切换成oracle用户:
    su - oracle

  • 安装监听,直接执行监听脚本:
    netca /silent /responseFile /home/oracle/netca.rsp

安装数据库实例

  • 使用vi编辑配置文件dbca.rsp:
    vi dbca.rsp
    修改以下配置,后面5个都要删掉前面的#号改参数值:

GDBNAME="orcl"
SID="orcl"
DATAFILEDESTINATION="/oracle/oradata"
RECOVERYAREADESTINATION="/oracle/flash_recovery_area"
CHARACTERSET="ZHS16GBK"
TOTALMEMORY="800"
SYSPASSWORD = "password"
SYSTEMPASSWORD = "password"

上面配置注意去掉#,不然是注释不生效
SYSPASSWORD和SYSTEMPASSWORD是sys和system数据库用户的默认密码(自己自行设置),不设置密码无法安装实例,显示终端一直滚动换行。

  • 静默模式建实例(确保在oracle用户下执行):
    cd ~
    dbca –silent –responseFile ~/dbca.rsp

另外:删除数据库实例方法,更改以上配置文件中的OPERATION_TYPE,默认为createDatabase,变更为一下内容:

OPERATION_TYPE = "deleteDatabase"

执行命令:
dbca –silent –responseFile ~/dbca.rsp

测试和修改Oracle用户密码有效期

  • 执行命令:
    sqlplus /nolog

  • SQLPlus:
    以sysdba身份登录:
    conn / as sysdba
    查询用户密码有效时间:
    SELECT * FROM dba_profiles s WHERE s.profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';
    修改有效时间为不限制:
    ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

附上一些命令查看Oracle端口和Oracle进程

  • 查看Oracle开放的1521端口号:
    netstat -lnp|grep 1521

  • 查看oracle进程:
    ps -ef|grep oracle

本人能力水平有限,如有错误请指出。
参考文章:
http://docs.oracle.com/cd/E11882_01/install.112/e24326/toc.htm#CEGIHDBF
http://haowen.blog.51cto.com/3486731/1599042
https://zhuanlan.zhihu.com/p/22600543?utm_source=qq&utm_medium=social

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,362评论 5 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,330评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,247评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,560评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,580评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,569评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,929评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,587评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,840评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,596评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,678评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,366评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,945评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,929评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,165评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,271评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,403评论 2 342

推荐阅读更多精彩内容