zoukankan      html  css  js  c++  java
  • ubuntu 12.10 安装 Oracle enterprise 11g 步骤(成功安装)

    作者:周巍铠 2012-03-03晚编写整理:如果有问题,可以联系我,QQ:735820898,加Q请说明oracle

    软件安装成功后运行的效果图在本文末尾处。

    第一步:

    下载安装包,Oracle实际上都是可以免费从www.oracle.com网站的download页下载的;

    我从这里下载:

    http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html

    有各个操作系统的版本可供下载。


    第二步:

    解压安装包,我下载的是.zip文件,使用unzip或者ubuntu下的解压工具进行解压,解压后的目录名叫database,等会

    我们将在这个目录启动安装程序,在安装之前,我们还有一些重要的步骤要做。


    第三步:

    修改环境变量,将home/'用户名'/ 目录下的.bashrc文件打开, home/'用户名' 目录也叫 ~ 目录,'用户名'是你的登录名

    我的是/home/vkz

    那么我修改.bashrc文件内容如下:

    export ORACLE_BASE=~/Oracle/oracle11g
    export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
    export ORACLE_SID='orcl'
    export NLS_LANG=.AL32UTF8

    建立好的目录绝对路径为:/home/vkz/Oracle/oracle11g

    然后现在创建文件夹:

    在~目录中也就是/home/username/中创建Oracle/oracle11g,和上面的环境变量对应起来。

    mkdir Oracle

    cd Oracle

    mkdir oracle11g

    因为我是直接在本用户中安装,并未新建oracle用户,所以网上其他的安装步骤说的chmod神马的,我这不需要。

    把安装变的更简单。


    第四步:(这一步看似复杂,其实很简单,关键就是看耐心,多测试)

    更新软件和库文件,这一步很蛋疼,因为每一个人的机器不同,有些人可能已经安装了下面我说到的软件和库,有些

    朋友可能又没有,所以我们把要用到的库都写在下面,大家自己看着装吧 :)

    我先列出Oracle给出的清单:

    make-3.80(我的机器上就是3.81)所以不一定要完全一样,最坑爹的主要是有些版本高了可能不行。

    例如libstdc++,貌似需要5.0,很多机器上是6.0
    binutils-2.15.92.0.2
    gcc-3.4.6
    libaio-0.3.105
    libaio-0.3.105
    glibc-2.3.4-2.41
    compat-libstdc++-33-3.2.3
    elfutils-libelf-0.97
    elfutils-libelf-devel-0.97
    glibc-common-2.3.4
    glibc-devel-2.3.4
    glibc-headers-2.3.4
    gcc-c++-3.4.6
    libaio-devel-0.3.105
    libgcc-3.4.6
    libstdc++-3.4.6
    libstdc++-devel-3.4.6
    sysstat-5.0.5
    unixODBC-2.2.11
    unixODBC-devel-2.2.11
    pdksh-5.2.14
    expat-1.95.7

    还有如下清单:

    alien

    binutils

    build-essential

    cpp-4.4

    debhelper

    g++-4.4

    gawk

    gcc-4.4

    gcc-4.4-base

    gettext

    html2text

    ia32-libs

    intltool-debianksh

    lesstif2

    lib32bz2-dev

    lib32z1-dev

    libaio-dev

    libaio1

    libbeecrypt7

    libc6

    libc6-dev

    libc6-dev-i386

    libdb4.8

    libelf-dev

    libelf1

    libltdl-dev

    libltdl7

    libmotif4

    libodbcinstq4-1

    libodbcinstq4-1:i386

    libqt4-core

    libqt4-gui

    libsqlite3-0

    libstdc++5

    libstdc++6

    libstdc++6-4.4-dev

    lsb

    lsb-core

    lsb-cxx lsb-desktop

    lsb-graphics

    lsb-qt4

    make

    odbcinst

    pax

    po-debconf

    rpm

    rpm-common

    sysstat

    unixodbc

    unixodbc-dev

    unzip


    当然还有apt-get update和apt-get dist-upgrade一下最好...不过这样貌似也矛盾,我反正没这么搞。


    建议最好别apt-get install 所有名字,这样可能会导致一些库没安上,比如我的机器上,当我安装libdb4.8的时候,就提示:

    这个库已经过时,推荐db4.8-utils,所以最好一个个的安装,看看有些什么提示。当然我不敢打保票,不过我倒不是全部

    都去装了也一样可以成功安装oracle,所以.... 大家自己看着办吧,嘻嘻....


    第五步:

    这一步主要是欺骗安装程序的,如果后面出现make错误,这一步也是需要的,所以主要是建几个符号链接,到时候找目录

    的时候,骗骗安装程序。(windows中安装oracle就没有make这一步,其实很多人都是在这一环节上失败的,不要担心

    只要你够坚强和耐心,失败几次肯定会成功的,我就失败了4次,我是在linux下安装了4次oracle才成功的,用了我一个下

    午的时间,现在想想也不像一些朋友夸张的那样,什么安装失败了要重装系统,什么需要多牛B的技术...... 我艹安个软件能

    有多难啊??总能装上吧?如果一个软件装不上,那oracle这个公司不是太失败了?我晕... 说多了,回到正题。。。)


    mkdir /usr/lib64
    ln -s /etc /etc/rc.d
    ln -s /lib/x86_64-linux-gnu/libgcc_s.so.1 /lib64/
    ln -s /usr/bin/awk /bin/awk
    ln -s /usr/bin/basename /bin/basename
    ln -s /usr/bin/rpm /bin/rpm
    ln -s /usr/lib/x86_64-linux-gnu/libc_nonshared.a /usr/lib64/
    ln -s /usr/lib/x86_64-linux-gnu/libpthread_nonshared.a /usr/lib64/
    ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /lib64/
    ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /usr/lib64/


    后来我又在usr/lib目录中加了这个链接

    ln -s libstdc++.so.6 libstdc++.so.5

    然后是在/etc目录中新建redhat-release文件

    写入Red Hat Linux release 5

    然后保存退出


    第六步:(检查系统变量)

    sudo vim /etc/pam.d/login

    增加以下行(有了就不用增加了)
    session required pam_limits.so
    sudo vim /etc/pam.d/su

    session required pam_limits.so


    使用命令sysctl命令进行查看内核参数,并且将我们需要的参数记录下来,可以用文本文件单独记录一下后面需要使用。

    在终端的命令输入处,输入:(如果环境变量path有/sbin,那么直接输入sysctl,否则使用/sbin/sysctl)

    sysctl -a | grep sem

    这条命令的意思是:参数 -a 是用来显示所有变量的,所以直接-a显示会有很多内容,那么我们才使用 | 管道,将输出结果通过 grep 来进行筛选。

    上面这条命令就是筛选出名字叫 sem 的内容。

    我的系统中,该变量的内容显示为:

    kernel.sem = 2503200032128

    然后依次对下面的关键字进行筛选并将其变量的结果记录下来:

    shm
    file-max
    aio-max
    ip_local_port_range
    rmem_default
    rmem_max
    wmem_default
    wmem_max

    在将其结果添加到/etc/sysctl.conf文件中,我添加的内容如下:(每台计算机的结构是不一样的)

    kernel.sem = 2503200032128
    kernel.shm_rmid_forced = 0
    kernel.shmall = 2097152
    kernel.shmmax = 33554432
    kernel.shmmni = 4096
    fs.file-max = 201317
    fs.aio-max-nr = 65536
    net.ipv4.ip_local_port_range = 3276861000
    net.core.rmem_default = 212992
    net.core.rmem_max = 131071
    net.core.wmem_default = 212992
    net.core.wmem_max = 131071

    在 /etc/security/limits.conf 文件中增加以下数据

    ‘username’softnproc 2047
    ‘username’hardnproc 16384
    ‘username’softnofile 1024
    ‘username’hardnofile 65536
    ‘username’softstack 10240

     username 写自己的账户名,我的是vkz,我就写成:

    vkzsoft nproc2047,后面依次类推...

    将上面的变量添加后,我们需要更新内核参数,使用下面这个命令:

    sysctl -p


    第七步:

    现在可以安装 了,进入之前解压缩的database目录中,ls一下,

    见到runInstaller了吗,现在我们就可以./runInstaller了。

    当然也可以使用参数-ignoreSysPrereqs来跳过后面的检测。

    我反正没有使用,都是手动跳过的...

    安装的时候其实没有什么一路next即可,在有目录的地方最好检查一下是不是

    我们上面建立的/Oracle/oracle11g,涉及到用户组的选择都手工改一改,改

    成你的登录的那个名字一样的组,我是把adm改成vkz。

    还有就是我是在安装的时候选择仅安装数据库软件,安装成功后在去手动建立

    数据库。当然这个应该不管事。都差不多。


    问题的关键是make错误,这里给出一个简单的处理方法,在安装的过程中,

    在make那一个环节的时候,如果报错,先不要退出安装程序,重新打开一个

    终端,然后去修改一下文件中的内容:

    首先修改$ORACLE_HOME/sysman/lib/ins_emagent.mk文件,打开后找到

    找到190行将其$(MK_EMAGENT_NMECTL)后面加上-lnnz11,记得有空格喔..

    加上后是$(MK_EMAGENT_NMECTL) -lnnz11

    保存退出...


    然后修改$ORACLE_HOME/bin/genorasdksh文件,打开后找到288行

    在$LD $LD_RUNTIME这句的后面加上-Wl,-no-as-needed修改成:

    $LD $LD_RUNTIME -Wl,-no-as-needed $LD_OPT.....


    然后修改$ORACLE_HOME/srvm/lib/ins_srvm.mk,找到第61行,将

    $(OCRLIBS_DEFAULT)前面加上-Wl,-no-as-needed


    然后修改$ORACLE_HOME/network/lib/env_network.mk,找到2150行

    TNSLSNR_LINKLINE=$(LINK) $(TNSLSNR_OFILES)在这个后面加上

    -Wl,-no-as-needed


    最后修改$ORACLE_HOME/rdbms/lib/env_rdbms.mk文件,找到:

    ORACLE_LINKLINE=$(ORACLE_LINKER) 在后面加上-Wl,-no-as-needed


    修改后,回到安装界面,点击retry,我就是这样搞定的... 主要是编译的问题...


    最后安装完成后,到$ORACLE_HOME/bin目录里执行netca和dbca。

    netca是网络配置,用于创建后修改网络相关内容

    dbca是数据库配置,用于创建和修改数据库类容

    如何配置,这个就不在本文讨论范围了,实际上很简单的,各位可以自己试试。


    都搞定后,我么你就可以在$ORACLE_HOME/bin目录中执行sqlplus了

    测试没有问题,也可以在$ORACLE_HOME/sqldeveloper目录中执行sqldeveloper.sh

    然后看看能不能链接。以及在通过局域网链接。我这里都一一成功。所以祝各位

    好运了。。。



    对了,安装界面乱码的问题,我没遇到,我采用的是系统语言是英语为主,但是

    支持汉语,就是系统是英文的,但是可以正常显示中文,所以安装界面是英文,

    我就没有遇到乱码的问题,所以我就没有实验过了,相信应该也不难。


    最后说一句,不要把这些想的太难,别听其他人怎么说,相信自己就可以。

  • 相关阅读:
    Informatica 常用组件Aggregator之三 使用排序输入
    Informatica 常用组件Aggregator之二 分组依据端口
    Informatica 常用组件Aggregator之一 聚合表达式
    Informatica 常用组件Filter之四 优化
    Informatica 常用组件Filter之三 创建FIL
    Informatica 常用组件Filter之二 过滤条件
    Informatica 常用组件Filter之一 概述
    Ubuntu 16.04 升级 PHP 版本至 7.1
    Socket远程调试日志之 SocketLog的简单实用
    Tesseract-ocr
  • 原文地址:https://www.cnblogs.com/vk83/p/2970419.html
Copyright © 2011-2022 走看看