设为首页 收藏本站
查看: 759|回复: 0

[经验分享] centos6.6_X64安装oracle10G

[复制链接]

尚未签到

发表于 2018-4-25 10:07:06 | 显示全部楼层 |阅读模式
  本次实验使用的centos6.6系统,数据库为oracle 10g。

  Centos版本:CentOS-6.6_X64-bin-DVD1.iso
  OracleDatabase版本:10201_database_linux_x86_64.cpio.gz
  安装oracle数据库,linux必须安装destoop。否则无法安装oracle数据库。
1.安装oracle所需要的安装包
  yum -y install binutilscompat-libstdc++-33 compat-libstdc++-33.i686 elfutils-libelfelfutils-libelf-devel gcc gcc-c++ glibc glibc.i686 glibc-common glibc-develglibc-devel.i686 glibc-headers ksh libaio libaio.i686 libaio-devellibaio-devel.i686 libgcc libgcc.i686 libstdc++ libstdc++.i686 libstdc++-develmake sysstat

  最后还需要安装libXp这个Library,这个一定要安装,否则安装Oracle时会出现java Exception。
  yum install libXp libXt.i686 libXtst.i686
  有的包是64的有的包是32的,都需要装
2.修改linux系统所需的配置文件
  Oracle数据库的安装不建议在超级用户root上安装,建议另外增加一个用户oracle在linux系统上。但是在增加该用户之前,我们还需要为该用户设置一些系统内核参数。
  使用Vi编辑器在/etc/sysctl.conf文件的末尾增加下面的参数:
  -----------------------------------------------------------
  kernel.shmall= 2097152                            #表示系统一次可以使用的共享内存总量(以页为单位)。
  kernel.shmmax= 2147483648                    #定义了共享内存段的最大尺寸(以字节为单位)。缺省为32M,对于oracle来说,该缺省值太低了,通常将其设置为2G。
  kernel.shmmni= 4096                                #用于设置系统范围内共享内存段的最大数量。该参数的默认值是 4096
  kernel.sem= 250 32000 100 128                  #表示设置的信号量
  net.ipv4.ip_local_port_range= 1024 65000   #本地端口数量上限

  net.core.rmem_default=4194304                 #默认的接收窗口大小
  net.core.rmem_max=4194304                      #接收窗口的最大大小
  net.core.wmem_default=262144                  #默认的发送窗口大小
  net.core.wmem_max=262144                       #发送窗口的最大大小
  ----------------------------------------------------------
[root@CentOS6~]# /sbin/sysctl -p            #执行生效

  

  编辑/etc/security/limits.conf文件,用于设置系统资源限制。假如未来由oracle这个用户来安装oracle数据库,则需要系统管理员将以下参数添加到limits.conf。
  # vi/etc/security/limits.conf
  加入以下四行:
  oracle soft nproc 2047
  oracle hard nproc 16384
  oracle soft nofile 1024
  oracle hard nofile 65536
  

  然后在编辑/etc/pam.d/login文件,增加以下参数:
  # vi/etc/pam.d/login
  session required /lib/security/pam_limits.so
  session required pam_limits.so
  注:
  etc目录下包括pam.d目录,在pam.d目录下还有个login子目录。etc指的系统配置文件目录,pam.d指的是验证登陆配置,login是登陆配置文件。简单说就是linux操作系统的登陆配置文件。
3.创建相应的用户名及用户组
  在这里只讨论单主机环境,不考虑RAC环境的配置。执行以下指令以新增oracle安装时所需要的使用者与群组。
  3.1建立群组oinstall
  # groupadd oinstall
  3.2建立群组dba
  # groupadd dba
  3.3建立用户oracle将加入oinstall和dba群组,并测试
  # useradd -g oinstall -G dba oracle
  3.4 建立oracle的新密码
  # passwd 123456
  
4.修改/etc/profile,修改用户的shell limits
  将以下代码新增到profile文件中:
  if [ $USER = "oracle" ]; then
  if [ $SHELL= "/bin/ksh" ]; then
  ulimit -p16384
  ulimit -n65536
  else
  ulimit -u16384 -n 65536
  fi
  fi
5.修改Linux发行版本信息
  由于Oracle10g发行的时候,CentOS6.6没有发行,所以Oracle10g并没有对CentOS6.6确认支持,需要修改相关文件让Oracle10g支持CentOS 6。
  我们需要手工修改Linux的发行注记,让Oracle 10g支持CentOS6.5。
  编辑/etc/redhat-release文件
  # vim /etc/redhat-release
  将其中的内容CentOS release 6.5 (Final)修改为redhat 4
  

6.创建oracle的安装文件夹及数据存放目录
  mkdir –p /u01/app/oracle
  6.1修改/u01/app/oracle目录所属用户及组,修改为oracle和oinstall组。
  查看目前oracle目录的用户及组:ls –la |grep oracle
  修改oracle目录用户及组:
  chown -R oracle:oinstall /u01/app/oracle
  6.2 修改/u01/app/oracle的目录权限,使oinstall组对/u01/app/oracle目录也有可读写执行权限。
  使用如下命令:
  chmod -R 775 /u01/app/oracle
7.配置oracle用户的环境变量
  打开cd /home/oracle,使用Vi编辑.bash_profile。如下图:
  修改并加入以下內容:
  export TMP=/tmp;
  export TMPDIR=$TMP;
  export ORACLE_BASE=/u01/app/oracle;
  export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1;
  export ORACLE_SID=orcl;
  export ORACLE_TERM=xterm;
  export PATH=/usr/sbin:$PATH;
  export PATH=$ORACLE_HOME/bin:$PATH;
  export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib;
  export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib;
  保存后使用如下命令,使设置生效:
  source /home/oracle/.bash_profile
8.安装Oracle,并进行相关设置
  8.1解压缩安装文件
  将下载的压缩包放至即将安装oracle的文件夹/uo1/app/oracle下:
          
  解压该文件,使用如下命令:
  #gunzip 10201_database_linux_x86_64.cpio.gz
  #cpio -idmv < 10201_database_linux_x86_64.cpio
  解压缩完成会在同一个文件夹中看到database的文件夹
  目前database文件夹的所有者和用户组均是root。现在我们要该更它:
  #chown -R oracle:oinstall/u01/app/oracle/database
  8.2安装oracle数据库
  上述解压oracle安装包后,我们要注销掉root用户,使用Oracle用户登录,然后使用该用户进行oracle的安装。
  在终端下,进入/u01/app/oracle/database目录:
  准备执行数据库安装,如果你的centos是中文环境,安装时会出现中文乱码,请下以下指令。使系统临时为英文状态:
  export LC_ALL=en_US.UTF-8
  然后接着执行如下命令,进行安装:
  ./runInstaller
  

DSC0000.png

  弹出这个界面,下面我们的安装就顺利了。
  如果我们没其他的要求的话,我们完全可以按照软件的提示一步一步的进行安装。
  但是,如果你使用突然间有一天你会发现。在你把原来其他服务器上的数据库(含中文字符)导入到这个oracle数据库中显示乱码时,你就会哭了。
  因为按照这个提示进行安装的oracle数据库字符集是英文字符集而不是中文字符集。
  也行有些人会说,那我可以在安装好oracle数据库再修改中文字符集的啊。呵呵,我会笑的。因为到最后你会发现即使你通过SQL语句修改了数据库的字符集,然后数据库中的中文字符还是乱码!
  但是你还会发现如果是在windows系统下,使用SQL语句修改字符集是可以的哦!
  那么在Linux系统里面,我们只需要选择高级安装即可,如下图:
  

DSC0001.png

DSC0002.png

  注意:修改存放目录。
  上图是指定证书存放的目录。
DSC0003.png

  上图选择安装的数据库类型及oracle所支持的语言,这里选择企业版,语言选择英文和简体中文。
DSC0004.png

  上图指定oracle环境变量,及安装路径。因为我们在.bash_profile中已经声明,所以这里会自动填充。
DSC0005.png

  Oracle开始进行安装前的检查工作。
  检查发现1个warning和一个requirement,查看日志发现
  ----warning
  Expectedresult: 2214MB
  ActualResult: 0MB
  Checkcomplete. The overall result of this check is: Failed <<<<
  Problem:The system does not have the required swap space.
  Recommendation:Make more swap space available to perform the install.
  

  根据当前磁盘大小,发现根目录(24G)下磁盘空间比较充足,
  #在根目录下创建交换分区文件夹,用来开辟交换区
[root@CentOS6oracle]# cd /

[root@CentOS6/]#  mkdir swapimage

[root@CentOS6/]# cd /swapimage

  #使用dd命令,在/swapimage文件下新增一个2G的文件
[root@CentOS6swapimage]# dd if=/dev/zero of=/swapimage/swap bs=1024 count=2500000

  2500000+0records in
  2500000+0records out
  2560000000bytes (2.6 GB) copied, 77.0965 s, 33.2 MB/s
  #查看磁盘空间,可以发现根目录下少了2.6G
[root@CentOS6swapimage]# df -hl

  Filesystem      Size Used Avail Use% Mounted on
  /dev/sda3        30G 7.0G   22G  25% /
  tmpfs           740M   80K 740M   1% /dev/shm
  /dev/sda1       194M  25M  160M  14% /boot
  /dev/sda2        20G 1.5G   17G   8% /u01
  #使用mkswap将/swapimage/swap文件格式化为虚拟内存文件格式
[root@CentOS6swapimage]# mkswap /swapimage/swap

  mkswap:/swapimage/swap: warning: don't erase bootbits sectors
  on whole disk. Use -f to force.
  Setting upswapspace version 1, size = 2499996 KiB
  no label, UUID=ec52720f-bc50-4e56-9dbf-05cbcd56c583
  #vi /etc/fstab --添加下面一行,系统启动后自动加载
  添加:
  /swapimage/swap         swap                    swap    defaults        0 0
[root@CentOS6swapimage]# free -m

  total       used       free    shared    buffers     cached
  Mem:          1478       1443         34          0         13        820
  -/+buffers/cache:        609        868
  Swap:            0          0          0
  #开启swap添加
[root@CentOS6swapimage]# swapon  /swapimage/swap

[root@CentOS6swapimage]# free -m

  total       used       free    shared    buffers     cached
  Mem:          1478       1445         32          0         13        820
  -/+buffers/cache:        611        866
  Swap:         2441          0       2441
  

  ----requirement
  CheckingNetwork Configuration requirements ...
  Checkcomplete. The overall result of this check is: Not executed <<<<
  Recommendation:Oracle supports installations on systems with DHCP-assigned public IP addresses.  However, the primary network interface on thesystem should be configured with a static IP address in order for the OracleSoftware to function properly.  See theInstallation Guide
  解决方法:
[root@CentOS6swapimage]# cat /etc/sysconfig/network-scripts/ifcfg-eth0

  DEVICE=eth0
  ONBOOT=yes
  BOOTPROTO=dhcp
  #IPADDR=192.168.18.8
  #NETMASK=255.255.255.0
  #GATEWAY=192.168.18.1
  修改 /etc/sysconfig/network-scripts/ifcfg-eth0
[root@CentOS6swapimage]# vi /etc/sysconfig/network-scripts/ifcfg-eth0

  DEVICE=eth0
  ONBOOT=yes
  BOOTPROTO=static
  IPADDR=192.168.150.128
  NETMASK=255.255.255.0
  GATEWAY=192.168.150.1
  ~
  "/etc/sysconfig/network-scripts/ifcfg-eth0"7L, 108C written
  使网卡设置马上生效:
[root@CentOS6swapimage]# /etc/init.d/network restart

  Shuttingdown interface eth0:  Device state: 3(disconnected)
[  OK  ]

  Shuttingdown loopback interface:                          [  OK  ]
  Bringing uploopback interface:                           [  OK  ]
  Bringing upinterface eth0:  Active connection state:activated
  Activeconnection path: /org/freedesktop/NetworkManager/ActiveConnection/2
[  OK  ]

[root@CentOS6~]# vi /etc/hosts

  #127.0.0.1   localhost CentOS6.5-32 localhost4localhost4.localdomain4   注意:这个要注释掉
  192.168.150.128CentOS6.5-32
  OK配置完成后点“Retry”!
DSC0006.png

DSC0007.png

  选择配置选项,在这有三个选择项:创建数据库、配置自动存储管理、只安装数据软件。
  我们在此选择第一项,创建数据库。创建数据库后,我们就不必再执行"dbca"进行数据库的创建。
DSC0008.png

  选择创建的数据库模式,我们在此选择第一项一般用途。因为 "Advanced" 后面有很多SGA,文件系统都可以自行设置。
DSC0009.png

  指定oracle数据库默认的SID。指定字符集为库所用的字符集,中文为simplified Chinesezhs16gbk。如果字符集不对,可能造成以后数据乱码。最下面不用打钩Create databasewithsample schemas(已有的模式建库)。
DSC00010.png

  配置选择数据库管理选项
  
DSC00011.png
  配置数据库的数据文件存储的位置
DSC00012.png

  配置数据库备份恢复的相关选项
DSC00013.png

  配置数据库相关用户密码
DSC00014.png

  显示安装概要,再次确认相关配置是否正确。
DSC00015.png

  
DSC00016.png

  开始安装数据库
DSC00017.png

DSC00018.png

开启一个新的终端,su到root。将要求执行的两段script依序执行。

/u01/app/oracle/oraInventory/orainstRoot.sh

/u01/app/oracle/product/10.2.0/db_1/root.sh

DSC00019.png

DSC00020.png

到此oracle数据库安装完毕。


查看数据库的状态:

SQL> select instance_name,status fromv$instance;


INSTANCE_NAME   STATUS

---------------- ------------

orcl            OPEN

  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-451726-1-1.html 上篇帖子: centos 7安装vncserver 下篇帖子: CentOS 7.4 中时间服务器同步
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表