欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Linux 非图形界面安装Oracle数据库

程序员文章站 2022-04-23 08:16:36
...

一个未开图形界面的Linux OS,如何安装Oracle软件及数据库,如下是2大步骤

注释:

一个未开图形界面的Linux OS,,如何安装Oracle软件及数据库,如下是2大步骤

  • 克隆软件
  • 手动建库
  • 一、克隆软件

    1、基本配置

    1.1)系统软件包安装

    yum -y install binutils compat-libstdc++-33 compat-libstdc++-33.i686 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc.i686 glibc-common glibc-devel glibc-devel.i686 glibc-headers ksh libaio libaio.i686 libaio-devel libaio-devel.i686 libgcc libgcc.i686 libstdc++ libstdc++.i686 libstdc++-devel make sysstat unixODBC unixODBC-devel

    1.2)用户创建

    1.3)文件配置

    1.3.1) 环境变量

    vi ~oracle/.bash_profile

    export ORACLE_BASE=/data/app/oracle

    export ORACLE_HOME=$ORACLE_BASE/product/11.2.0.4/db_1

    export ORACLE_SID=test # 最多 8个字符 ; 操作系统和 oracle实例关联的纽带 ;ORACLE_HOME+ORACLE_SID==>hash==> 共享内存段

    export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin # 将安装后的 oracle 命令追加到执行搜索路径

    export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib # 动态库的位置

    export nls_lang="SIMPLIFIED CHINESE_CHINA.ZHS16GBK" #客户端字符集设置

    # 加载配置 :oracle 用户注销重新登录 或 source .bash_profile

    1.3.2) 主机

    echo "10.240.1.7 Database-backup" >> /etc/hosts #避免报错startup noumount时报错ORA-00000: normal, successful completion

    1.3.3) 软件目录

    mkdir -p /data/app/oracle/product/11.2.0.4/db_1

    chown -R oracle:oinstall /data/app

    1.3.4) 资源限制

    1.3.4,1) vim /etc/sysctl.conf 添加到文件底端

    kernel.shmall = 2097152

    #Total amount of shared memory available(bytes or pages); 页的数量 ;2097152*4096/1024/1024/1024=8G; 如果内存大于 8G,必须修改此参数

    kernel.shmmax = 2147483648

    # 要>= 物理内存的一半 Maximum size of shared memory segment(bytes); 建议 >=sga_max_size(oracle申请内存大小 );

    # 单个程序内存段最大多少 ;4G 的话分为两段 mem_seg1 mem_seg2,影响效率 ;

    kernel.shmmni = 4096

    # Maximum number of shared memory segments system-wide; 页的大小 ;

    kernel.sem = SEMMSL SEMMNS SEMOPM SEMMNI

    SEMMSL Maximum number of semaphores per set; 每个信号对象集的最大信号对象数

    SEMMNS Maximum number of semaphores system-wide; 系统范围内最大信号对象数 ;SEMMNS = SEMMSL*SEMMNI

    SEMOPM 每个信号对象支持的最大操作数

    SEMMNI Maximum number of semaphore identifiers; 系统范围内最大信号对象集数

    fs.file-max #系统中所允许的文件句柄最大数目

    net.ipv4.ip_local_port_range # 应用程序可使用的 IPv4 端口范围

    net.core.rmem_default #套接字接收缓冲区大小的缺省值

    net.core.rmem_max #套接字接收缓冲区大小的最大值

    net.core.wmem_default #套接字发送缓冲区大小的缺省值

    net.core.wmem_max #套接字发送缓冲区大小的最大值

    #注释:OS32bit,oracle 最多申请 1.7G; 应该装64bitOS

    #加载参数 sysctl -p

    1.3.4 ,2) /etc/security/limits.conf oracle 在 linux 上操作的limit

    [root@dba ~]# grep -v '^#' /etc/security/limits.conf

    oracle soft nproc 2047 #oracle 在 linux上打开 proc 数量

    oracle hard nproc 16384

    oracle soft nofile 1024 #oracle 在 linux上打开 file 的数量

    oracle hard nofile 65536

    [root@dba ~]# grep 'limit' /etc/pam.d/system-auth

    session required pam_limits.so

    1.3.4,3) 关闭防火墙、SELINUX

    iptables -F

    更改 /etc/selinux/config 文件 -->SELINUX=disabled

    2、克隆 ORACLE_HOME

    2.1)复制

    scp db_1 oracle@10.240.1.7:/data/app/oracle/product/11.2.0.4/db_1/

    2.2)执行clone.pl 克隆脚本更改参数配置(ORACLE_SID、ORACLE_HOME)

    $ cd /data/app/oracle/product/11.2.0.4/db_1/clone/bin