oracle11g在CentOS6.5下的安装
该教程主要再现了oracle11g在Centos6.5下的安装过程,相比网上的教程,主要对基于oracle的preinstall脚本的封装成yum源,大大简化了前置的linux环境的配置:包括内核参数调整,oracle用户创建,依赖软件包的安装,这些都只需一个命令直接完成。并且使用的centos版本是最小化版本,理论上已经兼容其他6.5版本的依赖软件包,需要注意的是该yum源并不适合在Centos7以上的版本,请注意甄别服务器系统版本。
本教程由中科惠软(wisoft)开发部编写,仅供内部分享与浏览,有任何建议和意见可向开发部反馈。
[教程目录]
[TOC]
1、相关资源
资源名称 | 说明 | 软件版本 |
---|---|---|
CentOS | 最小化安装 | 6.5-x86_64-minimal |
oracle11gR2 | oracle安装包(分两部分) | 112040_Linux-x86-64[1of7] [2of7] |
wisoft-oracle11g-yum | 封装的oracle软件包依赖 | 6.5 |
wisoft-oracle-auto-start.sh | 开机启动脚本 | 1.0 |
wisoft-oracle-linux-backup.sh | 定时备份脚本 | 1.0 |
2、CentOS6.5MIN虚拟机搭建
以公司内部虚机服务器(192.10.110.100)(exsi 6.0)为例.
新建虚机 内存4g 硬盘16g:
安装系统:
在控制台输入命令
关闭防火墙:
servcie iptables stop
chkconfig iptables off
关闭seLinux:
vi /etc/selinux/config
编辑如下
1 | # This file controls the state of SELinux on the system. |
保存后重启
reboot
3、oracle在centos下的环境准备
1) 建立本地yum源
使用xftp向 /etc/yum.repos.d
目录 复制 文件 Wisoft-oracle11g-yum.tar.gz
使用xshell cd 到该目录解压
cd /etc/yum.repos.d
tar -zxvf wisoft-oracle11g-yum.tar.gz
复制出yum配置:
cp oracle-11g-centos6.5-preinstall.repo/wisoft-oracle11g-centos-preinstall-yum.repo ./
最终如下目录:
执行 yum repolist
查看当前的yum源设置
看到 wisoft-oracle-preinstall-yum 已经在列表中
2) 安装oracle-preinsall 软件包
执行安装命令初始化oracle环境配置:
yum --disablerepo=\* --enablerepo=wisoft-oracle-preinstall-yum install oracle-rdbms-server-11gR2-preinstall
按下y 确认安装所缺的包
安装完成后,该软件包已经自动建立了 oracle用户和组,现在只需要给它改个密码:
passwd oracle
之后 ,切换oracle用户su oracle
输入密码,oracle账号登录成功。
3) 设定oracle的基础环境变量
vi /home/oracle/.bashrc
将如下变量追加到该文件末尾:
1 | ORACLE_BASE=/oracle |
结果如图:
立即生效变量:
source /home/oracle/.bashrc
查看环境变量是否生效:
echo $ORACLE_HOME
4、oracle的安装
1) 解压oracle安装包
切换至 root账号在根目录建立oracle软件的文件夹
su root
mkdir -p /oracle/oraInventory
chown -R oracle:oinstall /oracle
使用xftp上传至相应目录
回到oracle 用户,切换到该路径下,执行解压命令:
su oracle
cd ~
unzip '**.zip'
解压完成,在oracle用户目录下解压多出一个 database 文件夹,该文件夹即为安装软件目录。
分别复制3个配置文件出来,方便我们修改:
安装软件的配置:cp database/response/db_install.rsp /home/oracle/
安装网络监听的配置:cp database/response/netca.rsp /home/oracle/
建库的配置:cp database/response/dbca.rsp /home/oracle/
给其中的dbca配置最高权限:
chmod 777 /home/oracle/dbca.rsp
目录结果如下:
2) 安装oracle软件
修改db_install.rsp中的配置参数
vi db_install.rsp
参照如下配置,已经给出指定行,使用 vi命令 :set nu 显示行号 快速定位
1 | # 1. INSTALL_DB_SWONLY |
执行静默安装oracle软件
cd ~/database
./runInstaller -silent -ignorePrereq -responseFile /home/oracle/db_install.rsp
如下图:
接着执行安装完成时的两个sh脚本,注意一定要用root用户执行,按CTRL+D注销当前oracle用户,回到root下:
sh /oracle/oraInventory/orainstRoot.sh
sh /oracle/product/11.2.0/dbhome_1/root.sh
3) 安装监听
切换到oracle用户,同样执行静默安装:
netca /silent /responseFile /home/oracle/netca.rsp
如下图:
4) 安装数据库实例
继续编辑配置文件dbca.rsp:
vi dbca.rsp
参照配置项改动如下:
1 | #数据库的Global database name |
执行安装实例命令:
dbca -silent -responseFile /home/oracle/dbca.rsp
效果如下:
5) 检验并修改密码过期
执行sqlplus /nolog
打开sqlplus,以 conn / as sysdba
登录;
执行如下sql 查看过期时间
1 | SELECT * FROM dba_profiles s WHERE s.profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME'; |
执行如下sql修改密码永不过期
1 | ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED; |
如下图:
5、oracle的开机启动
修改oracle启动脚本:
vi /etc/oratab
将其中的实例启用自启动:
1 | orcl:/oracle/product/11.2.0/dbhome_1:Y |
使用 xftp 复制 资源文件 wisoft-oracle-auto-start.sh 到 /oracle 目录下
使用root账号对其赋权
chmod +x /oracle/wisoft-oracle-auto-start.sh
chown -R oracle:oinstall /oracle/wisoft-oracle-auto-start.sh
完成后用 /oracle/wisoft-oracle-auto-start.sh start
和/oracle/wisoft-oracle-auto-start.sh stop
测试 是否能够正常启停oracle
如果你的 ORACLE_HOME不是本教程指定的 /oracle/product/11.2.0/dbhome_1,你需要重新编辑该脚本的默认路径。
把刚测试好的脚本复制到自动启动目录并赋予权限,添加为操作系统服务
cp /oracle/wisoft-oracle-auto-start.sh /etc/init.d/oracle
添加权限
chmod 755 /etc/rc.d/init.d/oracle
添加到系统服务
chkconfig --add oracle
检查系统服务
chkconfig --list oracle
结果如下:
完成,自启动配置,通过reboot 重启来确认是否自启动成功
你也可以通过服务命令来启动停止oracle
service oracle stop
service oracle start
6、oracle的自动备份
使用oracle账户,建立一个备份文件夹,例如 /oracle/wisoft-db-backup
mkdir -p /oracle/wisoft-db-backup
使用sqlplus登录,建立一个oracle数据库目录连接到 刚建立的 /oracle/wisoft-db-backup
1 | CREATE DIRECTORY wisoftdbbackup AS '/oracle/wisoft-db-backup'; |
如下图:
复制资源文件 wisoft-oracle-linux-backup.sh 到指定目录 /oracle
同样赋予权限
chmod +x /oracle/wisoft-oracle-linux-backup.sh
chown -R oracle:oinstall /oracle/wisoft-oracle-linux-backup.sh
修改 wisoft-oracle-linux-backup.sh 脚本
vi /oracle/wisoft-oracle-linux-backup.sh
1 |
|
其中 DUMP_DIR_NAME=wisoftdbbackup
和 DATA_DIR=/oracle/wisoft-db-backup
分别是我们刚建立的oracle
目录 和实际备份文件路径
确认其中所有配置项和你当前的oracle配置一致后,执行脚本即可备份
将该脚本添加到定时任务
su oracle
crontab -e
编辑如下脚本并保存
1 | SHELL=/bin/sh |
切换到 root 账号 重启 定时服务;
service crond restart
搞定!!!
定时任务的配置如下
minute hour day month week command
其中:
minute: 表示分钟,可以是从0到59之间的任何整数。
hour:表示小时,可以是从0到23之间的任何整数。
day:表示日期,可以是从1到31之间的任何整数。
month:表示月份,可以是从1到12之间的任何整数。
week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。
上面脚本的30 2 * * *
即为每天凌晨2点半。
附:教程练习反馈
希望大家能在用虚拟机自己尝试搭建一个linux来做简单练习,只有在练习操作中才能提高自己。做完练习请反馈给我。
人员姓名 | 完成时间 | 评定 | 备注 |
---|---|---|---|
XXXXXX | 2019-7-25 | ⭐⭐⭐⭐⭐ | |
XXXXXX | 2019-7-25 | ⭐⭐⭐⭐⭐ | |
XXXXXX | 2019-7-25 | ⭐⭐⭐⭐⭐ |
v1.5.2