0
点赞
收藏
分享

微信扫一扫

安装Oracle11

安装oracle数据库

注意设置交换分区

  1. 关闭防火墙


systemctl stop NetworkManager && systemctl disable NetworkManager

systemctl stop firewalld && systemctl disable firewalld

sed -i "s/^SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config

sed -i "s/^SELINUX=permissive/SELINUX=disabled/g" /etc/selinux/config

setenforce 0

hostnamectl set-hostname oracledb1

修改/etc/hosts 增加主机名对应关系


2.修改内核:以下适用于32G内存左右服务器配置,32G以上建议调整

vim /etc/sysctl.conf


vm.max_map_count = 655360

kernel.shmall = 429496729

kernel.shmmax = 13743895347

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

fs.file-max = 6815744

net.core.rmem_default = 262144

net.core.wmem_default = 262144

vm.swappiness=40

vm.vfs_cache_pressure=200

vm.min_free_kbytes=409600

fs.aio-max-nr=3145728

net.ipv4.ip_local_port_range = 9000 65500

net.core.rmem_max = 4194304

net.core.wmem_max = 1048576


[root@oracledb ~] sysctl -p


各参数详解:

1:kernel.shmmax

是核心参数中最重要的参数之一,用于定义单个共享内存段的最大值。设置应该足够大,能在一个共享内存段下容纳下整个的SGA ,设置的过低可能会导致需要创建多个共享内存段,这样可能导致系统性能的下降。至于导致系统下降的主要原因为在实例启动以及ServerProcess创建的时候,多个小的共享内存段可能会导致当时轻微的系统性能的降低(在启动的时候需要去创建多个虚拟地址段,在进程创建的时候要让进程对多个段进行“识别”,会有一些影响),但是其他时候都不会有影响。

官方建议值:

32linux系统:可取最大值为4GB4294967296bytes-1byte,即4294967295。建议值为多于内存的一半,所以如果是32为系统,一般可取值为429496729532位系统对SGA大小有限制,所以SGA肯定可以包含在单个共享内存段中。

64linux系统:可取的最大值为物理内存值-1byte,建议值为多于物理内存的一半,一般取值大于SGA_MAX_SIZE即可,可以取物理内存-1byte。例如,如果为12GB物理内存,可取12*1024*1024*1024-1=12884901887SGA肯定会包含在单个共享内存段中。

2:kernel.shmall

该参数控制可以使用的共享内存的总页数。Linux共享内存页大小为4KB,共享内存段的大小都是共享内存页大小的整数倍。一个共享内存段的最大大小是16G,那么需要共享内存页数是16GB/4KB=16777216KB /4KB=4194304(页),也就是64Bit系统下16GB物理内存,设置kernel.shmall = 4194304才符合要求(几乎是原来设置2097152的两倍)。这时可以将shmmax参数调整到16G了,同时可以修改SGA_MAX_SIZESGA_TARGET12G(您想设置的SGA最大大小,当然也可以是2G~14G等,还要协调PGA参数及OS等其他内存使用,不能设置太满,比如16G

3:kernel.shmmni

该参数是共享内存段的最大数量。shmmni缺省值4096,一般肯定是够用了。

4:fs.file-max

该参数决定了系统中所允许的文件句柄最大数目,文件句柄设置代表linux系统中可以打开的文件的数量。

5:fs.aio-max-nr

此参数限制并发未完成的请求,应该设置避免I/O子系统故障。

6:kernel.sem

kernel.sem = 250 32000 100 128为例:

250是参数semmsl的值,表示一个信号量集合中能够包含的信号量最大数目。

32000是参数semmns的值,表示系统内可允许的信号量最大数目。

100是参数semopm的值,表示单个semopm()调用在一个信号量集合上可以执行的操作数量。

128是参数semmni的值,表示系统信号量集合总数。

7:net.ipv4.ip_local_port_range

表示应用程序可使用的IPv4端口范围。

8:net.core.rmem_default

表示套接字接收缓冲区大小的缺省值。

9:net.core.rmem_max

表示套接字接收缓冲区大小的最大值。

10:net.core.wmem_default

表示套接字发送缓冲区大小的缺省值。

11:net.core.wmem_max

表示套接字发送缓冲区大小的最大值。


4.修改认证模块

vim /etc/security/limits.conf

oracle soft nproc 131072
oracle hard nproc 131072
oracle soft nofile 131072
oracle hard nofile 131072
oracle soft core unlimited
oracle hard core unlimited
oracle soft memlock 50000000
oracle hard memlock 50000000



5、修改用户登录认证

vim /etc/pam.d/login

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

注意了,很多博文都是写的/lib/security/pam_limits.so 一般咱都是64位系统,64位系统需要设置为/lib64/security/pam_limits.so 否则重启服务器后就会出现命令行无法登录,但是通过桌面方式能登录的情况。


  1. 修改文件,默认Oracle无法用centos系统安装vim /etc/redhat-release
    redhat 7.4

    二.开始配置安装oracle基本环境

    1创建用户及安装目录,安装依赖包
    groupadd -g 501 oinstall
    groupadd -g 502 dba
    useradd -u 502 -g oinstall -G dba oracle
    passwd oracle
    2.安装oracle所需依赖和桌面组件,桌面组件有700多MB

    yum -yinstall binutils compat compat-libstdc gcc gcc-c++ glibc glibc-devel libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstattelnet compat-libstdc++* elfutils-libelf elfutils-libelf-devel glibc glibc-common glibc-headers kernel-headerslibgomp unixODBC unixODBC-devel libXpunixODBC-devel

    发现
    wget ​​http://vault.centos.org/5.11/os/x86_64/CentOS/pdksh-5.2.14-37.el5_8.1.x86_64.rpm​​
    rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm安装报错,卸载ksh即可
    rpm -e ksh-20120801-142.el7.x86_64
    rpm -ivh compat-libstdc++-33-3.2.3-47.3.x86_64.rpm

    解决命令行中上下键不能翻历史命令的问题
    yum -y install readline*
    tar zxf rlwrap-0.42.tar.gz
    cd rlwrap-0.42/
    ./configure
    make && make install

    没安装桌面环境,安装以下包:
    [root@oracledb ~] yum -y groupinstall "GNOME Desktop" "Graphical Administration Tools"

    安装准备
  1. 上传并解压安装包mkdir /u01
    cd /u01
    unzip p13390677_112040_Linux-x86-64_1of7.zip
    unzip p13390677_112040_Linux-x86-64_2of7.zip
    解压后目录下自动生成安装目录:database
  2. 创建oracle软件目录mkdir -p /u01/app/oracle #####创建软件配置文件目录
    mkdir -p /u01/app/oraInventory

    mkdir -p /u02/oradata ######创建数据目录
    mkdir -p /u02/arch1 ###日志文件
    mkdir -p /u02/fast_recovery_area ##恢复文件

    chown -R oracle.oinstall /u01
    chown -R oracle.oinstall /u02

  3. 设置环境变量vim /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

    source /etc/profile





  4. 修改Oracle用户环境变量

vim /home/oracle/.bash_profile

export PATH

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db

export ORACLE_SID=orcl

export ORACLE_TERM=xterm

export ORACLE_OWNER=oracle

export TNS_ADMIN=$ORACLE_HOME/network/admin

export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data

export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"

#export NLS_LANG="AMERICAN_CHINA.ZHS16GBK"

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/network/lib:/lib:/usr/lib:/usr/local/lib

export LIBPATH=$ORACLE_HOME/lib:$ORACLE_HOME/network/lib:/lib:/usr/lib:/usr/local/lib

export PATH=$PATH:/sbin:/usr/lbin:/usr/sbin:$JAVA_HOME/bin:$ORACLE_HOME/bin:$ORACLE_HOME/lib:$HOME/bin:$ORACLE_HOME/OPatch:.

umask 022

export LANG=C

alias sqlplus='rlwrap sqlplus'

alias rman='rlwrap rman'

# 设置Oracle客户端字符集,必须与Oracle安装时设置的字符集保持一致,如:ZHS16GBK,否则出现数据导入导出中文乱码问题

source /home/oracle/.bash_profile

三.开始安装ORACLE

  1. 在linux图形桌面打开终端
  2. [root@oracle ~]# xhost +

    [root@oracle ~]#su oracle

    [oracle@oracle ~]$ cd /opt/database/


    注释:

    xhost +允许其他用户启动的图形程序将图形显示在当前屏幕上

    [oracle@oracle database]$ source .bash_profile

    [root@odb2 bak]# unzip p13390677_112040_Linux-x86-64_1of7.zip

    [root@odb2 bak]# unzip p13390677_112040_Linux-x86-64_2of7.zip

    [root@odb2 bak]# cd database/


  3. 运行安装脚本
  4. [oracle@oracle database]$ ./runInstaller

    安装Oracle11_linux


  5. 若出现乱码情况,修改语言变量

    [oracle@oracle database]$ LANG="en_US.UTF-8"

    [oracle@oracle database]$ echo $LANG

    若出现无法DISPLAY, 无法显示的报错,执行

    [oracle@oracle database]$ export DISPLAY=:0.0

    [oracle@oracle database]$ echo $DISPLAY

  6. 去掉对勾,点击下一步

安装Oracle11_oracle_02


4.点击yes

安装Oracle11_oracle_03


安装Oracle11_oracle_04


5.选择仅安装数据库软件,方便创建数据库是,更改数据目录位置

安装Oracle11_oracle_05


6.选择单实例安装,点击下一步

安装Oracle11_共享内存_06


  1. 安装语言:需要简体中文和英语,点击下一步:
  2. 选择数据库版本:选择企业版
  3. 指定安装位置:默认会读取oracle 用户的环境变量

安装Oracle11_linux_07



10.指定安装文件目录

安装Oracle11_oracle_08



11.选择操作系统组

安装Oracle11_linux_09



12.安装摘要查看

安装Oracle11_oracle_10



oracle安装之前需要修改很多内核参数,oracle越来越人性化,只需在界面上点击“修补并在次检查”


安装到70% 报错处理:

cd /u01/app/oracle/product/11.2.0/db/sysman/lib

vim ins_emagent.mk

加入-lnnz11

安装Oracle11_linux_11


这里或者更早前的步骤就可能会出现的问题,对话框可能无法正常弹出,测试在VM虚拟机或者云服务器,如阿里云等都这样,但是用鼠标可以拖开。是的,你没有看错,直接拖出对话框。








13.鼠标拉开查看安装进度

安装Oracle11_oracle_12





14.安装完成

安装Oracle11_oracle_13





  1. 用root用户执行脚本,然后点击确定,如下图:

[root@odb2 ~]# sh /u01/app/oraInventory/orainstRoot.sh

[root@odb2 ~]# sh /u01/app/oracle/product/11.2.0/db/root.sh

  1. 完成数据库软件安装

安装Oracle11_linux_14




创建数据库实例:若乱码修改环境变量,


[oracle@oracle database]$ LANG="AMERICAN_CHINA.ZHS16GBK"

[oracle@oracle database]$ echo $LANG


配置数据库监听

[oracle@oracle database]$ netmgr

安装Oracle11_oracle_15



设置“监听程序名”(默认即可),点击“下一步”

安装Oracle11_共享内存_16




监听IP 或主机名设置“选定的协议”(默认即可),点击“下一步”

安装Oracle11_linux_17



配置保存

安装Oracle11_linux_18



打开监听

[Oracle@localhost ~]$ lsnrctl status //查看监听状态

[Oracle@localhost ~]$ lsnrctl start


安装数据库

[Oracle@localhost ~]$ dbca //创建数据库实例orcl

选择“创建数据库”,点击“下一步”

安装Oracle11_linux_19



选择“一般用途或事务处理”,点击“下一步”

安装Oracle11_oracle_20



设置“全局数据库名”和“SID”均为orcl(注意均为大写字母)点击“下一步”

安装Oracle11_oracle_21



点击“下一步”默认开启监听后才可以配置EM

安装Oracle11_linux_22




安装Oracle11_共享内存_23



选择“所有账户使用同一管理口令”并设置口令为 ODBadmin1(注意为小写字母),点击“下一步”

安装Oracle11_linux_24


选择数据文件目录

安装Oracle11_oracle_25



指定快速恢复区

安装Oracle11_共享内存_26



指定日志位置

安装Oracle11_oracle_27



安装Oracle11_linux_28




调整“内存大小”,字符集点击“下一步”

安装Oracle11_oracle_29



安装Oracle11_linux_30





安装Oracle11_oracle_31



数据库存储查看

安装Oracle11_共享内存_32





安装Oracle11_linux_33



安装Oracle11_linux_34




选择“创建数据库”,点击“完成”,开始创建数据库

安装Oracle11_共享内存_35



鼠标拉开,查看安装进度

安装Oracle11_共享内存_36



完成数据库实例安装


安装Oracle11_oracle_37





参考文档:

​​https://blog.csdn.net/weixin_41078837/article/details/80584998​​

​​https://blog.csdn.net/oschina_41140683/article/details/81510709​​

附加:静默安装ORACLE

参考文档:​​https://blog.csdn.net/oschina_41140683/article/details/81510709​​


  1. 安装环境准备:参考之前环境准备

mkdir -p /u01/app/oracle #####创建软件配置文件目录

mkdir -p /u01/app/oraInventory


mkdir -p /u02/oradata ######创建数据目录

mkdir -p /u02/arch1 ###日志文件

mkdir -p /u02/fast_recovery_area ##恢复文件

[oracle@odb2 oracle]$ mkdir -p /u01/app/oracle/product/11.2.0/db

[oracle@odb2 ]$ mkdir -p /u02/fast_recovery_area/orcl/

[oracle@odb2 backup]$ mkdir -p /u02/oradata/orcl/


chown -R oracle.oinstall /u01

chown -R oracle.oinstall /u02



[oracle@odb2 response]$ cd /u01/pkg/database/response

[oracle@odb2 response]$ cp db_install.rsp db_install.rsp.bak

修改安装文件:

[oracle@odb2 response]$ vim db_install.rsp


oracle.install.optinotallow=INSTALL_DB_SWONLY

ORACLE_HOSTNAME=odb2

UNIX_GROUP_NAME=oinstall

INVENTORY_LOCATION=/u01/app/oraInventory

SELECTED_LANGUAGES=en,zh_CN

ORACLE_HOME=/u01/app/oracle/product/11.2.0/db

ORACLE_BASE=/u01/app/oracle

oracle.install.db.InstallEditinotallow=EE

oracle.install.db.DBA_GROUP=dba

oracle.install.db.OPER_GROUP=dba

oracle.install.db.config.starterdb.characterSet=ZHS16GBK

DECLINE_SECURITY_UPDATES=true


开始安装oracle软件

[oracle@odb2 database]$ ./runInstaller -silent -force -responseFile /u01/pkg/database/response/db_install.rsp -ignorePrereq

查看安装日志:

[oracle@odb2 ~]$ tail -f /u01/app/oraInventory/logs/installActions2021-12-28_09-49-52AM.log

修改配置

[oracle@odb2 ~]$ cd /u01/app/oracle/product/11.2.0/db/sysman/lib

[oracle@odb2 lib]$ vim ins_emagent.mk

加入-lnnz11

安装Oracle11_oracle_38




安装完成,使用 root 执行脚本

安装Oracle11_共享内存_39


1. /u01/app/oraInventory/orainstRoot.sh

2. /u01/app/oracle/product/11.2.0/db/root.sh


安装Oracle11_linux_40



创建监听文件:

[oracle@odb2 bin]$ cd /u01/app/oracle/product/11.2.0/db/bin

[oracle@odb2 bin]$ ./netca /silent /responseFile /u01/pkg/database/response/netca.rsp

安装Oracle11_oracle_41


查看已生成监听文件:

[oracle@odb2 admin]$ cd /u01/app/oracle/product/11.2.0/db/network/admin

安装Oracle11_共享内存_42

修改监听文件:

LISTENER =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = odb2)(PORT = 1521))

)

SID_LIST_LISTENER =

(SID_LIST =

(SID_DESC =

(GLOBAL_DBNAME = orcl)

(ORACLE_HOME = /u01/app/oracle/product/11.2.0/db)

(SID_NAME = orcl)

)

)

ADR_BASE_LISTENER = /u01/app/oracle

启动监听,查看状态:

[oracle@odb1 admin]$ lsnrctl start

[oracle@odb1 admin]$ lsnrctl status

静默dbca建库

编辑应答文件:














举报

相关推荐

0 条评论