Centos7命令行部署oracle11G

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

修改hostname和hosts

vi /etc/hostname

vi /etc/hosts

安装前验证

# rpm -qa binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers glibc-static kernel-headers pdksh libaio libaio-devel libgcc libgomp libstdc++ libstdc++-devel libstdc++-static make numactl-devel sysstat unixODBC unixODBC-devel

下载依赖文件

yum -y install binutils compat-libstdc++-33 compat-libstdc++-33.i686 elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc glibc.i686 glibc-common glibc-devel glibc-devel.i686 glibc-headers glibc-static ksh libaio libaio.i686 libaio-devel libaio-devel.i686 libgcc libgcc.i686 libstdc++ libstdc++.i686 libstdc++-devel make sysstat kernel-headers pdksh libgomp libstdc++-static numactl-devel unixODBC unixODBC-devel

安装后检测有无遗漏未安装

rpm -q binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel |grep "not installed"

无输出则正确

更新

yum updates

创建组和用户

groupadd oinstall

groupadd dba

useradd -g oinstall -G dba -m oracle

passwd oracle 

id oracle  #检验

Centos7命令行部署oracle11G创建数据库软件目录和数据文件存放目录

mkdir /data/oracle/app

mkdir /data/oracle/app/oracle

mkdir /data/app/oracle/oradata

mkdir /data/app/oracle/oraInventory

Centos7命令行部署oracle11G

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

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

chmod -R 777 /data/app

Centos7命令行部署oracle11G

关闭并禁用防火墙

systemctl stop firewalld.service

systemctl disable firewalld.service

Centos7命令行部署oracle11G

关闭selinux

vi /etc/selinux/config

SELINUX=disabled

Centos7命令行部署oracle11G

配置内核参数

配置要求,配置大于系统数据需要配置更改,否则不需要配置:

vi /etc/sysctl.conf

fs.file-max = 6815744

fs.aio-max-nr = 1048576

kernel.shmall = 2097152

kernel.shmmax = <本机物理内存Byte字节数的一半>

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

Centos7命令行部署oracle11G

使配置生效

sysctl -p

Centos7命令行部署oracle11G

Centos7命令行部署oracle11G

对oracle用户设置限制,提高软件运行性能

#vi /etc/security/limits.conf 末尾添加

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

Centos7命令行部署oracle11G

编辑/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

Centos7命令行部署oracle11G

Centos7命令行部署oracle11G

修改login文件,

#vi  /etc/pam.d/login,将下列内容加入该文件。

session required /lib/security/pam_limits.so

session required pam_limits.so

Centos7命令行部署oracle11G

 

安装oracle

上传并解压安装包

#上传使用scp命令/ftp工具上传到/data/tools目录

unzip linux.x64_11gR2_database_1of2.zip

unzip linux.x64_11gR2_database_2of2.zip

修改目录的属性

chmod -R 775 /data/tools

chown -R oracle:oinstall /data/tools

开始安装数据库

切换到oracle用户,设置oracle用户环境变量

su -  oracle

vi .bash_profile

添加以下内容

#for oracle

export ORACLE_BASE=/u01/app/oracle 
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1
export ORACLE_PID=orcl
export ORACLE_SID=orcl        

#export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib

export LANG="zh_CN.UTF-8"
export NLS_LANG="SIMPLIFIED CHINESE_CHINA.AL32UTF8"
export NLS_DATE_FORMAT='yyyy-mm-dd hh24:mi:ss'

执行以下命令使环境变量生效

source ~/.bash_profile

修改应答文件

#在oracle解压后的文件目录里/data/tools/database/response/中,有俩个文件 db_install.rsp和netca.rsp文件,复制到/home/oracle/内

cd /home/oracle

vi db_install.rsp

对照下面,将值填入/home/db_install中:(红色路径按自己实际安装的路径填写)

  oracle.install.option=INSTALL_DB_SWONLY

  ORACLE_HOSTNAME= oracledb  #hostname名 

  UNIX_GROUP_NAME=oinstall

  INVENTORY_LOCATION=/data/app/oracle/oraInventory

  SELECTED_LANGUAGES=en,zh_CN

  ORACLE_HOME=/data/app/oracle/db_1

  ORACLE_BASE=/data/app/oracle

  oracle.install.db.InstallEdition=EE

  oracle.install.db.DBA_GROUP=dba

  oracle.install.db.OPER_GROUP=dba

  DECLINE_SECURITY_UPDATES=true

执行静默安装

sudo reboot   #重启

su - oracle     #切换到oracle用户

source .bash_profile  #使环境变量生效

cd /data/tools/database/  #切换到oracle安装包解压后的目录下

./runInstaller -silent -ignorePrereq -ignoreSysPrereqs -responseFile /home/oracle/db_install.rsp

#出现warnning不用管,会暂时卡住,不要退出

#当出现提示:用root执行脚本的命令之后,重开一个终端以root用户执行提示中的脚本内容,返回此终端,enter继续

静默配置监听

在oracle用户下:

 netca /silent /responsefile /home/oracle/netca.rsp

检验:在 /data/app/oracle/db_1/network/admin/ 中生成 listener.ora 和 sqlnet.or

通过netstat命令可以查看1521端口正在监听

    netstat -tnul | grep 1521

通过命令直接建立oracle实例

dbca -silent -createDatabase -templateName General_Purpose.dbc -gdbname orcl -sid orcl -sysPassword syc -systemPassword syc -responseFile NO_VALUE -datafileDestination /data/app/oracle/oradata -redoLogFileSize 50 -recoveryAreaDestination /data/app/oracle/fast_recovery_area -storageType FS -characterSet ZHS16GBK -nationalCharacterSet AL16UTF16 -sampleSchema true -memoryPercentage 30 -totalMemory 200 -databaseType OLTP -emConfiguration NONE

检查监听的启动与启动oracle监听

lsnrctl status

未启动可执行命令:

lsnrctl start

至此oracle数据库已经安装完成,可以使用 sqlplus执行命令了

sqlplus sys/change_on_install AS sysdba

sql>

 

上一篇:C++基础教程(五)——指针(2)


下一篇:数据结构考研复习(双链表)