我爱编程

CentOS静默安装ORACLE11g

2018-03-30  本文已影响105人  Java_Evan

本文是在Centos6.5上无图形化界面静默安装oracle11g

安装包下载地址

https://share.weiyun.com/5JAznE1      

访问密码:zsrv94

安装包文件

        linux.x64_11gR2_database_1of2.zip

        linux.x64_11gR2_database_2of2.zip

1. Oracle环境需要的依赖包:

yum -y install binutils \

compat-libstdc++-33 \

elfutils-libelf \

elfutils-libelf-devel \

expat \

gcc \

gcc-c++ \

glibc \

glibc-common \

glibc-devel \

glibc-headers \

libaio \

libaio-devel \

libgcc \

libstdc++ \

libstdc++-devel \

make \

pdksh \

sysstat \

unixODBC \

unixODBC-devel

1.1 检查是否安装完整

# rpm -qa|grep xxx

2.0 添加oracle用户

# groupadd oinstall

# groupadd dba

# useradd -g oinstall -G dba oracle

# passwd oracle

3.0 修改内核参数

# vi /etc/sysctl.conf

3.1 配置文件内加入以下参数。如果没有可以自己添加,如果默认值比参考值大,则不需要修改。

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

3.2 执行命令sysctl使其自检并生效

        # sysctl -p

4.0 修改用户资源限制

# vi /etc/security/limits.conf

配置文件下方加入

    oracle              soft    nproc  2047

    oracle              hard    nproc  16384

    oracle              soft    nofile  1024

    oracle              hard    nofile  65536

    oracle              soft    stack  10240

5.0 修改/etc/pam.d/login配置文件

# vi /etc/pam.d/login

加入内容:

    session required /lib/security/pam_limits.so

    session required pam_limits.so

6.0创建安装目录

# mkdir -p /home/oracle/app/oracle /home/oracle/app/oraInventory

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

# chmod -R 775 /home/oracle/app/oracle /home/oracle/app/oraInventory

7.0 创建oraInst.Iac文件

# vi /etc/oracInst.Ioc

文件加入一下内容

inventory_loc=/home/oracle/app/oracle/oraInventory

inst_group=oinstall

保存退出后执行以下命令。设定该文件的用户组及权限。

chown oracle:oinstall /etc/oraInst.loc

chmod 664 /etc/oraInst.loc

8.0 解压缩oracle文件

# unzip linux.x64_11gR2_database_1of2.zip

# unzip linux.x64_11gR2_database_2of2.zip

8.1 待解压完毕后会生成文件夹/home/database 修改其用户组及权限此处直接使用777

# chmod 777 /home/database

# chown -R oracle.oinstall /home/database

9.0 准备oracle安装应答模板文件db_install.rsp文件

该文件默认存放在解压后的安装包内,/home/database/response下

9.1 配置db_install.rsp文件

# vi /usr/local/oracle/db_install.rsp

修改相应的参数配置如下

oracle.install.option=INSTALL_DB_SWONLY    //安装类型,只装数据库软件

ORACLE_HOSTNAME=szkmc.oracle //主机名称(命令hostname查询)

UNIX_GROUP_NAME=oinstall  //安装组

INVENTORY_LOCATION=/home/oracle/app/oracle/oraInventory //INVENTORY目录

SELECTED_LANGUAGES=en,zh_CN  // 选择语言

ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_1 // oracle_home 数据库安装路径

ORACLE_BASE=/home/oracle/app/oracle/

oracle.install.db.InstallEdition=EE  //oracle版本

oracle.install.db.isCustomInstall=false //自定义安装,否,使用默认组件

oracle.install.db.DBA_GROUP=dba  //dba用户组

oracle.install.db.OPER_GROUP=oinstall  //oper用户组

oracle.install.db.config.starterdb.type=GENERAL_PURPOSE //数据库类型

oracle.install.db.config.starterdb.globalDBName=szkmc  //globalDBName

oracle.install.db.config.starterdb.SID=szkmc  //SID,注意跟环境变量配置SID一样

oracle.install.db.config.starterdb.memoryLimit=81920  //自动管理内存的内存(M),可空

oracle.install.db.config.starterdb.password.ALL=oracle //所有数据库用户使用同个密码,可不设

SECURITY_UPDATES_VIA_MYORACLESUPPORT=false  //可忽视

DECLINE_SECURITY_UPDATES=true  //此参数,设定一定要为true

10.0 设置oracle用户环境  

由root切换至创建好的oracle用户

# su - oracle

修改该用户的用户配置文件

# vi .bash_profile

文件加入以下内容

export ORACLE_BASE=/home/oracle/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1

export ORACLE_SID=szkmc   

export ORACLE_OWNER=oracle

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

保存退出后执行source命令立即生效。

# source .bash_profile

11.0 oracle用户下开始安装

执行命令

# cd /home/oracle/database

# ./runInstaller -silent -force -ignorePrereq -responseFile /home/oracle/database/response/db_install.rsp

另起一个窗口用root查看安装log日志

# watch -d -n 2 'du -sh /home/oracle/app/oracle’ //检测oracle安装目录是否有变化

或者tail -f 监测安装过程

# tail -f xxxx-xx-xx

12.0 等待安装编译完成,出现一下内容,并新创建窗口并执行提示的脚本

# su – oracle

# sh /db/app/oracle/inventory/orainstRoot.sh

# sh /db/app/oracle/product/11.2.0/root.sh

13.0 配置静默监听

# su – oracle

# cd /home/oracle/app/oracle/produce/11.2.0/dbhome_1/bin/

# netca /silent /responsefile /home/oracle/database/response/ netca.rsp

查看监听端口

# netstat -tnulp | grep 1521

14.0 静默创建数据库

修改dbca.rsp文件参数

RESPONSEFILE_VERSION = "11.2.0"  //不能更改

OPERATION_TYPE = "createDatabase"

GDBNAME = "oracle11g.dbcsk.cn"  //数据库的名字

SID = "ORAC"    //对应的实例名字

TEMPLATENAME = "General_Purpose.dbc" //建库用的模板文件

SYSPASSWORD = "oracle1234"  //SYS管理员密码

SYSTEMPASSWORD = "oracle1234"  //SYSTEM管理员密码

SYSTEMPASSWORD = "oracle1234"  //SYSTEM管理员密码

DATAFILEDESTINATION = /home/oracle/oradata //数据文件存放目录

RECOVERYAREADESTINATION=/home/oracle/oradata_back //恢复数据存放目录

CHARACTERSET = "AL32UTF8"  //字符集,重要!!! 建库后一般不能更改,所以建库前要确定清楚

TOTALMEMORY = "10240"    //oracle内存10G,也可小一些为5120M

执行命令

# su – oracle

# dbca -silent -responseFile  /home/oracle/database/response/dbca.rsp

查看oracle实例进程

ps -ef | grep ora_ | grep -v grep

查看监听状态

lsnrctl status

登录sqlplus,查看实例状态

sqlplus / as sysdba

select status from v$instance;

查看数据库编码

select userenv('language') from dual;

查看数据库版本信息

select * from v$version;

激活scott用户

alter user scott account unlock;

alter user scott identified by tiger;

select username,account_status from all_users;

---------------下面配置看你的需求----------------

开放1521端口

firewall-cmd --zone=public --add-port=1521/tcp --permanent

firewall-cmd --reload

设置Oracle开机启动

vi /db/app/oracle/product/11.2.0/bin/dbstart

ORACLE_HOME_LISTNER=$ORACLE_HOME

vi /db/app/oracle/product/11.2.0/bin/dbshut

ORACLE_HOME_LISTNER=$ORACLE_HOME

vi /etc/oratab

orcl:/db/app/oracle/product/11.2.0:Y

vi /etc/rc.d/init.d/oracle

开机启动oracle

systemctl enable oracle

开机启动问题

oracle ORA-12547: TNS:lost contact

cd /db/app/oracle/product/11.2.0/bin/

chmod 6751 oracle

TNS-12555: TNS:permission denied

cd /var/tmp

chown -R oracle:oinstall .oracle

创建表空间,用户,授权

create tablespace szkmc

datafile '/home/oracle/oradata/szkmc/szkmc.dbf' size 800M

autoextend on

next 50M

maxsize unlimited

create user szkmc identified by szkmc123 default tablespace szkmc;

grant  dba to szkmc;

转载需注明出处

上一篇下一篇

猜你喜欢

热点阅读