CentOS6.4安装及配置oracle
2013-05-10 15:18
483 查看
纯属个人记录用。
CentOS安装的是开发人员版本,有部分东西已经安装上了,像jdk之类的都已经安装配置好了。
以下记录root用户相关操作
关闭防火墙,禁用SELinux
命令行输入# setup,在界面中选择防火墙,关闭防火墙
# vim /etc/selinux/config 修改SELINUX=disabled,然后:wq保存退出后,输入setenforce 0 使修改生效,或者重启下电脑
安装相关依赖包
Oracle官方文档要求安装的包有:
查看系统是否已经安装相关包:
# rpm -q binutils compat-libstdc++-33 compat-libstcc++-33.i686 elfutils-libelf elfutils-libeld-devel gcc gcc-c++ glibc.i686 glibc-common glibc-devel glibc-devel.i686 glibc-headers ksh libaio libaio.i686 libaio-devel libaio-devel.i686 libgcc libgcc.i686 libstdc++ libstdc++.i686 libstdc++-devel make sysstat
目前已经安装好了之后查询的结果:
如果有未安装的包,则使用yum方式安装所属的包:
# yum -y install binutils compat-libstdc++-33 compat-libstcc++-33.i686 elfutils-libelf elfutils-libeld-devel gcc gcc-c++ glibc.i686 glibc-common glibc-devel glibc-devel.i686 glibc-headers ksh libaio libaio.i686 libaio-devel libaio-devel.i686 libgcc libgcc.i686 libstdc++ libstdc++.i686 libstdc++-devel make sysstat
最后还有一个libXp包一定要安装,否则安装oracle时会出现java exception
#yum install libXp
不过由于我安装的CentOS安装是是开发人员版本,这个库已经安装过了。若安装的是别的系统版本,请参考执行安装该库。
在安装oracle过程中,环境检测那一步提示还缺少3个库,其中2个可以使用如下脚本进行安装,还有一个pdksh-5.2.14与ksh有冲突,在安装32位的oracle的时候可以忽略。
# yum install unixODBC
# yum install unixODBC-devel
创建Oracle用户与组
仅考虑单主机的情况下,简单点说就是仅考虑开发环境,不考虑真实情况下的啥RAC之类的配置
建立群组oinstall #groupadd oinstall
建立群组dba #groupadd dba
新增用户oracle并将其加入oinstall和dba组 #useradd -m -g oinstall -G dba oracle
测试帐号是否创建成功 #id oracle
建立oracle用户的新密码 #passwd oracle
将oracle用户加入到sudo群组中
# vim /etc/sudoers 找到root那一行,在下面加入oracle ALL=(ALL) ALL 保存时需要使用:wq! (由于该文档为只读文档,需要增加!来强制保存)
配置系统内核参数
# vim /etc/sysctl.conf 参考oracle官方文档,补充了如下圈出来的部分内容在配置文件中。其中kernel.shmall和kernel.shmmax两项值在系统中默认已经够大了,没有做相应的修改。
编辑完成之后,保存,执行# sysctl -p 启用刚刚做的变更
编辑/etc/security/limits.conf用于 Checking Resource Limits for the Oracle Software Installation Users
# vim /etc/security/limits.conf 加入最后五行
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
编辑/etc/pam.d/login
# vim /etc/pam.d/login
最后增加2行
session required /lib/security/pam_limits.so
session required pam_limits.so
修改/etc/profile
# vim /etc/profile
将以下代码加入到profile档案中
if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi fi
创建oracle安装文件夹以及数据存放文件夹
# mkdir /opt/oracle
# mkdir /opt/oracle/112
# chown -R oracle:dba /opt/oracle
[b]检查hosts文件中localhost的记录是否指向127.0.0.1,若没有的话后面配置oracle监听的时候会出现一些问题,导致无法启动监听,此处若没有的话手动添加次记录即可。[/b]
以下操作使用新建的oracle帐号执行
解压安装程序到/opt/oracle目录
如果centos的中文环境,则在安装时会出现乱码,界面上面显示不正常,需要执行一下指令:
$ export LANG=en_US
接着在当oracle安装程序解压路径执行
$ ./runInstaller
即可出现安装界面,若界面显示不全,请调整系统的分辨率
在安装过程中,版本选择,个人使用的话请选择桌面版,关于Oracle Home Location 以及Oracle Base 等请按照之前设置的进行配置,此处使用之前的配置后,在这个步骤只需要将UNIX DBA Group选择为dba以及输入SYS, SYSTEM等账号共享的database Password即可。然后选择Next即可。此后的步骤主要是目录选择和密码设置等,在安装程序完成之前,会弹框提示需要执行2个script脚本,注意:请先执行完脚本后再去点击安装界面的下一步。此脚本需要su到root。执行完之后可以打开网页版的em进行登录,测试。sys和system的密码与用户名一致,是在密码管理的时候进行了修改的。
由于在linux中oracle安装的时候并不是以服务的形式安装的,所以每次系统重启后oracle不会启动,需要针对oracle自动启动做相关的设定。
配置oracle启动,停止以及开机自启动
启动和停止oracle
首先切换到oracle用户 su - oracle
接着输入 $ sqlplus "/as sysdba" 窗口变为SQL> 接着输入 SQL>startup 就可以正常启动数据库了。 另外,停止数据库的指令如下:SQL>shutdown immediate
检查oracle的监听器是否正常
在终端中输入 $ lsnrctl status 检查监听器是否有启动
若没有启动,则在终端中输入 $ lsnrctl start 启动 监听器,然后再使用sqlplus连接数据库
启动emctl
网页版的em目前是木有反应的,就是因为emctl不会自动启动,需要单独启动,命令如下:$ emctl start dbconsole 该指令运行时间比较长
oracle启动和停止脚本
修改oracle系统配置文件,/etc/oratab 只有这样,oracle自带的dbstart和dbshut才能够发挥作用
# vim /etc/oratab 将N修改为Y
在/etc/init.d/目录下创建oracle文件,内容如下:
#!/bin/sh # chkconfig: 35 80 10 # description: Oracle auto start-stop script. # # Set ORA_HOME to be equivalent to the $ORACLE_HOME # from which you wish to execute dbstart and dbshut; # # Set ORA_OWNER to the user id of the owner of the # Oracle database in ORA_HOME. ORA_HOME=/opt/oracle/112 ORA_OWNER=oracle if [ ! -f $ORA_HOME/bin/dbstart ] then echo "Oracle startup: cannot start" exit fi case "$1" in 'start') # Start the Oracle databases: echo "Starting Oracle Databases ... " echo "-------------------------------------------------" >> /var/log/oracle date +" %T %a %D : Starting Oracle Databases as part of system up." >> /var/log/oracle echo "-------------------------------------------------" >> /var/log/oracle su - $ORA_OWNER -c "$ORA_HOME/bin/dbstart" >>/var/log/oracle echo "Done" # Start the Listener: echo "Starting Oracle Listeners ... " echo "-------------------------------------------------" >> /var/log/oracle date +" %T %a %D : Starting Oracle Listeners as part of system up." >> /var/log/oracle echo "-------------------------------------------------" >> /var/log/oracle su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl start" >>/var/log/oracle echo "Done." echo "-------------------------------------------------" >> /var/log/oracle date +" %T %a %D : Finished." >> /var/log/oracle echo "-------------------------------------------------" >> /var/log/oracle touch /var/lock/subsys/oracle ;; 'stop') # Stop the Oracle Listener: echo "Stoping Oracle Listeners ... " echo "-------------------------------------------------" >> /var/log/oracle date +" %T %a %D : Stoping Oracle Listener as part of system down." >> /var/log/oracle echo "-------------------------------------------------" >> /var/log/oracle su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl stop" >>/var/log/oracle echo "Done." rm -f /var/lock/subsys/oracle # Stop the Oracle Database: echo "Stoping Oracle Databases ... " echo "-------------------------------------------------" >> /var/log/oracle date +" %T %a %D : Stoping Oracle Databases as part of system down." >> /var/log/oracle echo "-------------------------------------------------" >> /var/log/oracle su - $ORA_OWNER -c "$ORA_HOME/bin/dbshut" >>/var/log/oracle echo "Done." echo "" echo "-------------------------------------------------" >> /var/log/oracle date +" %T %a %D : Finished." >> /var/log/oracle echo "-------------------------------------------------" >> /var/log/oracle ;; 'restart') $0 stop $0 start ;; esac |
修改该文件的权限 #chmod 755 /etc/init.d/oracle
添加服务 #chkconfig --level 35 oracle on
如果提示chkconfig命令未找到的话,就表示需要修改用户的环境变量
打开主目录下的.bash_profile文件 # vim ~/.bash_profile 在PATH中增加上/sbin目录,保存之后,通过source ~/.bash_profile 使修改生效
需要在关机和重启之前停止数据库
# ln -s /etc/init.d/oracle /etc/rc0.d/K01oracle //关机
# ln -s /etc/init.d/oracle /etc/rc6.d/K01oracle //重启
使用方法
# service oracle start //启动oracle
# service oracle stop //关闭oracle
# service oracle restart //重启oracle
相关文章推荐
- Oracle安装Linux内核参数配置详解Centos6.4+11GR2
- Oracle安装Linux内核参数配置详解Centos6.4+11GR2
- Oracle安装配置在Windows 7上VMWare Server 2.0安装CentOS 6.4 + Oracle 11g(持续更新内容)
- Centos 6.4 KVM安装和配置
- CentOS6.4.i686下Oracle安装—包安装失败
- CentOS 6.4安装配置ldap
- CentOS 6.4安装配置LAMP服务器(Apache+PHP5+MySQL)
- CentOS 6.4 安装配置ftp
- 64位CentOS 6.4安装配置流量监控工具ntopng
- CentOS6.4 安装Sphinx 配置MySQL数据源
- CentOS 6.4安装配置LNMP服务器(Nginx+PHP+MySQL)
- CentOS 6.4安装配置LAMP服务器(Apache+PHP5+MySQL)
- CentOS 6.4安装配置LAMP服务器(Apache+PHP5+MySQL)
- CentOS 6.4安装配置LNMP服务器(Nginx+PHP+MySQL)
- CentOS 6.4 Openstack Grizzly 安装配置 (Open VSwitch 单节点)
- CentOS 6.4安装配置LNMP服务器(Nginx+PHP+MySQL)
- CentOS 6.4安装配置LAMP服务器(Apache+PHP5+MySQL)
- CentOS 6.4安装配置LNMP服务器(Nginx+PHP+MySQL)
- CentOS 6.4安装配置LNMP服务器(Nginx+PHP+MySQL)
- CentOS 6.4安装配置LAMP服务器