logo资料库

Centos7上安装oracle 11g R2(测试成功).doc

第1页 / 共37页
第2页 / 共37页
第3页 / 共37页
第4页 / 共37页
第5页 / 共37页
第6页 / 共37页
第7页 / 共37页
第8页 / 共37页
资料共37页,剩余部分请下载后查看
环境准备
安装Oracle前准备
创建运行oracle数据库的系统用户和用户组
创建oracle数据库安装目录
修改OS系统标识
安装oracle数据库所需要的软件包
关闭防火墙
修改内核参数
Linux上安装Oracle的辛酸史
创建oracle用户与相关用户组
下载安装包
检查硬件需求
1. 内存要求
2. 硬盘要求
检查软件需求
1. 操作系统要求
2. 软件包依赖
配置内核参数
为oracle用户添加shell配置
创建并配置环境变量
开始正式安装
使用SQLplus查询scott表进行测试
Centos7 上安装 oracle 11g R2 Centos7 安装 oracle11gR2 说明 环境准备 安装 Oracle 前准备 创建运行 oracle 数据库的系统用户和用户组 创建 oracle 数据库安装目录 修改 OS 系统标识 安装 oracle 数据库所需要的软件包 关闭防火墙 关闭 selinux 需重启生效 修改内核参数 对 oracle 用户设置限制提高软件运行性能 配置用户的环境变量 解压安装包 oracle 安装 登录 oracle 用户 启动 oralce 安装 按照步骤进行安装 安装中出现的问题 环境准备 一、安装包: 1. 2. 3. CentOS-7-x86_64-DVD linux.x64_11gR2_database_1of2.zip linux.x64_11gR2_database_2of2.zip 二、运行环境 150M 4096M(最少要 3G 以上) 系统环境:centos 7 64 位(图形安装) 硬盘分区: /boot swap / /home /tmp 10G 5G 5G
10G 10G /usr /usr/local 10G /var /opt 10G /data 剩余所有 # df -h 同步时钟 (对对时间,这步不是必须的,) # yum -y install ntp 安装时间同步包 # ntpdate time.nist.gov 同步时间 # echo "* */2 * * * /sbin/ntpdate time.nist.gov" >> /etc/crontab 加到开机启动 安装 Oracle 前准备 创建运行 oracle 数据库的系统用户和用户组 [jonathan@localhost ~]$ su root #切换到 root Password: [root@localhost]# groupadd oinstall
#创建用户组 oinstall [root@localhost]# groupadd dba #创建用户组 dba [root@localhost]# useradd -g oinstall -g dba -m oracle #创建 oracle 用户,并加入到 oinstall 和 dba 用户组(如果在安装系统的时候, 已经建立了 oracle 这个用户,这条命令就不用执行了,执行了也所谓,出错呗! 直接把建好的用户加入这两个组就可以了,命令# usermod–goinstall–gdba oracle 。下面的设置密码执行不,你随意,还是需要用 id oracle这个命令查看 一下结果的。) [root@localhost]# passwd oracle #设置用户 oracle 的登陆密码,不设置密码,在 CentOS 的图形登陆界面没法登陆 Changing password for user oracle. # 密码 New password: BAD PASSWORD: The password is shorter than 8 characters Retype new password: passwd: all authentication tokens updated successfully. [root@localhost]# id oracle # 确认密码 uid=1001(oracle) gid=1002(dba) groups=1002(dba) # 查看新建的 oracle 用户 创建 oracle 数据库安装目录 #oracle 数据库安装目录 [jonathan@localhost ~]$ su root Password: [root@localhost]# mkdir -p /data/oracle [root@localhost]# mkdir -p /data/oraInventory [root@localhost]# mkdir -p /data/database [root@localhost]# cd /data [root@localhost data]# ls database [root@localhost data]# chown -R oracle:oinstall /data/oracle 有者为 oinstall 用户组的 oracle 用户 [root@localhost data]# chown -R oracle:oinstall /data/oraInventory [root@localhost data]# chown -R oracle:oinstall /data/database [root@localhost data]# #创建完毕检查一下(强迫症) oracle oraInventory #oracle 数据库配置文件目录 #oracle 数据库软件包解压目录 #设置目录所 修改 OS 系统标识 oracle 默认不支持 CentOS 系统安装,Oracle Database 11g Release 2 的 OS,改成 redhat 修改文件 /etc/RedHat-release [root@localhost data]# cat /proc/version Linux version 3.10.0-327.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.3 20140911 (Red Hat 4.8.3-9) (GCC) ) #1 SMP Thu Nov 19 22:10:57 UTC 2015
[root@localhost data]# cat /etc/redhat-release CentOS Linux release 7.1.1503 (Core) [root@localhost data]# vi /etc/redhat-release [root@localhost data]# cat /etc/redhat-release redhat-7 [root@localhost data]# 安装 oracle 数据库所需要的软件包 这里说明一下,不用纠结必须安哪个包,害怕哪个包落下了,哪个包没有更新,oracle 安装过程中会检查依赖环境的了,不符合的会提示,再安装也来得及。先说一句,提示不符 合的有些是包版本过高,高了也没有关系。 我的做法是执行一下下面这句,安装几个算几个,更新几个算几个。 # yum install gcc* gcc-* gcc-c++-* glibc-devel-* glibc-headers-* compat-libstdc* libstdc* elfutils-libelf-devel* libaio-devel* sysstat* unixODBC-* pdksh-* 有的包不能通过 yum 安装,需要自己下载后用 rpm –ivh 安装,看提示吧 # rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm --force--nodeps Oracle 网站上说明需要下面这些包: binutils-2.15.92.0.2 compat-libstdc++-33-3.2.3 compat-libstdc++-33-3.2.3 (32 bit) 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-2.3.4-2.41 (32 bit) glibc-common-2.3.4 glibc-devel-2.3.4 glibc-headers-2.3.4 libaio-0.3.105 libaio-0.3.105 (32 bit) libaio-devel-0.3.105 libaio-devel-0.3.105 (32 bit) libgcc-3.4.6 libgcc-3.4.6 (32-bit) libstdc++-3.4.6 libstdc++-3.4.6 (32 bit) libstdc++-devel 3.4.6
make-3.80 numactl-0.6.4.x86_64 pdksh-5.2.14 sysstat-5.0.5 关闭防火墙 CentOS 7.2 默认使用的是 firewall 作为防火墙 [root@localhost /]# systemctl status firewalld.service 运行中 ● firewalld.service - firewalld - dynamic firewall daemon #查看防火墙状态, Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled) Active: active (running) since Thu 2016-04-07 18:54:29 PDT; 2h 20min ago Main PID: 802 (firewalld) CGroup: /system.slice/firewalld.service └─802 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid Apr 07 18:54:25 localhost.localdomain systemd[1]: Starting firewalld - dynamic firewall daemon... Apr 07 18:54:29 localhost.localdomain systemd[1]: Started firewalld - dynamic firewall daemon. [root@localhost /]# systemctl stop firewalld.service [root@localhost /]# systemctl status firewalld.service 态,发现已关闭 ● firewalld.service - firewalld - dynamic firewall daemon #再次查看防火墙状 #关闭防火墙 Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled) Active: inactive (dead) since Thu 2016-04-07 21:15:34 PDT; 9s ago Main PID: 802 (code=exited, status=0/SUCCESS) Apr 07 18:54:25 localhost.localdomain systemd[1]: Starting firewalld - dynamic firewall daemon... Apr 07 18:54:29 localhost.localdomain systemd[1]: Started firewalld - dynamic firewall daemon. Apr 07 21:15:33 localhost systemd[1]: Stopping firewalld - dynamic firewall daemon... Apr 07 21:15:34 localhost systemd[1]: Stopped firewalld - dynamic firewall daemon. [root@localhost /]# systemctl disable firewalld.service (重启也是禁止的) #禁止使用防火墙
Removed symlink /etc/systemd/system/dbus-org.Fedoraproject.FirewallD1.service. Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service. [root@localhost /]# 关闭 selinux(需重启生效) [root@localhost /]# vi /etc/selinux/config [root@localhost /]# cat /etc/selinux/config 将 SELINUX=disabled #此处修改为 disabled 关闭服务: iptables selinux portmap rpc.statd cupsd avahi-daemon sendmail killall iptables chkconfig --level 2345 iptables off killall portmap chkconfig --level 2345 portmap off killall avahi-daemon chkconfig --level 2345 avahi-daemon off killall sendmail chkconfig --level 2345 sendmail off 有人要求把下面的这些服务都 kill 了,我没 kill,也没有出问题,应该是错 杀一千,不放一个的做法。随你吧。 关闭服务:(killall 下面的) iptables selinux portmap rpc.statd cupsd avahi-daemon sendmail 修改内核参数 [root@localhost /]# vi /etc/sysctl.conf
在最下面添加以下内容: net.ipv4.icmp_echo_ignore_broadcasts = 1 net.ipv4.conf.all.rp_filter = 1 fs.file-max = 6815744 #设置最大打开文件数 fs.aio-max-nr = 1048576 kernel.shmall = 2097152 #共享内存的总量,8G 内存设置:2097152*4k/1024/1024 kernel.shmmax = 2147483648 #最大共享内存的段大小 kernel.shmmni = 4096 #整个系统共享内存端的最大数 kernel.sem = 250 32000 100 128 net.ipv4.ip_local_port_range = 9000 65500 #可使用的 IPv4 端口范围 net.core.rmem_default = 262144 net.core.rmem_max= 4194304 net.core.wmem_default= 262144 net.core.wmem_max= 1048576 vi /etc/sysctl.conf 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 fs.aio-max-nr = 1048576 使配置参数生效 [root@localhost /]# sysctl -p net.ipv4.icmp_echo_ignore_broadcasts = 1 net.ipv4.conf.all.rp_filter = 1 sysctl: setting key "fs.file-max": Invalid argument fs.file-max = 6815744 #设置最大打开文件数 fs.aio-max-nr = 1048576 sysctl: setting key "kernel.shmall": Invalid argument kernel.shmall = 2097152 #共享内存的总量,8G 内存设置:2097152*4k/1024/1024 sysctl: setting key "kernel.shmmax": Invalid argument kernel.shmmax = 2147483648 #最大共享内存的段大小 sysctl: setting key "kernel.shmmni": Invalid argument kernel.shmmni = 4096 #整个系统共享内存端的最大数 kernel.sem = 250 32000 100 128 sysctl: setting key "net.ipv4.ip_local_port_range": Invalid argument
net.ipv4.ip_local_port_range = 9000 65500 #可使用的 IPv4 端口范围 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576 [root@localhost /]# 对 oracle 用户设置限制,提高软件运行性能 [root@localhost /]# vi /etc/security/limits.conf 在最下面部分添加内容(粗体为添加的内容) @student - maxlogins 4 oracle oracle oracle oracle End of file soft hard soft hard nproc nproc nofile nofile 2047 16384 1024 65536 配置用户的环境变量 [root@localhost /]# vi /home/oracle/.bash_profile 添加以下内容: export ORACLE_BASE=/data/oracle #oracle 数据库安装目录 export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1 #oracle 数据库路径 export ORACLE_SID=orcl #oracle 启动数据库实例名 export ORACLE_TERM=xterm #xterm 窗口模式安装 export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH #添加系统环境变量 export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib #添加系统环境变量 export LANG=en_US #防止安装过程出现乱码 export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK #设置 Oracle 客户端字符集 生效 [root@localhost /]# source /home/oracle/.bash_profile 以下部分也是有人说需要修改,我没有修改,也没有发现问题,自己 看着办吧, #修改 vi /etc/pam.d/login #添加以下内容: session session required required /lib/security/pam_limits.so pam_limits.so
分享到:
收藏