centos6或者7无图形界面安装oracle11g

时间:2022-11-13 08:28:55
第一步安装常识(了解)
1.物理内存不少于1G
2.硬盘可以空间不少于5G
3.swap分区空间不少于2G
4.Minimum: 1 GB of RAM  
5.Recommended: 2 GB of RAM or more
6.检查磁盘情况?:# df -h
7.Oracle版本:Oracle11g
linux.x64_11gR2_database_1of2.zip
linux.x64_11gR2_database_2of2.zip
8.本文命令提示符“#”代表root权限,“$”代表oracle权限
9.oracle的安装,需oracle和实例以及监听的安装(三部分)
第二步环境准备(系统用户即相关目录创建,依赖安装)切换至root
1.关闭防火墙和selinux
# vi /etc/selinux/config
设置SELINUX=disabled
# setenforce 0
防火墙临时关闭命令:
#service iptables stop
centos6或者7无图形界面安装oracle11g
2.创建安装用户、组、目录
#groupadd oinstall
#groupadd dba
#useradd -g oinstall -G dba oracle
#passwd oracle //修改用户的密码
#id oracle

#mkdir -p /opt/oracle  //$ORACLE_BASE
#mkdir -p /opt/oracle/product/112010/db_1  //$ORACLE_HOME
#mkdir /opt/oracle/oradata  // 存放数据库目录
#mkdir /opt/oracle/inventory
#mkdir /opt/oracle/flash_recovery_area
#chown -R oracle:oinstall /opt/oracle
#chmod -R 775 /opt/oracle

3.将oracle使用者加入到sudo群组中
#vi /etc/sudoers
输入上面的命令后,打开sudoers文件进行编辑,找到
root       ALL=(ALL)       ALL 
在该行下添加添加(qw!强制退出)
oracle ALL=(ALL) ALL

4.修改内核参数
# vi /etc/sysctl.conf
修改、添加以下内容( 不能小于下面的数值,灰色的是已存在的不能比这个小
kernel.shmall = 2097152
kernel.shmmax = 1073741824
fs.aio-max-nr = 1048576
fs.file-max = 6815744
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

5.修改用户限制文件
#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

6.关联设置
#vi /etc/pam.d/login
行末添加以下内容 :
session required  /lib64/security/pam_limits.so
session required   pam_limits.so

  7.修改/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
root 用户下,使用命令 source profile 使环境变量生效
#source /etc/profile

8.修改用户环境变量
#vi /home/oracle/.bash_profile
在最底下加入以下内容
# For Oracle
export  ORACLE_BASE=/opt/oracle;
export  ORACLE_HOME=/opt/oracle/product/112010/db_1
export  ORACLE_SID=orcl;
export  PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
使环境变量生效
#source /home/oracle/.bash_profile
查看命令: #  env

9安装依赖包
注意:有网络就yum安装, 没有网络挂载centos.ios进入package (有很多rpm包)目录安装
安装命令:#rpm -ivh 依赖包名
查询是否安装:#rpm -q 依赖包名
(xxx.x86_64.rpm与xxx.i686.rpm只需安装一个就ok,只看前缀,别看版本信息)
rpm -ivh binutils-2.20.51.0.2-5.46.el6.x86_64.rpm --force --nodeps
rpm -ivh compat-libstdc++-33-3.2.3-69.el6.i686.rpm --force --nodeps
rpm -ivh compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm --force --nodeps
rpm -ivh cpp-4.4.7-18.el6.x86_64.rpm --force --nodeps
rpm -ivh elfutils-0.164-2.el6.x86_64.rpm --force --nodeps
rpm -ivh elfutils-libelf-0.164-2.el6.x86_64.rpm --force --nodeps
rpm -ivh elfutils-libelf-devel-0.164-2.el6.x86_64.rpm --force --nodeps
rpm -ivh elfutils-libs-0.164-2.el6.x86_64.rpm --force --nodeps
rpm -ivh gcc-4.4.7-4.el6.x86_64.rpm --force --nodeps
rpm -ivh gcc-c++-4.4.7-4.el6.x86_64.rpm --force --nodeps
rpm -ivh glibc-2.12-1.209.el6_9.1.i686.rpm --force --nodeps
rpm -ivh glibc-2.12-1.209.el6_9.1.x86_64.rpm --force --nodeps
rpm -ivh glibc-common-2.12-1.209.el6_9.1.x86_64.rpm --force --nodeps
rpm -ivh glibc-devel-2.12-1.209.el6_9.1.x86_64.rpm --force --nodeps
rpm -ivh glibc-headers-2.12-1.209.el6_9.1.x86_64.rpm --force --nodeps
rpm -ivh ksh-20120801-33.el6.x86_64.rpm --force --nodeps
rpm -ivh libaio-0.3.107-10.el6.i686.rpm --force --nodeps
rpm -ivh libaio-devel-0.3.107-10.el6.i686.rpm --force --nodeps
rpm -ivh libaio-devel-0.3.107-10.el6.x86_64.rpm --force --nodeps
rpm -ivh libgcc-4.4.7-18.el6.i686.rpm --force --nodeps
rpm -ivh libgcc-4.4.7-18.el6.x86_64.rpm --force --nodeps
rpm -ivh libgomp-4.4.7-18.el6.x86_64.rpm --force --nodeps
rpm -ivh libstdc++-4.4.7-18.el6.i686.rpm --force --nodeps
rpm -ivh libstdc++-4.4.7-18.el6.x86_64.rpm --force --nodeps
rpm -ivh libstdc++-devel-4.4.7-18.el6.x86_64.rpm --force --nodeps
rpm -ivh make-3.81-23.el6.x86_64.rpm --force --nodeps
rpm -ivh mpfr-2.4.1-6.el6.x86_64.rpm --force --nodeps
rpm -ivh nss-softokn-freebl-3.14.3-23.3.el6_8.i686.rpm --force --nodeps
rpm -ivh nss-softokn-freebl-3.14.3-23.3.el6_8.x86_64.rpm --force --nodeps
rpm -ivh sysstat-9.0.4-33.el6.x86_64.rpm --force --nodeps
rpm -ivh tzdata-java-2017b-1.el6.noarch.rpm --force --nodeps
rpm -ivh unixODBC-2.2.14-14.el6.x86_64.rpm --force --nodeps
rpm -ivh unixODBC-devel-2.2.14-14.el6.x86_64.rpm --force --nodeps

第三步安装oracle(切换至oracle用户)
1上传至服务器 /opt/oracle/  下面,这两个包属于 oracle 用户
安装包解压命令 ( 使用 oracle 用户解压  )
$unzip linux.x64_11gR2_database_1of2.zip
$unzip linux.x64_11gR2_database_2of2.zip
解压完成后 /opt/oracle 下会生成 database 目录centos6或者7无图形界面安装oracle11g
2.编辑oracle数据库应答文件
/opt/oracle/database/response(解压后的文件中)下有有db_install.rsp、dbca.rsp和netca.rsp三个应答文件,分别数据库安装文件、建立数据库实例和监听配置安装文件
vi/opt/oracle/database/response/db_install.rsp
修改以下内容
oracle.install.option=INSTALL_DB_SWONLY   //29  行安装类型
ORACLE_HOSTNAME=chances //37  行 主机名称
UNIX_GROUP_NAME=oinstall //42  行 安装组
INVENTORY_LOCATION=/opt/oracle/inventory //47  INVENTORY 目录
SELECTED_LANGUAGES=en,zh_CN //78  行 选择语言
ORACLE_HOME=/opt/oracle/product/112010/db_1 //83  oracle_home
ORACLE_BASE=/opt/oracle //88  oracle_base
oracle.install.db.InstallEdition=EE //99  oracle 版本
oracle.install.db.DBA_GROUP=dba //142 dba 用户组
oracle.install.db.OPER_GROUP=oinstall //147 oper 用户组
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE //160 行数据库类型
oracle.install.db.config.starterdb.globalDBName=orcl //165 globalDBName
oracle.install.db.config.starterdb.SID=orcl //170 SID
oracle.install.db.config.starterdb.memoryLimit=800  //192 行自动管理内存的最小内存 (M)
oracle.install.db.config.starterdb.password.ALL=oracle //233 行设定所有数据库用户使用同一个密码
DECLINE_SECURITY_UPDATES=true //385 行设置安全更新

3.执行runInstaller.sh安装oracle
#su oracle
进入刚才解压的database目录
$cd /opt/oracle/database/
$./runInstaller -silent -responseFile /opt/oracle/database/response/db_install.rsp -ignorePrereqcentos6或者7无图形界面安装oracle11g
(开始等待) 接下来就是等待(有点长,不要着急!!!)开始计时,快的话 10 分钟左右。(安装好的图示在下页)
可打开一个窗口跟踪日志
#tail -100f  /optoracle/oraInventory/logs/installActions2015-06-08_04-00-25PM.log
当出现下图是信息时 (等待结束)centos6或者7无图形界面安装oracle11g
打开一个root用户会话窗口,执行如下:
#/opt/oracle/inventory/orainstRoot.sh
#/opt/oracle/product/112010/db_1/root.sh
完成后,返回原来的终端(oracle用户下)按下回车键
Oracle11g 的安装就到此结束!

4.配置监听(让第三方工具(navicat)可连接oracle)
编辑 oracle 安装目录下的 netca.rsp 应答文件
vi /opt/oracle/database/response/netca.rsp
主要查看以下参数配置:
INSTALL_TYPE=""custom"" 安装的类型
LISTENER_NUMBER=1 监听器数量
LISTENER_NAMES={"LISTENER"} 监听器的名称列表
LISTENER_PROTOCOLS={"TCP;1521"} 监听器使用的通讯协议列表
LISTENER_START=""LISTENER"" 监听器启动的名称
检查完毕后,执行命令:
$netca /silent /responseFile /opt/oracle/database/response/netca.rsp
执行后成功如下所示 (如果失败请$ resource /home/oracle/.base_profile):
centos6或者7无图形界面安装oracle11g
成功运行后,在/opt/oracle/product/112010/network/admin/中生成listener.ora和sqlnet.ora
安装完成后通过 netstat 命令可以查看 1521 端口正在监听( 重开一个窗口
#netstat -tnulp | grep 1521

5.添加数据库实例
vi /opt/oracle/database/response/dbca.rsp
根据数据库建立方式的不同编辑不同的数据库 库选项( 去掉#号)
比如在本次安装过程中设置了下列参数: ( 注意下面参数视情况而定,不要照抄,原文件都有说明的 )
RESPONSEFILE_VERSION ="11.2.0"//不能更改
OPERATION_TYPE ="createDatabase"
GDBNAME ="orcl"//数据库的名字
SID ="orcl"//对应的实例名字
TEMPLATENAME ="General_Purpose.dbc"//建库用的模板文件
SYSPASSWORD ="oracle"//SYS管理员密码
SYSTEMPASSWORD ="oracle"//SYSTEM管理员密码
SYSMANPASSWORD= "oracle"
DBSNMPPASSWORD= "oracle"
DATAFILEDESTINATION =/opt/oracle/oradata//数据文件存放目录
RECOVERYAREADESTINATION=/opt/oracle/flash_recovery_area//恢复数据存放目录
CHARACTERSET ="ZHS16GBK"//字符集,重要!!!建库后一般不能更改,所以建库前要确定清楚。
TOTALMEMORY ="1638"//1638MB,物理内存2G*80%。
 
进入oracle安装目录的bin下,执行dbca命令
$dbca -silent -responseFile /opt/oracle/database/response/dbca.rspcentos6或者7无图形界面安装oracle11g
建库后进行实例进程检查:
$ps -ef | grep ora_ | grep -v grep
centos6或者7无图形界面安装oracle11g
查看监听状态:
$ lsnrctl status
centos6或者7无图形界面安装oracle11g

配置监听启动命令
$ vi /opt/oracle/product/112010/db_1/bin/dbstart
  ORACLE_HOME_LISTNER=$1 修改为 ORACLE_HOME_LISTNER=$ORACLE_HOME
配置监听停止命令
$ vi /opt/oracle/product/112010/db_1/bin/dbshut
ORACLE_HOME_LISTNER=$1 修改为 ORACLE_HOME_LISTNER=$ORACLE_HOME
修改 /etc/oratab 文件
$vi /etc/oratab
将orcl:/data/oracle/product/11.2.0:N中最后的N改为Y,成为
orcl:/data/oracle/product/11.2.0:Y
输入命令dbshut和dbstart测试
测试(可跳过)
Oracle 监听停止,进程消失。
$ dbstop
$lsnrctl status
$ps -ef |grep ora_ |grep -v grep
Oracle  监听 启动,进程启动。
$ dbstart
$lsnrctl status
$ps -ef |grep ora_ |grep -v grep

6.连接oracle
$ sqlplus / as sysdba
$ exit //退出
创建一个tom用户,密码是samba
create user tom IDENTIFIED BY samba
  default tablespace SYSTEM
  temporary tablespace TEMP
  profile DEFAULT;
grant connect to tom;
grant resource to tom;
grant unlimited tablespace to tom;

7.如果使用后,突然oracle出问题了请重新执行
#/opt/oracle/inventory/orainstRoot.sh
#/opt/oracle/product/112010/db_1/root.sh