SUSE Linux11安装ORACLE11数据库

2020年6月15日18:35:24 发表评论
摘要

SUSE Linux11安装ORACLE11数据库,说实话网上的教程是一搜一大把,但真正能够按照教程完整走完的少之又少。为此写下此教程,一是方便后期自己查阅,二来也与各位交流共同学习,如有不完善的地方请多提出。

前言

SUSE Linux11安装ORACLE11数据库,说实话网上的教程是一搜一大把,但真正能够按照教程完整走完的少之又少。为此写下此教程,一是方便后期自己查阅,二来也与各位交流共同学习,如有不完善的地方请多提出。
安装完SUSE LINUX11操作系统后,进行如下操作

检查依赖

检查依赖包:
rpm -qa | grep binutils
binutils-2.20.0-0.7.9
rpm -qa | grep gcc
gcc-4.3-62.198
gcc43-c++-4.3.4_20091019-0.7.35
rpm -qa | grep glibc
glibc-2.11.1-0.17.4
rpm -qa | grep libaio
libaio-0.3.109-0.1.46
libaio-devel-0.3.109-0.1.46
rpm -qa | grep libgcc
libgcc43-4.3.4_20091019-0.7.35
rpm -qa | grep libstdc
libstdc++-devel-4.3-62.198
libstdc++43-4.3.4_20091019-0.7.35
libstdc++43-32bit-4.3.4_20091019-0.7.35
libstdc++43-devel-4.3.4_20091019-0.7.35
libstdc++43-devel-32bit-4.3.4_20091019-0.7.35
rpm -qa | grep make
make-3.81-128.20
rpm -qa | grep sysstat
sysstat-8.1.5-7.9.56
没有的包都要安装,可以使用root用户登录图形界面,使用“安装/删除程序”应用,在搜索框中输入对应的包(如gcc)点右边的搜索,没有打勾的要勾选上并同时放入系统安装光盘,或使用iLo控制台远程挂载虚拟光驱,可直接使用安装ISO进行。别忘了点确定,所有点确定之前的修改都仅是预配置,没有写入实时系统。

创建用户组

  1. groupadd oinstall  
  2. groupadd dba  

创建用户

  1. mkdir /home/oracle  
  2. useradd -g oinstall -G dba -d /home/oracle oracle  
  3. passwd oracle  
  4. chown -R oracle:oinstall /home/oracle/  
  5. cd /opt/  
  6. pwd  

创建数据库安装目录

  1. mkdir -p oracle  
  2. chown -R oracle:oinstall /opt/oracle  

验证主机名及IP地址(没有设置节点名的要设置好,否则到后面会报错)

  1. cat /etc/nsswitch.conf | grep hosts  
  2. hostname  
  3. cat /etc/hosts  

配置内核参数

  1. vi /etc/sysctl.conf  
  2. kernel.shmall = 2097152  
  3. kernel.shmmax = 2147483648  
  4. kernel.shmmni = 4096  
  5. kernel.sem = 250 32000 100 128  
  6. net.core.rmem_default = 262144  
  7. net.core.rmem_max = 4194304  
  8. net.core.wmem_default = 262144  
  9. fs.file-max = 6815744  
  10. net.ipv4.ip_local_port_range = 9000 65500  
  11. net.core.wmem_max = 1048576  
  12. fs.aio-max-nr = 1048576  
  1. 修改后执行下列命令使配置生效  
  2. sysctl -p  

配置软硬件环境

  1. vi /etc/security/limits.conf  
  2. 加入以下内容  
  3. oracle  soft nproc  2047  
  4. oracle  hard nproc  16384  
  5. oracle  soft nofile  1024  
  6. oracle  hard nofile  65536  
  7. oracle  soft stack   10240  

配置profile文件

  1. vi /etc/profile  
  2. 加入以下内容  
  3. if [ $USER = "oracle" ]; then  
  4.         if [ $SHELL = "/bin/ksh" ]; then  
  5.               ulimit -p 16384  
  6.               ulimit -n 65536  
  7.         else  
  8.               ulimit -u 16384 -n 65536  
  9.         fi  
  10. fi  
  11.   
  12. 修改后执行下列命令使配置生效  
  13. source  /etc/profile  

切换oracle用户(不要使用su oracle这样的命令格式,会出错,后面会讲到)

  1. su - oracle  
  2. pwd  

设置环境变量(重要,此处创建的变量文件与你前面创建的用户目录及后面图形界面安装时候选择的目录一定要保持一致)

  1. vi /home/oracle/.bash_profile  
  2. 加入以下内容  
  3. umask 022  
  4. export ORACLE_BASE=/home/oracle/app  
  5. export ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/dbhome_1  
  6. export ORACLE_SID=orcl  
  7. export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin  
  8. export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib  

解压数据库安装包

  1. 切换到root用户  
  2. su - root  
  3. root用户登录图形界面,把压缩包拷贝到root目录下并解压,得到linux_ora11g文件夹,有些版本解开后是database,为了便于统一,我们将linux_ora11g文件夹重命名为database,  
  4. 然后执行下列命令把database移至/opt/oracle/目录  
  5. mv -f database/ /opt/oracle/  
  6. cd  /opt/oracle/  
  7. chown -R oracle:oinstall database/  

准备工作完成,接下来安装

  1.  ./runInstaller  
  2. 提示显示器颜色不对  
  3. su  
  4. xdpyinfo  
  5. 记录下name of display后的字符串  
  6. xhost +  
  7. 切换到Oracle用户  
  8. su - oracle  
  9. 执行  
  10. export DISPLAY=:0.0  
  11. 执行安装  
  12.  ./runInstaller  

可以看到显示器已经通过,跳出图形安装界面

问题和解决

  • 问题:无法使用命令/user/bin/xdpyinfo自动检查显示器的颜色。请检查是否设置了DISPLAY
  • 问题:PRVF-0002 : 无法检索本地节点名
  • 使用dbca建库出现ORA-27102错误、ora-04031 unable to allocate、ORA-01034: ORACLE not available ORA-27101: shared memory realm does not exist Linux-x86_64 Error: 2: No such file or directory等错误
  • 使用SQLPLUS命令提示找不到此命令
  • 为什么使用su oracle格式命令不能成功执行

解决方法:

您需要先支付 1.99元 才能查看此处内容!立即支付

然后再使用dbca重建数据库即可。

问题:使用SQLPLUS命令提示找不到此命令

解决:

找不到sqlplus 也就是$PATH 环境变量下面没有把oracle_home\bin 目录加到环境变量里面。
直接执行echo $PATH 发现没有。
因为安装的时候记得在安装用户下面是设置过环境变量的。(如果是在系统的环境变量下面设置的就/etc/profile 里面查看下)
进入到安装oracle 的用户的主目录下面,我的在/home/oracle 查看.bash_profile 文件有没有定义这个目录到$PATH。
umask 022
export ORACLE_BASE=/home/oracle/app
export ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/dbhome_1
export ORACLE_SID=orcl
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
很明显有的。可是为什么echo $PTAH 却没有呢。
切换到用oracle 重新连接就可以了。

问题:为什么使用su oracle格式命令不能成功执行

解决:

为什么su oracle 却不行呢。 查询后发现su 用户 后并没有切换到该用户的目录下面,也就是说登录环境没有改变。
用su - 用户或者su -l 用户才能把登录环境也切换掉。执行之后成功找到sqlplus.

参考资料

您需要先支付 1.99元 才能查看此处内容!立即支付

SUSE Linux11安装ORACLE11数据库
weinxin
觉得对你有帮助?
欢迎打赏,建站不易,一分也是爱^_^ -----来自美金梦站长
avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: