• linux安装Oracle11G


    linux安装Oracle11G

    0、下载Orcle11G

    oracle10G/11G官方下载地址合集(直接迅雷下载)

    说明一下:
    [root@myYUn install]#中的myYUn
    等价于
    [root@iz2f570bi1k56uz install]#中的iz2f570bi1k56uz;
    这是为了界面效果调整的,但是有些没调整到,理解一哈。

    1、上传文件到服务器或虚拟机的/install目录下

    [root@myYUn install]# rz –y

    如果rz –y命令不能使用,可用如下方法解决

    yum install lrzsz -y

    2、解压文件到当前目录:

    [root@myYUn install]# unzip linux.x64_11gR2_database_1of2.zip

    [root@myYUn install]# unzip linux.x64_11gR2_database_2of2.zip

    如果unzip命令不能使用,依次执行如下命令:

         yum list | grep zip/unzip
    
         yum install zip
    
         yum install unzip 

    将解压后的文件夹直接移动到/software目录下:

    [root@myYUn install]# mv database/ /software/

    [root@myYUn install]# cd /software

    [root@myYUn install]# ll

     

    3、关闭selinux

    [root@myYUn software]# vim /etc/selinux/config

    设置SELINUX=disabled

    [root@myYUn software]# setenforce 0

    4、关闭防火墙

    查看系统版本

    [root@myYUn software]# cat /etc/redhat-release

    CentOS Linux release 7.3.1611 (Core)

    [root@myYUn software]# getconf LONG_BIT

    64

    如果是6及以下:

    [root@myYUn software]# service iptables stop

    [root@myYUn software]# service iptables status

    [root@myYUn software]# chkconfig iptables off

    如果是centenOS7:

    [root@myYUn software]# systemctl restart firewalld.service

    [root@myYUn software]# systemctl list-unit-files|grep firewalld.service

    firewalld.service                             disabled

    [root@myYUn software]# systemctl disable firewalld.service

    5、安装Oracle 11g依赖包

    [root@myYUn software]# yum install gcc make binutils gcc-c++ compat-libstdc++-33elfutils-libelf-devel elfutils-libelf-devel-static ksh libaio libaio-develnumactl-devel sysstat unixODBC unixODBC-devel pcre-devel –y

    6、添加安装用户和用户组

    [root@myYUn software]# groupadd oinstall

    [root@myYUn software]# groupadd dba

    [root@myYUn software]# useradd -g oinstall -G dba oracle

    [root@myYUn software]# passwd oracle

    Changing password for user oracle.

    New password:

    BAD PASSWORD: The password is shorter than 8 characters

    Retype new password:

    passwd: all authentication tokens updated successfully.

    [root@myYUn software]# id oracle

    uid=1001(oracle) gid=1001(oinstall) groups=1001(oinstall),1002(dba)

    7、修改内核参数配置文件

    [root@myYUn software]# vim /etc/sysctl.conf

    在末尾添加以下内容:

    fs.aio-max-nr = 1048576
    fs.file-max = 6815744
    kernel.shmall = 2097152
    kernel.shmmax = 1073741824
    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 

    查看是否成功写进/etc/sysctl.conf文件中:

    [root@myYUn software]# sysctl -p

    其中kernel.shmmax = 1073741824为本机物理内存(2G)的一半,单位为byte。

    8、修改用户的限制文件

    修改/etc/security/limits.conf文件:

    [root@myYUn software]# vim /etc/security/limits.conf

    在末尾添加以下内容:

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

    修改/etc/pam.d/login文件:

    [root@myYUn software]# vim /etc/pam.d/login

    在末尾添加以下内容:

    session required  /lib64/security/pam_limits.so
    session required   pam_limits.so 

    修改/etc/profile文件:

    [root@ myYUn software]# vim /etc/profile

    在末尾添加以下内容:

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

    9、创建安装目录和设置文件权限

    [root@myYUn software]# mkdir -p /data/oracle/product/11.2.0

    [root@myYUn software]# mkdir /data/oracle/oradata

    [root@myYUn software]# mkdir /data/oracle/inventory

    [root@myYUn software]# mkdir /data/oracle/fast_recovery_area

    [root@myYUn software]# chown -R oracle:oinstall /data/oracle

    [root@myYUn software]# chmod -R 775 /data/oracle

    10、设置oracle用户环境变量

    首先切换到oracle用户下:

    [root@myYUn software]# su -l oracle

    [oracle@myYUn ~]$ vim .bash_profile

    在末尾添加如下内容:

    ORACLE_BASE=/data/oracle

    ORACLE_HOME=$ORACLE_BASE/product/11.2.0

    ORACLE_SID=orcl

    PATH=$PATH:$ORACLE_HOME/bin

    export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH

    注意,标红处必须与创建的数据库实例名称一致,否则数据库启动后无法访问。第一次配置完记得source一下。

    [oracle@myYUn ~]$ source .bash_profile

    11、编辑静默安装响应文件

    复制安装文件夹response到当前oracle用户的家目录下:

    [oracle@myYUn ~]$ cp -R /software/database/response/ .

    [oracle@myYUn ~]$ cd response/

    [oracle@myYUn response]$ vim db_install.rsp

    需要设置的选项如下:

    oracle.install.option=INSTALL_DB_SWONLY

    ORACLE_HOSTNAME=CentOS

    UNIX_GROUP_NAME=oinstall

    INVENTORY_LOCATION=/data/oracle/inventory

    SELECTED_LANGUAGES=en,zh_CN

    ORACLE_HOME=/data/oracle/product/11.2.0

    ORACLE_BASE=/data/oracle

    oracle.install.db.InstallEdition=EE

    oracle.install.db.DBA_GROUP=dba

    oracle.install.db.OPER_GROUP=dba

    DECLINE_SECURITY_UPDATES=true

    12、根据响应文件静默安装Oracle11g

    [oracle@myYUn response]$ cd /software/database/

    [oracle@myYUn database]$ ./runInstaller -silent -responseFile /home/oracle/response/db_install.rsp -ignorePrereq

    如果执行以上命令出错,会提示有参数格式,按照提示参数格式修改修改即可,一般是由于word中的字体、符号格式复制到客户端命令行后不一致引起,修改即可。

    楼主遇到了交换空间不足的问题:

    解决方案如下(在root用户下执行):

    [root@myYUn /]# free

    [root@myYUn /]# dd if=/dev/zero of=swapfile bs=1024 count=500000

    500000+0 records in

    500000+0 records out

    512000000 bytes (512 MB) copied, 1.67013 s, 307 MB/s

    [root@myYUn /]# mkswap swapfile

    Setting up swapspace version 1, size = 499996 KiB

    no label, UUID=c5e355eb-e73e-4aa0-b882-cb6d1f88e6bc

    [root@myYUn /]# swapon swapfile

    swapon: /swapfile: insecure permissions 0644, 0600 suggested.

    [root@myYUn /]# free

     

    开始Oracle在后台静默安装。安装过程中,如果提示[WARNING]不必理会,此时安装程序仍在后台进行,如果出现Successfully Setup Software,则安装程序已经停止了。

    可以在以下位置找到本次安装会话的日志:/data/oracle/inventory/logs/installActions2018-05-13_02-14-55PM.log

    可以切换终端执行top命令查看后台进程一直是在安装的,/data目录也在不断增大,

    当出现以下提示时,代表安装成功:

    按照要求执行脚本。

    打开终端,退出到root身份登录,执行脚本:

    [oracle@iZ2f570bi1k56uZ database]$ exit

    logout

    [root@iZ2f570bi1k56uZ software]# sh /data/oracle/inventory/orainstRoot.sh

    Changing permissions of /data/oracle/inventory.

    Adding read,write permissions for group.

    Removing read,write,execute permissions for world.

    Changing groupname of /data/oracle/inventory to oinstall.

    The execution of the script is complete.

    [root@iZ2f570bi1k56uZ software]# sh /data/oracle/product/11.2.0/root.sh

    Check /data/oracle/product/11.2.0/install/root_iZ2f570bi1k56uZ_2018-05-13_14-25-04.log for the output of root script

    13、以静默方式配置监听

    重新使用oracle用户登录:

    [root@myYUn software]# su -l oracle

    Last login: Sun May 13 14:09:10 CST 2018 on pts/3

    [oracle@myYUn ~]$ netca /silent /responseFile /home/oracle/response/netca.rsp 

    注意此处,必须使用/silent /responseFile格式,而不是-silent -responseFile,因为是静默安装。

    成功运行后,在/data/oracle/product/11.2.0/network/admin中生成listener.ora和sqlnet.ora

    通过netstat命令可以查看1521端口正在监听。

    Yum安装netstat软件,软件包是在net-tools中。

    [root@myYUn /]# yum install net-tools

    [root@myYUn /]# yum install net-tools

    14、以静默方式建立新库,同时也建立一个对应的实例

    [oracle@myYUn ~]$ vim /home/oracle/response/dbca.rsp

    修改文件中以下参数:

    [GENERAL]
    
    # oracle版本,不能更改
    RESPONSEFILE_VERSION = "11.2.0"
    
    # Description   : Type of operation
    OPERATION_TYPE = "createDatabase"
    
    [CREATEDATABASE]
    
    # Description   : Global database name of the database
    # 全局数据库的名字=SID+主机域名
    # 第三方工具链接数据库的时候使用的service名称 GDBNAME
    = "orcl.test" # Description : System identifier (SID) of the database # 对应的实例名字 SID = "orcl" # Description : Name of the template # 建库用的模板文件 TEMPLATENAME = "General_Purpose.dbc" # Description : Password for SYS user # SYS管理员密码 SYSPASSWORD = "123456" # Description : Password for SYSTEM user # SYSTEM管理员密码 SYSTEMPASSWORD = "123456" # Description : Password for SYSMAN user # SYSMAN管理员密码 SYSMANPASSWORD = "123456" # Description : Password for DBSNMP user # DBSNMP管理员密码 DBSNMPPASSWORD = "123456" # Description : Location of the data file's # 数据文件存放目录 DATAFILEDESTINATION =/data/oracle/oradata # Description : Location of the data file's # 恢复数据存放目录 RECOVERYAREADESTINATION=/data/oracle/fast_recovery_area # Description : Character set of the database # 字符集,重要!!! 建库后一般不能更改,所以建库前要确定清楚。 # (CHARACTERSET = "AL32UTF8" NATIONALCHARACTERSET= "UTF8") CHARACTERSET = "ZHS16GBK" # Description : total memory in MB to allocate to Oracle # oracle内存1638MB,物理内存2G*80% TOTALMEMORY = "1638" 

    进行静默配置:

    [oracle@myYUn ~]$ dbca -silent -responseFile /home/oracle/response/dbca.rsp

    建库后进行实例进程检查:

    [oracle@myYUn ~]$ ps -ef | grep ora_ | grep -v grep

    查看监听状态:

    [oracle@myYUn ~]$ lsnrctl status

    数据库创建完成。

    有关详细信息, 请查看以下位置的日志文件: /data/oracle/cfgtoollogs/dbca/orcl/orcl.log。

    数据库信息:

    全局数据库名:orcl.test

    系统标识符 (SID):orcl

    登录查看实例状态:

    [oracle@myYUn ~]$ sqlplus / as sysdba

    SQL> select status from v$instance;

    linux 成功安装oracle后,为其创建一个登录账户

    如果报错:【ORA-12162: TNS:net service name is incorrectly specified】

    错误原因:【这个错误是因为ORACLE_SID变量没有传进去造成的。】

    解决方法:

    1.查看当前ORACLE_SID

    [oracle@iZ2f570bi1k56uZ ~]$ echo $ORACLE_SID

    orcl                 

    2.修改ORACLE_SID和/home/oracle/response/dbca.rsp中的一样                                                                                                                                                                   

    [oracle@iZ2f570bi1k56uZ ~]$ export ORACLE_SID=orcl

    3.如果遇到ORA-12162: TNS:net service name is incorrectly specified.错误

    参考文章:【ORA-12162: TNS:net service name is incorrectly specified.

    4.如果依然不能登陆,尝试修改orcle文件夹的权限

    【如果本地连接时,出现监听错误,参考Linux中安装Oracle11g后出现监听的问题及解决办法

    15、命令行模式静默删除

    1、首先查看dbca的帮助信息

    dbca -help

    修改/home/oracle/response/dbca.rsp文件里以下几个参数,下面三个参数根据建库实际情况进行修改:

    OPERATION_TYPE = "deleteDatabase"

    SOURCEDB = "orcl"

    SYSDBAUSERNAME = "sys"

    SYSDBAPASSWORD = "123456"

    然后运行:

    dbca -silent -responseFile /home/oracle/response/dbca.rsp

    各参数含义如下:

    -silent 表示以静默方式删除

    -responseFile 表示使用哪个响应文件,必需使用绝对路径

    RESPONSEFILE_VERSION 响应文件模板的版本,该参数不要更改

    OPERATION_TYPE 安装类型,该参数不要更改

    SOURCEDB 数据库名,不是全局数据库名,即不包含db_domain

    很简单数据库卸载完成了,请注意,只是数据库卸载完了,数据库软件还是在的。

    2、使用DBCA卸载数据库

    dbca -silent -delete Database -responseFile dbca.rsp

    a.选项-silent表示静默安装,免安装交互,大部分安装信息也不输出

    b.选项-responseFile指定应答文件,要求用绝对路径


    参考文章:

    1、linux下安装Oracle时交换空间不足的解决方法

    2、sqlplus / as sysdba无法登录的奇怪报错

    3、Oracle 11g 基于CentOS7静默安装教程(无图形界面,远程安装)

  • 相关阅读:
    Linuxqq shell脚本安装后的卸载
    A Spy in the Metro UVA-1025(dp)
    L1-064 估值一亿的AI核心代码
    龙芯 3A4000 安装 Debian10 (via debootstrap)
    Linux用户和用户组
    /etc/issue、/etc/issue.net和/etc/motd的区别
    一种注释
    龙芯平台51单片机开发环境搭建笔记
    Rails UVA-514 (stack)
    The SetStack Computer UVA-12096 (set 操作)
  • 原文地址:https://www.cnblogs.com/mmzs/p/9033112.html
Copyright © 2020-2023  润新知