zoukankan      html  css  js  c++  java
  • Linux 安装 Oracle11g 数据库

    前言

    vi 命令 是Linux环境下经典编辑器

    以 vi 开头打开文件后,按 i 进入编辑模式 > 按 Esc 进入普通模式 > 输入 :wq 保存并退出


    ----------------------- 0 ----------------------- 安装准备工作

    如图所示 home 目录空间最大(961G),所以在这个目录下创建install目录,并将准备好的11g安装包上传至此

    接下来依次执行下面三行命令,将安装包解压

    cd /home/install 

    unzip linux.x64_11gR2_database_1of2.zip

    unzip linux.x64_11gR2_database_2of2.zip


    ----------------------- 1 ----------------------- 安装依赖包

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

    ——查看安装情况

    rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers kernel-headers ksh libaio libaio-devel libgcc libgomp libstdc++-devel make sysstat unixODBC unixODBC-devel 


    ----------------------- 2 ----------------------- 创建oracle用户

    groupadd oinstall
    groupadd dba
    useradd -g oinstall -G dba oracle
    passwd oracle

    依次执行后会要求输入密码。(密码不要使用oracle,这里是创建了一个叫oracle的用户,这个用户可以登录系统哦)


    ----------------------- 3 ----------------------- 给oracle用户添加shell配置

    据说能提高 Oracle 软件性能

    操作如下,分别在这三个文件末尾加入配置参数

    vi /etc/security/limits.conf 

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

    vi /etc/pam.d/login

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

    vi /etc/profile

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

    添加后 :wq 保存退出后,执行 source /etc/profile 命令使设置生效


    ----------------------- 4 ----------------------- 系统- Hosts配置

    hostname(查看主机名)——若虚机没有主机名或想修改主机名 hostnamectl set-hostname zhujiming

     vi /etc/hosts

    127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

    127.0.0.1 后面只留 localhost,其它删除
    ::1 后面修改成主机名

    127.0.0.1   localhost
    ::1         entry

      


    ----------------------- 5 ----------------------- 系统- 内核参数配置

    free -g(查看物理内存)——不清楚那个是物理内存,百度一下

    vi /etc/sysctl.conf

    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 = 1048576

    注:kernel.shmmax = 物理内存 / 2 * 1024 * 1024 * 1024

    添加后 :wq 保存退出后,执行 sysctl -p 命令使配置生效


    ----------------------- 6 ----------------------- 创建Oracle安装目录

    mkdir -p /home/data/oracle
    chown -R oracle:oinstall /home/data/oracle
    chmod -R 775 /home/data/oracle

    参考步骤 0 配图 ,因为 home 目录空间最大(961G),所以在这个目录下创建/data/oracle目录,这里计划把oracle安装在/home/data/oracle/内(根据虚机情况,选择空间较多的目录存放没有错)


    ----------------------- 7 ----------------------- 创建/etc/oraInst.loc文件与授权

    在etc目录下执行 vi oraInst.loc 添加如下参数 /etc/oraInst.loc文件不存在,执行 vi 时会自动创建并打开)

    nventory_loc=/home/data/oracle/oraInventory
    inst_group=oinstall

    权限分配

    chown oracle:oinstall /etc/oraInst.loc
    chmod 664 /etc/oraInst.loc


    ----------------------- 8 ----------------------- 复制响应文件模板

    1. 在/home/oracle用户目录下创建etc文件夹
    cd /home/oracle/
    mkdir etc

    2. 复制响应文件(参考步骤0安装包解压目录)
    cp /home/install/database/response/* /home/oracle/etc/

    3. 响应文件权限设置
    chmod -R 777 /home/oracle/etc/*.rsp


    ----------------------- 9 ----------------------- 设置DISPLAY

    root 用户下执行
    xhost +
    如果执行 xhost + 报错,先执行 export DISPLAY=:0 在执行 xhost +

    切换到 oracle 用户
    su - oracle   若执行 su - oracle 报 BH:Commad 可以在试试这样写 /usr/bin/su - oracle
    DISPLAY=:0.0;export DISPLAY


    ----------------------- 10 ----------------------- 设置Oracle用户环境变量

    vi .bash_profile

    export ORACLE_BASE=/home/data/oracle
    export ORACLE_SID=orcl

    添加后 :wq 保存退出后,执行 source .bash_profile 命令使配置生效


    ----------------------- 11 ----------------------- 修改静默安装文件

    修改安装Oracle软件的响应文件 /home/oracle/etc/db_install.rsp 修改内容如下 

    oracle.install.option=INSTALL_DB_SWONLY                  // 安装类型
    ORACLE_HOSTNAME=entry                             // 主机名称(hostname查询)
    UNIX_GROUP_NAME=oinstall                            // 安装组
    INVENTORY_LOCATION=/home/data/oracle/oraInventory 
    SELECTED_LANGUAGES=en,zh_CN                           // 选择语言
    ORACLE_HOME=/home/data/oracle/product/11.2.0/db_1 //oracle_home
    ORACLE_BASE=/home/data/oracle                        // oracle_base
    oracle.install.db.InstallEdition=EE                     // oracle版本
    oracle.install.db.isCustomInstall=false                  // 自定义安装,否,使用默认组件
    oracle.install.db.DBA_GROUP=dba
    oracle.install.db.OPER_GROUP=oinstall                   // oper用户组
    oracle.install.db.config.starterdb.type=GENERAL_PURPOSE         // 数据库类型
    oracle.install.db.config.starterdb.globalDBName=orcl          // globalDBName
    oracle.install.db.config.starterdb.SID=orcl               // SID
    oracle.install.db.config.starterdb.characterSet=AL32UTF8
    oracle.install.db.config.starterdb.storageType=FILE_SYSTEM_STORAGE
    oracle.install.db.config.starterdb.password.ALL=oracle         // 设定所有数据库用户使用同一个密码,自行更改,(实际上后面安装实例时会重新输入密码)
    SECURITY_UPDATES_VIA_MYORACLESUPPORT=false         
    oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=/home/data/oracle/oradata
    DECLINE_SECURITY_UPDATES=true                         // 设置安全更新

    ----------------------- 12 ----------------------- 静默-安装数据库

    进到 oracle 安装文件解压目录(参考步骤0安装包解压目录)
    cd /home/install/database

    ./runInstaller -silent -responseFile /home/oracle/etc/db_install.rsp

    安装中,[WARNING]不必理会,此时安装程序仍在进行,如果出现[FATAL],则安装程序已经停止了。 如果安装停止尝试执行下面这条命令 

    ./runInstaller -silent -ignorePrereq -responseFile /home/oracle/etc/db_install.rsp

    如果没报错就一直等着,大约5分钟左右,会出现安装信息。

    当出现类似如下提示表示安装完成:
    #-------------------------------------------------------------------
    /usr/oracle/oraInventory/orainstRoot.sh               // 这个不一定有
    /usr/oracle/product/11.2.0/db_1/root.sh
    To execute the configuration scripts:
    1. Open a terminal window
    2. Log in as "root"
    3. Run the scripts
    4. Return to this window and hit "Enter" key to continue

    Successfully Setup Software.
    #-------------------------------------------------------------------


    ----------------------- 13 ----------------------- 增加oracle环境变量

    su - root

    /home/data/oracle/product/11.2.0/db_1/root.sh

    /home/data/oracle/oraInventory/orainstRoot.sh      // 参考上一步,安装完成的提示内有这个就执行,没有则不用执行

    su - oracle

    vi .bash_profile

    在最后加上以下内容

    export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
    export TNS_ADMIN=$ORACLE_HOME/network/admin
    export PATH=.:${PATH}:$HOME/bin:$ORACLE_HOME/bin
    export PATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin
    export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/lib
    export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib
    export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib
    export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/JRE
    export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/JRE/lib
    export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib
    export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib
    export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib
    export LIBPATH=${CLASSPATH}:$ORACLE_HOME/lib:$ORACLE_HOME/ctx/lib
    export ORACLE_OWNER=oracle
    export SPFILE_PATH=$ORACLE_HOME/dbs
    export ORA_NLS10=$ORACLE_HOME/nls/data

    添加后 :wq 保存退出后,执行 source /home/oracle/.bash_profile 命令使设置生效


    到这里数据库就安装好了

    执行 sqlplus / as sysdba

    执行 exit 退出,继续完成后续配置


    ----------------------- 14 ----------------------- 静默-启动网络服务名与监听

    netca /silent /responseFile /home/oracle/etc/netca.rsp


    ----------------------- 15 ----------------------- 静默-建立新库

    修改安装实例的响应文件 /home/oracle/etc/dbca.rsp 修改内容如下

    RESPONSEFILE_VERSION = "11.2.0"               //不能更改
    OPERATION_TYPE = "createDatabase"
    GDBNAME = "orcl"                         // 全局数据库的名字
    SID = "orcl"                           // 对应的实例名字
    TEMPLATENAME = "General_Purpose.dbc"             // 建库用的模板文件
    DATAFILEDESTINATION = /home/data/oracle/oradata       // 数据文件存放目录,根据具体oracle安装目录设置
    CHARACTERSET = "AL32UTF8"               // 字符集,重要!!! 建库后一般不能更改,所以建库前要确定清楚。
    TOTALMEMORY = "5120"                     // 物理内存乘以1024除以2再减去1024

    保存后执行 dbca -silent -responseFile /home/oracle/etc/dbca.rsp 命令创建实例

    如果屏幕黑屏了,等20秒,直接输入密码回车 在输入密码回车,在输入密码回车,在输入密码回车,然后会出现安装实例......... 

    ----------------------- 16 ----------------------- 

    实例进程检查

    ps -ef | grep ora_ | grep -v grep

    监听状态查看

    lsnrctl status

    登录dba用户

    sqlplus / as sysdba

    创建表空间

    create tablespace ORCL_DATA datafile '/home/data/oracle/ORCL.DBF'  size 700m;

    创建新用户

    .... 

    切换至新用户

    显示当前登录用户

    数据库自动备份

    Linux 备份 Oracle11g 数据库

    数据库设置

    关于Oracle数据库空表无法导出问题

  • 相关阅读:
    javase 超市库存系统
    Javase 简单代码练习
    Javase 简单练习
    SQL表连接查询
    SQL多表查询
    SQL表查询
    SQL数据查询2
    SQL数据查询
    SQL增删改
    AutoCompleteTextView的使用
  • 原文地址:https://www.cnblogs.com/ghostnet/p/15179559.html
Copyright © 2011-2022 走看看