Oracle安装问题汇总

    xiaoxiao2021-12-14  21

    前言

    为了方便能够使用数据库做练习,现将安装过程中遇到的各种问题统一汇总,中间参考了不少的博客,在此谢谢各路大神了.

    注:新手教程,高玩绕路

    蓝色字体为本人遇到的问题

    红色为重点注意事项

    系统

    我这里使用了VMware Workstation 12 Player.并且安装了CentOS 64位系统.

    系统使用的是linuxamd64_12102_database

    ----------------------以下是转载内容加遇到问题的汇总,对原文做了一些修改-------------------

    系统配置及oracle账号创建过程

    1.Linux安装Oracle系统要求

    内存:3G以上  硬盘:40G以上 2.修改操作系统核心参数  

    在Root用户下执行以下步骤:

    Root账号在安装系统时会提示创建,在进入系统以后,右键打开一个终端,输入"root"回车,再输入密码.

    1)修改用户的SHELL的限制,修改/etc/security/limits.conf文件

    输入命令:vi  /etc/security/limits.conf,按i键进入编辑模式,将下列内容加入该文件。

    oracle   soft    nproc    2047 oracle   hard   nproc    16384 oracle   soft    nofile    1024 oracle   hard   nofile    65536

    编辑完成后按Esc键,输入“:wq”存盘退出

    2)修改/etc/pam.d/login 文件,输入命令:vi  /etc/pam.d/logini键进入编辑模式,将下列内容加入该文件。

    session   required    /lib/security/pam_limits.so  session   required    pam_limits.so

    编辑完成后按Esc键,输入“:wq”存盘退出

    3)修改linux内核,修改/etc/sysctl.conf文件,输入命令: vi  /etc/sysctl.conf ,i键进入编辑模式,将下列内容加入该文件

    fs.file-max = 6815744  fs.aio-max-nr = 1048576  kernel.shmall = 2097152  kernel.shmmax = 2147483648  kernel.shmmni = 4096  kernel.sem = 250 32000 100 128  net.ipv4.ip_local_port_range = 9000 65500  net.core.rmem_default = 4194304  net.core.rmem_max = 4194304  net.core.wmem_default = 262144  net.core.wmem_max = 1048576

    编辑完成后按Esc键,输入“:wq”存盘退出

    4)要使 /etc/sysctl.conf 更改立即生效,执行以下命令。 输入:sysctl  -p 显示如下:

    linux:~ # sysctl -p

    net.ipv4.icmp_echo_ignore_broadcasts = 1

    net.ipv4.conf.all.rp_filter = 1

    fs.file-max = 6815744

    fs.aio-max-nr = 1048576

    kernel.shmall = 2097152

    kernel.shmmax = 2147483648

    kernel.shmmni = 4096

    kernel.sem = 250 32000 100 128

    net.ipv4.ip_local_port_range = 9000 65500

    net.core.rmem_default = 4194304

    net.core.rmem_max = 4194304

    net.core.wmem_default = 262144

    net.core.wmem_max = 1048576

    5)编辑 /etc/profile ,输入命令:vi  /etc/profilei键进入编辑模式,将下列内容加入该文件。

    if [ $USER = "oracle" ]; then  if [ $SHELL = "/bin/ksh" ]; then    ulimit -p 16384    ulimit -n 65536  else    ulimit -u 16384 -n 65536  fi

    fi

    编辑完成后按Esc键,输入“:wq”存盘退出

     

    6)创建相关用户和组,作为软件安装和支持组的拥有者。

    创建用户,输入命令:

    groupadd  oinstall  groupadd  dba

    创建Oracle用户和密码,输入命令:

    useradd -g oinstall -g dba -m oracle

    passwd  oracle

    然后会让你输入密码,密码任意输入2次,但必须保持一致,回车确认

     

    7)创建数据库软件目录和数据文件存放目录,目录的位置,根据自己的情况来定,注意磁盘空间即可,这里我把其放到oracle用户下,例如:

    输入命令:

    mkdir /home/oracle/app

    mkdir /home/oracle/app/oracle

    mkdir /home/oracle/app/oradata

    mkdir /home/oracle/app/oracle/product

     

    8)更改目录属主为Oracle用户所有,输入命令:

    chown -R oracle:oinstall /home/oracle/app

     

    9)配置oracle用户的环境变量,首先,切换到新创建的oracle用户下,

    输入:su – oracle  ,然后直接在输入 : vi  .bash_profile

    i编辑 .bash_profile,进入编辑模式,增加以下内容:

    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

    编辑完成后按Esc键,输入“:wq”存盘退出

    oracle数据库安装过程

    1) 当上述系统要求操作全部完成后,注销系统,在图形界面以Oracle用户登陆。首先将下载的Oracle安装包复制到linux中,推荐用Xmanager 或其他ftp工具拷贝。

    虚拟机直接可以将文件拖入Linux系统中,如果无法拖动可能是由于切换用户导致的,关闭虚拟机重开即可.

    拖进去的文件是在桌面上的,可以右键直接解压.先解压第一个文件***_1of2.zip,再解压第二个***2of2.zip

    完了之后将第二个解压出的所有内容复制到1文件夹中.

    右键打开一个终端,运行unzip命令解压oracle安装文件,如:

    输入命令:

    unzip  linux.x64_11gR2_database_1of2.zip 

    unzip  linux.x64_11gR2_database_2of2.zip

    解压完成后,在右键终端中使用命令 cd ***   进入其解压后的目录database

    输入命令:

    cd  database

    使用ls命令可以查看解压后database所包含的文件,如下图:

    2) 执行安装,输入命令:./runInstaller

    如果乱码

    1右键一个终端进入root.修改环境属性  vi  /etc/sysconfig/i18n 按 i 进入编辑模式 LANG="en_US.UTF-8"

    ESC后,wq退出.

    2在每次调用图形界面以前,我们使用export临时设置LANG(ORACLE 用户) export LANG=en_US.UTF-8

    3在每次调用图形界面以前,我们使用export临时设置 LC_CTYPE export LC_CTYPE=en_US.iso88591

    I wish 不需要勾选,会提示警告,不用理会,继续往后.

    1.下面这张图要重点注意.由于原文没有这个步骤,这张图是从别处复制的,注意前三行路径不要写错,一般默认就是/home/***

    2.character set是字符集,我选的是UTF-8**什么的

    3.倒数第三行是数据库名字,后面使用oracle developer的时候链接的sid就是这个名字,系统默认一般是orcl:**,这里建议改成orcl.密码建议都统一使用简单的.

     

     

     

    在root下使用yum命令安装,需要联网才行,命令如下:

    少什么包就安装什么包.安装完了上面有check again ,再检查一下

    yum install -y binutils* yum install -y compat-libstdc* yum install -y elfutils-libelf* yum install -y gcc* yum install -y glibc* yum install -y ksh* yum install -y libaio* yum install -y libgcc* yum install -y libstdc* yum install -y make* yum install -y sysstat* yum install libXp* -y yum install -y glibc-kernheaders 

    如果发现提示类似什么空间不足的,参考这位大神的博客

    http://blog.csdn.net/hailang08/article/details/11570305

    装到这一步,可以看到,可以查看到有很多的rpm包没有,我们可以从安装linux的光盘或ISO中查找所缺的包,使用ftp上传到linux中,然后使用rpm  –ivh  xxx.rpm  --nodeps --force 来进行安装(其中加上--nodeps -- force 代表强制安装,是在直接使用rpm –ivh  xxx.rpm安装不成功的情况下用的)安装过程略。

    等到把包全部都安装好的情况下,再次在oracle图形界面中,执行安装过程2,下来在环境检查过程中,就通过了。

    这个文件建议保存下来.

    上面的提示的步骤1234很清楚,执行一下命令就好了.注意是root权限下执行.

    安装完成后,系统会提示你需要用root权限执行2个shell脚本。按照其提示的路径,找到其所在的位置,如:我的就在/home/oracle/app/oracle/product/11.2.0/dbhome_1/root.sh

    和 /home/oracle/app/oraInventory/orainstRoot.sh  新开启一个终端,输入命令:

    su – root

    cd  /home/oracle/app/oracle/product/11.2.0/dbhome_1

    sh  root.sh

    cd /home/oracle/app/oraInventory

    sh  orainstRoot.sh

    这张图建议截图保存,password那里可以添加账户,平时做练习一般用系统管理员账号就可以了.

    关于手动开启数据库和监听的问题

    1.右键一个终端,oracle账户下直接输入  lsnrctl start         lsnrctl status可以看到状态  lsnrctl stop关闭

    2.命令sqlplus sys as sysdba 连接到oracle的sqlplus下,直接 startup 就可以开启数据库服务

    关于开机自动启动数据库和监听的问题

    http://blog.chinaunix.net/uid-26782198-id-3253005.html

    1.安装好Oracle数据库后: 执行 dbstart和dbshut会提示:

    [oracle@oracle11g ~]$ dbstart

    ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener Usage: /u01/app/oracle/oracle/product/10.2.0/db_1/bin/dbstart ORACLE_HOME

    错误原因是:dbstart和dbshut脚本文件中ORACLE_HOME_LISTNER的设置有问题,分别打开两个文件找到:ORACLE_HOME_LISTNER=$1,修改为

    ORACLE_HOME_LISTNER=$ORACLE_HOME,命令如下:

    [oracle@oracle11g ~]$ vi $ORACLE_HOME/bin/dbstart

    [oracle@oracle11g ~]$ vi $ORACLE_HOME/bin/dbshut 

    修改后保存退出,第一个问题已解决; 

    2.如何在Linux启动时自动启动Oracle监听和实例

    首先要解决上面的问题,才能继续哟! 

    第一步:修改/etc/oratab文件,命令如下:

    [oracle@oracle11g ~]$ vi /etc/oratab

    找到:accp:/u01/oracle:N   修改为: accp:/u01/oracle:Y

    第二步:把lsnrctl start和dbstart添加到rc.local文件中,命令如下:

    [oracle@oracle11g ~]$ vi /etc/rc.d/rc.local

    添加

    su oracle -lc "/u01/oracle/bin/lsnrctl start"

    su oracle -lc  /u01/oracle/bin/dbstart

    注意:第一个命令有空格,所以要用引号的 

    重启试试吧!

    关于使用oracle developer登陆的问题 sys是最高权限的账户,建立数据库的时候会提示, 角色一定要改成sysdba,否则无法登陆 主机名是Linux系统的ip地址. 如果登陆时候无法连接,可能是防火墙问题导致. http://blog.csdn.net/maotianwang/article/details/8477759

    查看防火墙状态: /etc/init.d/iptables status

    暂时关闭防火墙: /etc/init.d/iptables stop

    禁止防火墙在系统启动时启动 /sbin/chkconfig --level 2345 iptables off

    重启iptables: /etc/init.d/iptables restart

    题外话: BT或者骡子速度慢用不着关防火墙,只要把相应端口开放就可以了 在文件 /etc/sysconfig/iptables 在系统原始配置的:RH-Firewall-1-INPUT规则链增加类似这样的行: -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 39764 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 39764 -j ACCEPT 如果发现原有-j REJECT一类的语句,上面两句要放在它的前面

     

    重启后生效  开启: chkconfig iptables on  关闭: chkconfig iptables off   或者 /sbin/chkconfig --level 2345 iptables off 2) 即时生效,重启后失效

    service 方式 开启: service iptables start  关闭: service iptables stop

    iptables方式

    查看防火墙状态: /etc/init.d/iptables status

    暂时关闭防火墙: /etc/init.d/iptables stop

    重启iptables: /etc/init.d/iptables restart

    数据库创建,以下内容在oracle安装的时候已经建立.可以忽略

    1) 还是在oracle用户的图形界面oracle用户中,新开启一个终端,直接输入命令dbca会弹出如下界面。我们这里采用定制数据库。

    输入统一密码(也可以分别设置其密码)

    数据库存放位置,我这里采用默认

    不指定快速恢复和归档

    去掉不常用的模块

    内存分配及指定字符集

    经过漫长的等待,当看到此界面,说明oracle建库完成

    可以用sqlplus来检验下,新开启一个命令窗口,输入sqlplus,然后输入用户名和密码,可以测试下,这里就不做过多的介绍了。

    配置监听及本地网络服务

    1) 在oracle用户的图形界面oracle用户中,新开启一个终端,输入命令netca 会弹出如下界面。

    2)创建监听服务(充当oracle服务器,让别的oracle客户端连接本oracle服务器)

    3)配置本地网络服务名(充当oracle客户端,连接别的oracle服务器)

    输入连接的oracle服务器的数据库的实例名

    输入oracle服务器的ip地址

    选中测试

                 

    点击change Login 输入所连接oracle服务器的其中某一个用户名和密码,点击OK

    看到此界面说明测试成功(如果不成功,请查看网络是否畅通,所连接的oracle服务器是否启动,监听是否启动等原因)

             

    为你所设置的本地网络服务名起个名字

     然后下一步,下一步即可

    这样oracle服务器安装配置基本就完成了。

    (转发请注明出处:http://www.cnblogs.com/zhangyongli2011/    如发现有错,请留言 谢谢)

    转载请注明原文地址: https://ju.6miu.com/read-971612.html

    最新回复(0)