千家信息网

oracle 12c R2静默安装

发表于:2024-12-12 作者:千家信息网编辑
千家信息网最后更新 2024年12月12日,1、扩大交换分区dd if=/dev/zero of=/tmp/mem.swap bs=1M count=4096/sbin/mkswap /tmp/mem.swap/sbin/swapon /tmp
千家信息网最后更新 2024年12月12日oracle 12c R2静默安装

1、扩大交换分区

dd if=/dev/zero of=/tmp/mem.swap bs=1M count=4096

/sbin/mkswap /tmp/mem.swap

/sbin/swapon /tmp/mem.swap


vi /etc/fstab

/tmp/mem.swap swap swap defaults 0 0



2、安装oracle依赖包关系

yum install -y binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33.i686 glibc glibc.i686 glibc-devel glibc-devel.i686 ksh libaio libaio.i686 libaio-devel libaio-devel.i686 libX11 libX11.i686 libXau libXau.i686 libXi libXi.i686 libXtst libXtst.i686 libgcc libgcc.i686 libstdc++ libstdc++.i686 libstdc++-devel libstdc++-devel.i686 libxcb libxcb.i686 make nfs-utils net-tools smartmontools sysstat unixODBC unixODBC-devel gcc gcc-c++ libXext libXext.i686 zlib-devel zlib-devel.i686


3、增加用户


/usr/sbin/groupadd oinstall

/usr/sbin/groupadd dba

/usr/sbin/groupadd asmadmin

/usr/sbin/groupadd asmdba

/usr/sbin/groupadd oper

/usr/sbin/useradd -g oinstall -G dba,asmdba,oper oracle -d /home/oracle



4、修改操作系统参数

a、修改sawp大于4G(必备)


b、修改内核参数和增加操作系统限制

vim /etc/sysctl.conf 请根据自己实际情况修改,内核参数如下

fs.file-max = 6815744

kernel.sem = 250 32000 100 128

kernel.shmmni = 4096

kernel.shmall = 1073741824

kernel.shmmax = 4398046511104

kernel.panic_on_oops = 1

net.core.rmem_default = 262144

net.core.rmem_max = 4194304

net.core.wmem_default = 262144

net.core.wmem_max = 1048576

net.ipv4.conf.all.rp_filter = 2

net.ipv4.conf.default.rp_filter = 2

fs.aio-max-nr = 1048576

net.ipv4.ip_local_port_range = 9000 65500


各参数详解:


fs.aio-max-nr:

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


fs.file-max:

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


kernel.shmall:

该参数控制可以使用的共享内存的总页数。Linux共享内存页大小为4KB,共享内存段的大小都是共享内存页大小的整数倍。一个共享内存段的最大大小是16G,那么需要共享内存页数是16GB/4KB=16777216KB /4KB=4194304(页),也就是64Bit系统下16GB物理内存,设置kernel.shmall = 4194304才符合要求.


kernel.shmmax:

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


官方建议值:

32位linux系统:可取最大值为4GB(4294967296bytes)-1byte,即4294967295。建议值为多于内存的一半,所以如果是32为系统,一般可取值为4294967295。

64位linux系统:可取的最大值为物理内存值-1byte,建议值为多于物理内存的一半,例如,如果为12GB物理内存,可取12*1024*1024*1024-1=12884901887。


kernel.shmmni:

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


kernel.sem:

以kernel.sem = 250 32000 100 128为例:


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


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


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


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


net.ipv4.ip_local_port_range:

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


net.core.rmem_default:

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


net.core.rmem_max:

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


net.core.wmem_default:

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


net.core.wmem_max:

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


vim /etc/security/limits.d/20-nproc.conf

# Default limit for number of user's processes to prevent

# accidental fork bombs.

# See rhbz #432903 for reasoning.


* soft nproc 4096

root soft nproc unlimited

oracle soft nofile 1024

oracle hard nofile 65536

oracle soft nproc 16384

oracle hard nproc 16384

oracle soft stack 10240

oracle hard stack 32768

oracle hard memlock 134217728

oracle soft memlock 134217728



3、新建目录

mkdir /u01

mkdir /u01/app

mkdir -p /u01/app/oracle/oradata


chmod -R 775 /u01/app

chown -R oracle:oinstall /u01



4、修改环境变量

export PATH

# Oracle Settings

export TMP=/tmp

export TMPDIR=$TMP

export ORACLE_UNQNAME=cdb1

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/12.2.0.1/db_1

export ORACLE_SID=cdb1

export PATH=/usr/sbin:$PATH

export PATH=$ORACLE_HOME/bin:$PATH

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

export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

export PATH=/usr/sbin:$PATH

export PATH=$ORACLE_HOME/bin:$PATH

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

export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib




unzip linuxx64_12201_database.zip /u01

chown -R oracle:oinstall /u01



oracle 12c R2

vi /u01/db_install.rsp

oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v12.2.0

oracle.install.option=INSTALL_DB_SWONLY

UNIX_GROUP_NAME=oinstall

INVENTORY_LOCATION=/u01/app/oracle/oraInventory

ORACLE_HOME=/u01/app/oracle/product/12.2.0.1/db_1

ORACLE_BASE=/u01/app/oracle

oracle.install.db.InstallEdition=EE

oracle.install.db.OSDBA_GROUP=dba

oracle.install.db.OSOPER_GROUP=oper

oracle.install.db.OSBACKUPDBA_GROUP=dba

oracle.install.db.OSDGDBA_GROUP=dba

oracle.install.db.OSKMDBA_GROUP=dba

oracle.install.db.OSRACDBA_GROUP=dba

oracle.install.db.config.starterdb.type=GENERAL_PURPOSE

oracle.install.db.config.starterdb.globalDBName=cdb1

oracle.install.db.config.starterdb.SID=cdb1

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

SECURITY_UPDATES_VIA_MYORACLESUPPORT=false

DECLINE_SECURITY_UPDATES=true



cd /u01/database

./runInstaller -force -silent -noconfig -responseFile /u01/database/response/db_install.rsp



tail -f /u01/app/oracle/oraInventory/logs/installActions2017-04-15_08-36-48PM.log



6,静默配置监听(切换至oracle用户)

netca -silent -responsefile /u01/database/response/netca.rsp


7、建库配置文件

R2

vim /u01/database/response/dbca.rsp

responseFileVersion=/oracle/assistants/rspfmt_dbca_response_schema_v12.2.0//21行不可更改

gdbName=cdb1 //32

sid=cdb1 //42

databaseConfigType=SI //52

policyManaged=false //74

createServerPool=false //88

force=false //127

createAsContainerDatabase=true //163

numberOfPDBs=1 //172

pdbName=cdb1pdb //182

useLocalUndoForPDBs=true //192

templateName=/u01/app/oracle/product/12.2.0.1/db_1/assistants/dbca/templates/General_Purpose.dbc //223

emExpressPort=5500 //273

runCVUChecks=false //284

omsPort=0 //313

dvConfiguration=false //341

olsConfiguration=false //391

datafileJarLocation={ORACLE_HOME}/assistants/dbca/templates/ //401

datafileDestination={ORACLE_BASE}/oradata/{DB_UNIQUE_NAME}/ //411

recoveryAreaDestination={ORACLE_BASE}/fast_recovery_area/{DB_UNIQUE_NAME} //421

storageType=FS //431

characterSet=AL32UTF8 //468字符集创建库之后不可更改

nationalCharacterSet=AL16UTF16 //478

registerWithDirService=false //488

listeners=LISTENER //526

variables=DB_UNIQUE_NAME=cdb1,ORACLE_BASE=/u01/app/oracle,PDB_NAME=,DB_NAME=cdb1,ORACLE_HOME=/u01/app/oracle/product/12.2.0.1/db_1,SID=cdb1 //546


initParams=undo_tablespace=UNDOTBS1,memory_target=796MB,processes=300,db_recovery_file_dest_size=2780MB,nls_language=AMERICAN,dispatchers=(PROTOCOL=TCP) (SERVICE=cdb1XDB),db_recovery_file_dest={ORACLE_BASE}/fast_recovery_area/{DB_UNIQUE_NAME},db_block_size=8192BYTES,diagnostic_dest={ORACLE_BASE},audit_file_dest={ORACLE_BASE}/admin/{DB_UNIQUE_NAME}/adump,nls_territory=AMERICA,local_listener=LISTENER_CDB1,compatible=12.2.0,control_files=("{ORACLE_BASE}/oradata/{DB_UNIQUE_NAME}/control01.ctl", "{ORACLE_BASE}/fast_recovery_area/{DB_UNIQUE_NAME}/control02.ctl"),db_name=cdb1,audit_trail=db,remote_login_passwordfile=EXCLUSIVE,open_cursors=300 //555


sampleSchema=false //565

memoryPercentage=40 //574

databaseType=MULTIPURPOSE //584

automaticMemoryManagement=true //594

totalMemory=0 //604


dbca -silent -createDatabase -responseFile /u01/dbca1.rsp


[WARNING] [DBT-06801] Specified Fast Recovery Area size (2,780 MB) is less than the recommended value.

CAUSE: Fast Recovery Area size should at least be three times the database size (2,730 MB).

ACTION: Specify Fast Recovery Area Size to be at least three times the database size.

[WARNING] [DBT-11209] Current available physical memory is less than the required physical memory (796MB) for creating the database.

Enter SYS user password: #超级管理员密码


Enter SYSTEM user password: #管理员密码


Enter PDBADMIN User Password: #库密码


检查oracle进程状态

ps -ef | grep ora_ | grep -v grep

lsnrctl status (lsnrctl是oracle命令)


8,登录数据库 提醒:切换至oracle用户

[oracle@Oracle response]$ sqlplus / as sysdba


SQL> select open_mode from v$database;

SQL> select status from v$instance;


0