最近开始学习CentOS使用,做些记录。

参考文献:Cent OS 6_5(x86_64)下安装Oracle 11g

一、硬件要求

1、内存&swap

Minimum:1 GB of RAM
Recommended: 2 GB of RAM or more

检查内存情况

[plain] view plaincopy

 

  1. #grep MemTotal /proc/meminfo
  2. #grep SwapTotal /proc/meminfo

2、硬盘

由于CentOS安装后差不多有4~5G,再加上Oracle等等的安装,所以请准备至少10G的硬盘空间。

检查磁盘情况

#df -h

二、软件

系统平台:CentOS6.5(x86_64)

(我这里安装的是DeskTop版。安装精简版的需要单独yum桌面程序)

Oracle版本:Oracle11g

p13390677_112040_Linux-x86-64_1of7.zip、p13390677_112040_Linux-x86-64_2of7.zip

三、系统安装注意

系统安装时一定要安装桌面模式,否则无法安装oracle,另外请勿开启SELinux,oracle官方不建议使用SELinux,防火墙也请暂时关闭,减少安装时的困扰。为防止Oracle安装过程中出现乱码,建议使用英文作为系统语言,进行Oracle的安装工作。

本文中所描述的系统命令,未经特殊标示,均为“#”代表root权限,“$”代表oracle权限。

四、安装Oracle前的系统准备工作

首先,请先以root账号登入作一些前置设定作业。

1.关闭、防火墙(SELinux临时关闭命令:setenforce 0 防火墙临时关闭命令:service iptables stop)

2.安装依赖包

以下RPM包拷贝到/opt目录下,进行opt目录,执行以下命令。

[plain] view plaincopy

 

  1. #rpm -ivh libstdc++-devel-4.4.7-4.el6.x86_64.rpm
  2. #rpm -ivh mpfr-2.4.1-6.el6.x86_64.rpm
  3. #rpm -ivh cpp-4.4.7-4.el6.x86_64.rpm
  4. #rpm -ivh ppl-0.10.2-11.el6.x86_64.rpm
  5. #rpm -ivh cloog-ppl-0.15.7-1.2.el6.x86_64.rpm
  6. #rpm -ivh gcc-4.4.7-4.el6.x86_64.rpm
  7. #rpm -ivh gcc-c++-4.4.7-4.el6.x86_64.rpm
  8. #rpm -ivh compat-libcap1-1.10-1.x86_64.rpm
  9. #rpm -ivhcompat-libstdc++-33-3.2.3-69.el6.x86_64.rpm
  10. #rpm -ivh libaio-devel-0.3.107-10.el6.x86_64.rpm
  11. #rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm
  12. #rpm -ivhelfutils-libelf-devel-0.152-1.el6.x86_64.rpm

3.创建用户和组

(1)建立群组oinstall、dba

[plain] view plaincopy

 

  1. #groupadd oinstall
  2. #groupadd dba

(2)新增使用者oracle并将其加入dba群组

[plain] view plaincopy

 

  1. #useradd -m -g oinstall -G dba oracle

(4)测试oracle账号是否建立完成

[plain] view plaincopy

 

  1. #id oracle

(5)建立oracle的新密码

[plain] view plaincopy

 

  1. #passwd oracle

4.将oracle使用者加入到sudo群组中

[plain] view plaincopy

 

  1. #vi /etc/sudoers

找到
root       ALL=(ALL)       ALL 
这行,并且在底下再加入

[plain] view plaincopy

 

  1. oracle       ALL=(ALL)       ALL

输入wq!(由于这是一份只读文档所以需要再加上!)并且按下Enter

5、配置系统内核参数

[plain] view plaincopy

 

  1. #vi /etc/sysctl.conf

修改和添加以下内容:

[plain] view plaincopy

 

  1. fs.aio-max-nr= 1048576
  2. fs.file-max= 6815744
  3. #kernel.shmall= 2097152
  4. #官方文档kernel.shmmax= 536870912,实际软件中需要kernel.shmmax= 980742144
  5. #kernel.shmmax = 980742144
  6. kernel.shmmni= 4096
  7. kernel.sem= 250 32000 100 128
  8. net.ipv4.ip_local_port_range= 9000 65500
  9. net.core.rmem_default= 262144
  10. net.core.rmem_max= 4194304
  11. net.core.wmem_default= 262144
  12. net.core.wmem_max= 1048586
  13. vm.hugetlb_shm_group= 501
  14. #oracle用户组dbaid 为501,以彻底解决ORA-27125错误。
  15. #id oracle

可以看到oracledbaid 501

会有一些与目前的参数重复的,就修改成文件上提供的。

编辑完之后,储存,然后执行:

[plain] view plaincopy

 

  1. #sysctl –p

启用刚刚所做的变更。

6、编辑/etc/security/limits.conf

[plain] view plaincopy

 

  1. #vi /etc/security/limits.conf

添加以下四行

[plain] view plaincopy

 

  1. oracle soft        nproc  2047
  2. oracle  hard       nproc   16384
  3. oracle  soft       nofile  1024
  4. oracle  hard       nofile  65536

7、编辑/etc/pam.d/login

[plain] view plaincopy

 

  1. #vi /etc/pam.d/login

添加以下两行

[plain] view plaincopy

 

  1. sessionrequired /lib64/security/pam_limits.so
  2. session requiredpam_limits.so

8、修改/etc/profile

[plain] view plaincopy

 

  1. #vi /etc/profile

将以下代码新增到profile档案中。

[plain] view plaincopy

 

  1. if [ $USER = "oracle" ]; then
  2. if [ $SHELL = "/bin/ksh"]; then
  3. ulimit -p 16384
  4. ulimit -n 65536
  5. else
  6. ulimit -u 16384 -n 65536
  7. fi
  8. fi

10、创建Oracle安装文件夹以及数据存放文件夹

[plain] view plaincopy

 

  1. #mkdir/opt/oracle
  2. #mkdir /opt/oracle/112
  3. #mkdir/opt/oraInventory
  4. #chown -R oracle:dba /opt/oracle
  5. #chown-R oracle:dba /opt/oraInventory
  6. #chown-R oracle:dba /opt

11、配置Linux主机

检查/etc/hosts文件中是否有localhost的记录(指向127.0.0.1即可),若没有的话,在后面配置Oracle监听的时候会出现一些问题,导致无法启动监听,在此手工添加此记录即可。

增加以下配置IP地址加主机名称 映射

[plain] view plaincopy

 

  1. 192.168.1.101CentOS-Oracle

(此处前面的192.168.1.101为安装机器的IP地址 CentOS-Oracle为安装机器的主机名称 请各位根据自己的情况填写)

第一阶段到此完毕,接下来,完成这些设定之后,请先注销root账号,并且以oracle账号再次登入系统。

12、配置oracle用户环境变量

[plain] view plaincopy

 

  1. #su oracle
  2. $cd /home/oracle
  3. $ vi .bash_profile

修改并加入以下內容

[plain] view plaincopy

 

  1. ORACLE_BASE=/opt/oracle                    #上面创建的Oracle安装文件夹
  2. ORACLE_HOME=$ORACLE_BASE/112
  3. ORACLE_SID=orcl
  4. LD_LIBRARY_PATH=$ORACLE_HOME/lib
  5. PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin
  6. exportORACLE_BASE ORACLE_HOME ORACLE_SID LD_LIBRARY_PATH PATH
  7. #PATH=$PATH:$HOME/bin
  8. #exportPATH

保存后使用如下命令,使设置生效:

[plain] view plaincopy

 

  1. $source /home/oracle/.bash_profile

五、安装Oracle,并进行相关设置

1、解压缩安装文件

将下载的p13390677_112040_Linux-x86-64_1of7.zip、p13390677_112040_Linux-x86-64_2of7.zip放至即将安装oracle的文件夹/opt/oracle

回到终端模式并且进入到oracle文件夹:

[plain] view plaincopy

 

  1. $cd /opt/oracle

解压缩

[plain] view plaincopy

 

  1. $unzip p13390677_112040_Linux-x86-64_1of7.zip
  2. $unzip p13390677_112040_Linux-x86-64_2of7.zip

接着会看到一连串的解压缩动作。

解压缩完成会在同一个文件夹中看到database的文件夹,请进入到database文件夹中:

[plain] view plaincopy

 

  1. $cd database

准备执行数据库安装,如果你的操作系统是中文环境,安装时会出现中文乱码,请使用以下指令

$export LANG=en_US.UTF-8

一定不能少了.UTF-8,否则会提示以下错误:

[plain] view plaincopy

 

  1. [oracle@databasedatabase]$ export LANG=en_US
  2. [oracle@databasedatabase]$ ./runInstaller
  3. ERROR:Unable to convert from "UTF-8" to "ISO-8859-1"for NLS!
  4. redhat-3,SuSE-9, redhat-4, UnitedLinux-1.0, asianux-1 or asianux-2
  5. /tmp/OraInstall2013-09-06_09-17-04AM.[oracle@database database]$

接着执行(这里建议切换为oracle登录桌面再执行)

$./runInstaller

(下面的问题基本是由于远程工具安装本地安装基本不会出现)

如果无法看到安装界面,请使用root帐户执行如下命令后再运行安装程序:

#export DISPLAY=:0.0

# xhost +

切换回ORACLE用户

$./runInstaller

开始执行安装程序。

最后出现InstallSummary画面,此时只要按下Install按钮,系统即开始安装。

选择“高级安装”,以指定字符集ZH16GBK。

2、安装过程(略)

3、安装完成登录EM控制台

地址:https://db:1158/em

使用SYS、SYSTEM登录验证安装成功。

六、参考

6.1、设置Oracle服务开机自启动

1.修改Oracle系统配置文件:/etc/oratab,只有这样,Oracle自带的dbstart和dbshut才能够发挥作用。

[plain] view plaincopy

 

  1. #vi /etc/oratab
  2. orcl:/opt/oracle/102:Y
  3. #Entries are of the form:
  4. #  $ORACLE_SID:$ORACLE_HOME:<N|Y>:

2.在/etc/init.d/下创建文件oracle,内容如下:

[plain] view plaincopy

 

  1. #vi /etc/init.d/oracle
[plain] view plaincopy

 

  1. #!/bin/bash
  2. # chkconfig: 35 80 10
  3. # description: Oracle auto start-stop script.
  4. #
  5. # Set ORA_HOME to be equivalent to the $ORACLE_HOME
  6. # from which you wish to execute dbstart and dbshut;
  7. #
  8. # Set ORA_OWNER to the user id of the owner of the
  9. # Oracle database in ORA_HOME.
  10. ORA_HOME=/opt/oracle/1<span style="font-family:宋体;">1</span>2
  11. ORA_OWNER=oracle
  12. if [ ! -f $ORA_HOME/bin/dbstart ]
  13. then
  14. echo "Oracle startup: cannot start"
  15. exit
  16. fi
  17. case "$1" in
  18. 'start')
  19. # Start the Listener:
  20. echo "Starting Oracle Listeners ... "
  21. echo "-------------------------------------------------" >> /var/log/oracle
  22. date +" %T %a %D : Starting Oracle Listeners as part of system up." >> /var/log/oracle
  23. echo "-------------------------------------------------" >> /var/log/oracle
  24. su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl start" >>/var/log/oracle
  25. echo "Done."
  26. echo "-------------------------------------------------" >> /var/log/oracle
  27. date +" %T %a %D : Finished." >> /var/log/oracle
  28. echo "-------------------------------------------------" >> /var/log/oracle
  29. touch /var/lock/subsys/oracle
  30. # Start the Oracle databases:
  31. echo "Starting Oracle Databases ... "
  32. echo "-------------------------------------------------" >> /var/log/oracle
  33. date +" %T %a %D : Starting Oracle Databases as part of system up." >> /var/log/oracle
  34. echo "-------------------------------------------------" >> /var/log/oracle
  35. su - $ORA_OWNER -c "$ORA_HOME/bin/dbstart" >>/var/log/oracle
  36. echo "Done"
  37. # Start the dbconsole:
  38. echo "Starting Oracle dbconsole  ... "
  39. echo "-------------------------------------------------" >> /var/log/oracle
  40. date +" %T %a %D : Starting Oracle dbconsole as part of system up." >> /var/log/oracle
  41. echo "-------------------------------------------------" >> /var/log/oracle
  42. su - $ORA_OWNER -c "$ORA_HOME/bin/emctl start dbconsole" >>/var/log/oracle
  43. echo "Done."
  44. echo "-------------------------------------------------" >> /var/log/oracle
  45. date +" %T %a %D : Finished." >> /var/log/oracle
  46. echo "-------------------------------------------------" >> /var/log/oracle
  47. touch /var/lock/subsys/oracle
  48. ;;
  49. 'stop')
  50. # Stop the Oracle dbconsole:
  51. echo "Stoping Oracle dbconsole ... "
  52. echo "-------------------------------------------------" >> /var/log/oracle
  53. date +" %T %a %D : Stoping Oracle dbconsole as part of system down." >> /var/log/oracle
  54. echo "-------------------------------------------------" >> /var/log/oracle
  55. su - $ORA_OWNER -c "$ORA_HOME/bin/emctl stop dbconsole" >>/var/log/oracle
  56. echo "Done."
  57. # Stop the Oracle Database:
  58. echo "Stoping Oracle Databases ... "
  59. echo "-------------------------------------------------" >> /var/log/oracle
  60. date +" %T %a %D : Stoping Oracle Databases as part of system down." >> /var/log/oracle
  61. echo "-------------------------------------------------" >> /var/log/oracle
  62. su - $ORA_OWNER -c "$ORA_HOME/bin/dbshut" >>/var/log/oracle
  63. echo "Done."
  64. echo ""
  65. echo "-------------------------------------------------" >> /var/log/oracle
  66. date +" %T %a %D : Finished." >> /var/log/oracle
  67. echo "-------------------------------------------------" >> /var/log/oracle
  68. # Stop the Oracle Listener:
  69. echo "Stoping Oracle Listeners ... "
  70. echo "-------------------------------------------------" >> /var/log/oracle
  71. date +" %T %a %D : Stoping Oracle Listener as part of system down." >> /var/log/oracle
  72. echo "-------------------------------------------------" >> /var/log/oracle
  73. su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl stop" >>/var/log/oracle
  74. echo "Done."
  75. rm -f /var/lock/subsys/oracle
  76. ;;
  77. 'restart')
  78. $0 stop
  79. $0 start
  80. ;;
  81. <style type="text/css">P { margin-bottom: 0.08in; direction: ltr; text-align: justify; }</style><style type="text/css">P { margin-bottom: 0.08in; direction: ltr; text-align: justify; }</style>esac

3.改变文件权限

[plain] view plaincopy

 

  1. #chmod 755 /etc/init.d/oracle

4.添加服务

[plain] view plaincopy

 

  1. #chkconfig --level 35 oracle on

5.需要在关机或重启机器之前停止数据库,做一下操作

[plain] view plaincopy

 

  1. #ln -s /etc/init.d/oracle /etc/rc0.d/K01oracle   //关机
  2. #ln -s /etc/init.d/oracle /etc/rc6.d/K01oracle   //重启

6.使用方法

[plain] view plaincopy

 

  1. #service oracle start       //启动oracle
  2. #service oracle stop       //关闭oracle
  3. #service oracle restart     //重启oracle

7.测试

[plain] view plaincopy

 

  1. a. 开机自启动
  2. b. service oracle stop
  3. c. service oracle start
  4. d. service oracle restart

至此,Oracle服务启动&停止脚本与开机自启动设置完毕。

CentOS 6.5下安装Oracle 11g(转)的更多相关文章

  1. (静默安装)Cent OS 6_5(x86_64)下安装Oracle 11g

    Cent OS 6_5(x86_64)下安装Oracle 11g 1 硬件要求   1.1 内存 & swap 物理内存不少于1G 硬盘可以空间不少于5G swap分区空间不少于2G Mini ...

  2. Windows10下安装Oracle 11g 64位的详细步骤

    直接附上我整理后的Word版<Windows10下安装Oracle 11g 64位的详细步骤>下载地址,提取码:9vak. 参考文献: 1.Win10 64位系统下安装Oracle11g详 ...

  3. Redhat Linux 下安装Oracle 11g R2

    能够下载:http://download.csdn.net/detail/ykh554541184/8086647文档方便查阅 官方文档:http://docs.oracle.com/cd/E1188 ...

  4. 在Windows10系统下安装Oracle 11g数据库

    在Windows10系统下安装Oracle 11g数据库 https://blog.csdn.net/wei1992_6/article/details/60054727

  5. Oracle Linux 6.3下安装Oracle 11g R2(11.2.0.3)

    本文主要描写叙述了在Oracle Linux 6.3下安装Oracle 11gR2(11.2.0.3).从Oracle 11g開始,Oracle官方站点不再提供其Patch的下载链接,须要使用Meat ...

  6. solaris下安装oracle 11g与11g rac

    1.To Find Swap, RAM, and OS Version 对于 Solaris 操作系统,查看 Swap, RAM, and OS Version 的方法: swap -l /usr/s ...

  7. 在windows系统下安装oracle 11g

     oracle 11g 安装在windows server 2012 系统下. 最近,需要配置数据库,要求在windows操作系统下,安装oracle 11g 数据库,因为以前没有安装过,所以成功后, ...

  8. 详解Windows Server 2008 R2下安装Oracle 11g

    本篇文章转载 http://www.it165.net/database/html/201212/3385.html 一.安装前的准备工作: 1. 修改计算机名: 服务器的计算机名称对于登录到Orac ...

  9. Centos7下安装ORACLE 11g,弹窗不显示

    Centos7下安装ORACLE 11gR2,弹窗不显示,安装界面显示为灰色. 解决方法:执行安装时带上一下参数 ./runInstaller -jreLoc /etc/alternatives/jr ...

随机推荐

  1. 20145104张家明 《Java程序设计》第一周学习总结

    20145104张家明 <Java程序设计>第1周学习总结 教材学习内容总结 在开学的第一周,通过了看书进行了系统的学习java,首先简单的了解java的发展历程,然后了解了JVM.JRE ...

  2. # 20145122 《Java程序设计》第3周学习总结

    教材学习内容总结 1一类一文件. 2一个原始码中只能有一个公开类,一个类定义产生一个.class文档. 3如果参考名称与数据成员同名时,将参数的值指定给对象的数据成员时要在数据成员前加this. 4当 ...

  3. 20135320赵瀚青LINUX期中总结

    期中总结 心得与体会 本学期的LINUX内核这门课程已经进行了一半,这门课的学习方法和上个学期深入理解计算机系统的方式差不多,所以也没有特别多不适应,LINUX内核在我看来,就是理解一个操作系统是如何 ...

  4. InstallShield 2015 Premier的Basic MSI Project如何在卸载时删除残留的文件 (转)

    转载:http://blog.csdn.net/zztoll/article/details/54018615#comments 先说下缘由,我在用InstallShield 2015 Premier ...

  5. Java多线程 线程状态及转换 wait sleep yield join

    线程的状态转化关系(1). 新建状态(New):新创建了一个线程对象.(2). 就绪状态(Runnable):线程对象创建后,其他线程调用了该对象的start()方法.该状态的线程位于可运行线程池中, ...

  6. tar: Cowardly refusing to create an empty archive 问题

    在解压 .tar.gz文件的时候遇到了这个解压的问题. 原命令:tar -zcvf ···.tar.gz 提示:tar: Cowardly refusing to create an empty ar ...

  7. Codeforces Round #278 (Div. 2) D. Strip 线段树优化dp

    D. Strip time limit per test 1 second memory limit per test 256 megabytes input standard input outpu ...

  8. Rails 5 Test Prescriptions(everday Rspectest作者推荐) 目录 1-3章

    总文档连接: RSpec.info/documentation/ 如何使用TDD 和 自动化测试来建立一个Rails app. TDD让你用测试来探索代码的设计.你将学习可利用的工具,并学习用什么工具 ...

  9. Springfox与swagger的整合使用(十七)

    一.前言 让我们先理一下springfox与swagger的关系. swagger是一个流行的API开发框架,这个框架以“开放API声明”(OpenAPI Specification,OAS)为基础, ...

  10. SublimeText实用快捷键

    Markdown Ctrl+Alt+O: Preview Markup in Browser Ctrl+Alt+X: Export Markup as HTML Ctrl+Alt+C: Copy Ma ...