准备工作(安装环境)
1. 使用VMware14 搭建centos7的虚拟机
ip:192.168.126.129
2. 下载Oracle11g安装文件
链接: https://pan.baidu.com/s/1DaMJ8Nei5a9tUfDfvHd8Jw 提取码: nhv6
3.使用xhell5工具连接虚拟机,把两个文件上传到/home目录下
使用命令
[root@localhost ~]# cd /home 进去home目录中 [root@localhost home]# rz 拉起windows资源管理器选择你Oracle11g的目录
4.使用root用户登录linux,yum安装unzip软件,用来解压上传的oracle安装文件
[root@localhost home]# yum install unzip –y
5…解压oracle安装程序
[root@localhost home]# unzip linux.x64_11gR2_database_1of2.zip [root@localhost home]# unzip linux.x64_11gR2_database_2of2.zip
解压完成后,在/home目录下生成一个database文件夹,里面就是oracle安装文件
6. yum安装vim软件,用于编辑配置文件
[root@localhost home]#yum install vim -y
7.在/etc/hosts文件中添加主机名
a. 查看主机名
[root@localhost home]# hostname localhost.localdomain [root@localhost home]#
b. 添加到hosts文件中
[root@localhost home]# vim /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.126.129 localhost.localdomain
8.关掉selinux
为什么要关闭呢?
那是因为在RedHat linux操作系统中默认开启了防火墙,SELinux也处于启动状态,一般状态为enforing。致使很多服务端口默认是关闭的。
[root@localhost home]# vim /etc/selinux/config 默认是SELINUX=enforcing设置为SELINUX=disabled [root@localhost home]# setenforce 0 让配置文件生效
9.关闭防火墙,以免安装过程中发生不必要的错误
[root@localhost ~]# systemctl stop firewalld 防火墙暂时关闭 [root@localhost ~]# systemctl disable firewalld 防火墙永久关闭
10.安装oracle11g的依赖包
[root@localhost ~]# yum install gcc make binutils gcc-c++ compat-libstdc++-33elfutils-libelf-devel elfutils-libelf-devel-static ksh libaiolibaio-develnumactl-devel sysstat unixODBC unixODBC-devel pcre-devel –y • 1
11.添加用户和组
[root@localhost ~]# groupadd oinstall 创建组名 [root@localhost ~]# groupadd dba 创建数据组 [root@localhost ~]# useradd -g oinstall -G dba oracle 创建oracle并放到oinstall组 #####注意删除用户 需要userdel -r 用户名 ,否则 userdel 用户还需要 rm -rf /home/用户名 [root@localhost ~]# passwd oracle 设置oracle密码 [root@localhost ~]# id oracle 显示oracle的ID,以及所属群组的ID。 uid=1001(oracle) gid=1001(oinstall) groups=1001(oinstall),1002(dba)
12.修改内核参数配置文件
[root@localhost ~]# vim /etc/sysctl.conf # For more information, see sysctl.conf(5) and sysctl.d(5). 下面添加 fs.aio-max-nr = 1048576 fs.file-max = 6815744 #所有共享内存段相加大小限制 kernel.shmall = 2097152 #最大单个共享内存段大小(建议为内存一半), >9.2的版本已大幅降低共享内存的使用 kernel.shmmax = 536870912 #一共能生成多少共享内存段,每个PG数据库集群至少2个共享内存段 kernel.shmmni = 4096 #信号量 kernel.sem = 250 32000 100 128 # 本地自动分配的TCP, UDP端口号范围 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
13.查看配置是否生效
[root@localhost home]# sysctl -p
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
14.修改用户的限制文件
[root@localhost home]# vim /etc/security/limits.conf
#@student - maxlogins 4 在这个下面加 #系统中最大可同时存在的进程数 oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 oracle soft stack 10240
15.修改用户验证选项(root用户)
[root@localhost home]# vim /etc/pam.d/login #pam_selinux.so close should be the first session rule session required /lib64/security/pam_limits.so session required pam_limits.so
如图:
16.创建oracle安装目录和设置文件权限
普及:https://www.runoob.com/linux/linux-comm-mkdir.html 有关linux命令
-p 确保目录名称存在,不存在的就建一个。
[root@localhost ~]# mkdir -p /data/oracle/product/11.2.0 [root@localhost ~]# mkdir /data/oracle/oradata [root@localhost ~]# mkdir /data/oracle/inventory [root@localhost ~]# mkdir /data/oracle/fast_recovery_area [root@localhost ~]# chown -R oracle:oinstall /data/oracle [root@localhost ~]# chmod -R 777 /data/oracle
17.切换为oracle用户,设置oracle用户环境变量
.bash_profile在/home/oracle/目录下
[root@localhost ~]# su - oracle [oracle@localhost ~]$ vim .bash_profile
注意:不要把.bash_profile文件下原有的path和export PATH注释掉
PATH=P A T H : PATH:PATH:HOME/.local/bin:$HOME/bin
export PATH
#User specific environment and startup programs 这个下面添加 PATH=$PATH:$HOME/.local/bin:$HOME/bin export PATH 在原有的下面添加 ORACLE_BASE=/data/oracle; export ORACLE_BASE ORACLE_HOME=$ORACLE_BASE/product/11.2.0; export ORACLE_HOME NLS_LANG=AMERICAN_AMERICA.ZHS16GBK; export NLS_LANG ORACLE_SID=infodb; export ORACLE_SID PATH=$PATH:$ORACLE_HOME/bin:$ORACLE_HOME/jdk/bin:/sbin; export PATH BIN=$ORACLE_HOME/bin; export BIN LD_LIBRARY_PATH=$ORACLE_HOME/lib; export LD_LIBRARY_PATH export LANG=en_US.UTF-8
注意,ORACLE_SID=infodb与创建的数据库实例名称一致,否则数据库启动后无法访问。
17.1 配置完后使用命令使配置生效
[oracle@localhost ~]$ source .bash_profile #使用echo $ORACLE_BASE或者echo $ORACLE_HOME#查看配置的信息是否生效,如果正确的话是和你的配置是一致的
17.2 退出在登录,使得环境变量的配置生效
[oracle@loaclhost ~]$ exit [root@loaclhost ~]$ su - oracle [oracle@loaclhost ~]$ env |grep ORA ORACLE_SID=infodb ORACLE_BASE=/data/oracle ORACLE_HOME=/data/oracle/product/11.2.0
18. 安装前的最后准备–编辑静默安装响应文件
注:严格按照命令来
a. 将响应文件复制到oracle用户目录 即/home/oracle
[oracle@localhost ~]$ cp -R /home/database/response/ . [oracle@localhost ~]$ ll total 0 drwxr-xr-x. 2 oracle oinstall 61 Sep 24 09:00 response
b. 编辑相应文件
[oracle@localhost ~]$ cd response/ [oracle@localhost response]$ vim db_install.rsp
注:在这个文件db_install.rsp找对应的将等于号后面填了
oracle.install.option=INSTALL_DB_SWONLY ORACLE_HOSTNAME=localhost UNIX_GROUP_NAME=oinstall INVENTORY_LOCATION=/data/oracle/inventory SELECTED_LANGUAGES=en,zh_CN ORACLE_HOME=/data/oracle/product/11.2.0 ORACLE_BASE=/data/oracle oracle.install.db.InstallEdition=EE oracle.install.db.DBA_GROUP=dba oracle.install.db.OPER_GROUP=dba DECLINE_SECURITY_UPDATES=true
19.根据响应文件静默安装Oracle11g
[oracle@localhost database]$ cd /home/database/ [oracle@localhost database]$ ./runInstaller -silent -responseFile /home/oracle/response/db_install.rsp -ignorePrereq !!没反应的话耐心等会!!!!!
可以切换终端执行,切记!! 不要退出当前用户,从新打开一个窗口
执行tail -f /data/oracle/inventory/logs/installActions2015-06-08_04-00-25PM.log命令查看安装程序日志
如果当前用户的窗口出现以successfully Setup Software提示时,代表安装成功
19.1 安装成功后,按照要求执行脚本
[root@localhost ~]# sh /data/oracle/inventory/db_1/orainstRoot.sh 注:如果没有db_1文件夹的话/data/oracle/inventory/orainstRoot.sh [root@localhost ~]# sh /data/oracle/product/11.2.0/root.sh Check /data/oracle/product/11.2.0/install/root_node130_2015-06-08_00-06-40.log for the output of root script
注意切换用户
20.静默方式配置监听(图形化、命令)
20.1 命令
切换oracle用户登录,命令安装
[oracle@localhost ~]$ su - oracle [oracle@localhost ~]$ netca /silent /responseFile /home/oracle/response/netca.rsp
可能会报错
oracle is not in the sudoers file. This incident will bereported
oracle 用户不在sudoers组中, 切换成root用户 , 执行命令:chmod u+w /etc/sudoers , vim /etc/sudoers 这个目录,找到 root ALL=(ALL) ALL 这行,在这行下面添加 oracle ALL=(ALL) ALL , chmod u-w /etc/sudoers 最后撤销权限