• Oracle11G安装


    参考

    1创建Oracle用户

    [root@localhost database]# groupadd dba

    [root@localhost database]# groupadd oinstall
    [root@localhost database]# useradd -g oinstall -G dba -m oracle 
    [root@localhost database]# passwd oracle

    2安装目录配置

    [root@localhost database]# mkdir -p /opt/oracle/app/oracle/product
    [root@localhost database]# chown -R oracle:oinstall /opt/oracle             设置/opt/oracle 及其子目录的所属主和组    -R 是递归遍历子目录

    3修改用户bash shell

    [root@localhost database]# su - oracle
    [oracle@localhost ~]$ vi ~/.bash_profile

    增加如下内容,主要是修改

    umask 022
    export PATH
    export ORACLE_BASE=/opt/oracle/app
    export ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/dbhome_1
    export ORACLE_SID=orcl    ###数据库名

    [oracle@localhost ~]$ source !$       立即生效
    source ~/.bash_profile

    4修改用户限制

    [oracle@localhost ~]$ su
    Password:
    [root@localhost oracle]# vim /etc/security/limits.conf               ##加上下面的参数

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

    5修改内核参数


    [root@localhost oracle]# vim /etc/sysctl.conf

    注销最后这两句

    #kernel.shmmax = 68719476736

    #kernel.shmall = 4294967296

    加上如下参数

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

    为使上述配置生效而不重启系统,执行如下命令

    # /sbin/sysctl -p

    6修改用户配置文件

      root下的这个文件对所有用户都生效  而 Oracle用户下的/home/oracle/.bash_profile只对当前用户oracle生效 .表示隐藏文件

    [root@localhost oracle]# vim /etc/profile

    加入如下参数:下面是设置用户可以打开的文件数 如果用户是oracle并且SHELL目录时/bin/ksh的话 可以打开的文件数是65536

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

    [root@localhost oracle]# source !$  立即生效
    source /etc/profile

     7桌面下安装

    下载linux.x64_11gR2_database_2of2.zip和linux.x64_11gR2_database_1of2.zip  并用rz复制到linux下(这里的两个压缩文件是11.2.0.1会有bug 最好用11.2.0.4 安装过程差别不大)

    分别解压得到database文件夹,进入文件夹(桌面环境中操作)

    [oracle@localhost database]$ ls
    doc install response rpm runInstaller sshsetup stage welcome.html
    [oracle@localhost database]$ pwd
    /zzxtmp/database
    [oracle@localhost database]$ ./runInstaller     之后会出现图形安装 如下图(oracle用户下执行), 需要在oracle用户下进入x-window图像界面执行./runInstaller否则会提示失败(Could not execute auto check for display colors using command /usr/bin/xdpyi)

     1、Configure Security Updates  取消安全更新的打钩 然后next  然后选yes

    2、Installation Option 选第二个

    3、Grid Options

    4、Product Languages 添加中文

    5、Database Edition 选择数据库版本

    6、Installation Location  默认环境变量中一致  直接默认next

    7 8、Create Inventory和Operating System Groups都下一步  如果出错说明文件夹所属主设置有问题 检查这句[root@localhost database]# chown -R oracle:oinstall /opt/oracle 

    9、Prerequisite Checks 检查安装前提条件

    可以用yum安装 或者用Centos光盘里面package下的文件进行安装

    mount -o loop /dev/cdrom /mnt 

    cd /mnt/Packages

    [root@localhost zzxtmp]# rpm -ivh pdksh-5.2.14-30.x86_64.rpm         这个文件在光盘中是没有的

    elfutils-libelf-devel可能也要网上下载  yum可能没有

    其他用 yum -y install libaio* glibc* compat-libstdc++-33* gcc-c++* libaio-devel* libgcc* libstdc++* libstdc++-devel* unixODBC-* unixODBC-devel* elfutils-libelf-devel*

    全部安装完还是提示有问题的是因为版本过新等等 ,用rpm -q 一个个检查还有问题的项目,如果都安装了就忽略(11.2.0.4好像不会存在版本超了还提示没安装的情况,测试中11.2.0.4最后提示都安装好了才下一步的) 然后下一步 勾选

    10 Summary  选Finish 就会开始安装  又是漫长的等待

    安装成功后需要root下手动执行两个脚本

    [root@localhost oracle]# sh /opt/oracle/oraInventory/orainstRoot.sh 

    [root@localhost oracle]# sh /opt/oracle/app/oracle/product/11.2.0/dbhome_1/root.sh

    Enter the full pathname of the local bin directory: [/usr/local/bin]:       这里直接回车  
    Copying dbhome to /usr/local/bin ...
    Copying oraenv to /usr/local/bin ...
    Copying coraenv to /usr/local/bin ...      到此安装结束

    [root@localhost oracle]# ls /usr/local/bin/  其实就在这个目录下生产三个文件
    coraenv dbhome oraenv

     点ok 再close

     以下在桌面环境中命令行输入

    建一个数据库

    在oracle用户下输入

    dbca 新建一个数据库  这里要等待半小时到一小时  …………        会在/opt/oracle/app/oradata/ 生成数据库文件 就是$ORACLE_BASE/oradata/下

    设置监听

    netca设置监听

    netstat -aln |grep 1521  查看是否有LISTEN         

     lsnrctl status   查看监听状态

     lsnrctl start/stop  启动/关闭监听 重启后要启动才行

     linux下面查看oracle实例名方法:在终端输入echo $ORACLE_SID

    sqlplus "/as sysdba"

    启动的时候遇到下面问题 ORA-01078: failure in processing system parameters(oracle 11g for Asianux3 ORA-01078 and LRM-00109 )

    解决办法:将$ORACLE_BASE/admin/数据库名称/pfile目录下的init.ora.012009233838形式的文件copy到$ORACLE_HOME/dbs目录下initoracle.ora即可。(注:initoracle.ora中的oracle为你的实例名 ORACLE_SID)

     修改后还出错 ORA-00845: MEMORY_TARGET not supported on this system(原因: 简单来说就是 MEMORY_MAX_TARGET 的设置不能超过 /dev/shm 的大小)

    接着修改 /etc/fstab 下的    tmpfs                   /dev/shm                tmpfs   defaults,size=1.5G        0 0

    重启后再lsnrctl start

    然后 

    sqlplus "/as sysdba"
    startup 就不报错了,成功打开数据库 oracle如何查看当前有哪些用户连接到数据库

    select * from tab;查看表格

    su - oracle

    sqlplus "/as sysdba"

    startup

  • 相关阅读:
    #define IOFFSETOF(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)
    互联网地址处理例程
    Android系统工程模式启动过程详解
    知识填充
    git 本地回退
    理解JS中的Promise对象
    MySQL server version for the right syntax to use near 'identified
    尾递归要注意的点
    事件捕获和事件冒泡的理解
    v 2ra-y_build_a_sever_in_vltru
  • 原文地址:https://www.cnblogs.com/hanxing/p/5662114.html
Copyright © 2020-2023  润新知