物理需求
硬件需求
内存:6G+
# grep MemTotal /proc/meminfo
复制
交换分区:等于内存值或内存值的两倍
# grep SwapTotal /proc/meminfo
复制
存储:100G+
系统需求
系统架构
uname -m
复制
/tmp: 1G+
df -h /tmp
复制
/dev/shm:取决于内存大小
df -h /dev/shm
复制
关闭防火墙
systemctl stop firewalld.service systemctl disable firewalld.service
复制
关闭selinux
# 临时关闭:输入命令setenforce 0,重启系统后还会开启。 # 永久关闭:输入命令vim /etc/selinux/config,将SELINUX=enforcing改为SELINUX=disabled,然后保存退出。
复制
准备阶段
软件安装
bc binutils elfutils-libelf elfutils-libelf-devel fontconfig-devel glibc glibc-devel ksh libaio libaio-devel libXrender libX11 libXau libXi libXtst libgcc libnsl librdmacm libstdc++ libstdc++-devel libxcb libibverbs make policycoreutils policycoreutils-python-utils smartmontools sysstat unixODBC gcc gcc-c++ gcc-info gcc-locale gcc48 gcc48-info gcc48-locale gcc48-c++
复制
用户与组
查看是否安装有Oracle软件
# more /etc/oraInst.loc
复制
查看是否已存在相关用户
$ grep oinstall /etc/group
复制
创建oinstall
与dba
用户组
# /usr/sbin/groupadd -g 54321 oinstall # /usr/sbin/groupadd -g 54322 dba
复制
创建oracle
用户
# /usr/sbin/useradd -u 54321 -g oinstall -G dba oracle
复制
修改内核参数
cat >> /etc/sysctl.conf << EOF # add for oracle 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 EOF
复制
使之生效
/sbin/sysctl -p
资源限制
cat >> /etc/security/limits.d/20-nproc.conf << ! * 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 !
复制
配置用户环境变量
vi ~/.bash_profile # 加入以下配置到文件尾 export TMP=/tmp#日志存放位置 export TMPDIR=$TMP export ORACLE_HOSTNAME=centos#主机名 export ORACLE_UNQNAME=oracle#库名称 export ORACLE_BASE=/oracle export ORACLE_HOME=$ORACLE_BASE/product/12.2.0.1/db_1 export ORACLE_SID=oracle#库名称 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
复制
创建相关文件夹
mkdir /oracle mkdir /oradata mkdir /oracle/oraInventory mkdir -p /oracle/product/12.2.0.1/db_1 chown -R oracle:oinstall /oracle chown -R oracle:oinstall /oradata chmod -R 775 /oracle chmod -R 775 /oradata
复制
hostname
确认主机名与配置的$ORACLE_HOSTNAME相同
echo $ORACLE_HOSTNAME cat /etc/hostname
复制
修改hostname与环境变量中一致
vim /etc/hostname
复制
安装Oracle软件
下载安装文件
上传文件
上传安装文件至$ORACLE_HOME
文件夹后解压
复制编辑rsp文件
db_install.rsp
文件
cd $ORACLE_HOME/install/response cp db_install.rsp /tmp vim /tmp/db_install.rsp
复制
修改db_install.rsp
文件中以下内容
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v19.0.0 oracle.install.option=INSTALL_DB_SWONLY UNIX_GROUP_NAME=oinstall INVENTORY_LOCATION=/oracle/oraInventory ORACLE_HOME=/oracle/product/12.2.0.1/db_1 ORACLE_BASE=/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.SID=oracle
复制
静默安装Oracle软件
cd $ORACLE_HOME ./runInstaller -silent -responseFile /tmp/db_install.rsp -ignorePrereq # 安装结束后需要以root用户执行以下两个脚本 /oracle/oraInventory/orainstRoot.sh /oracle/product/12.2.0.1/db_1/root.sh
复制
配置监听
编辑监听配置文件或直接使用/oracle/product/12.2.0.1/db_1/assistants/netca/netca.rsp
文件
cat >>/tmp/netca.rsp <<! [GENERAL] RESPONSEFILE_VERSION="19.0" CREATE_TYPE="CUSTOM" [oracle.net.ca] INSTALLED_COMPONENTS={"server","net8","javavm"} INSTALL_TYPE=""typical"" LISTENER_NUMBER=1 LISTENER_NAMES={"LISTENER"} LISTENER_PROTOCOLS={"TCP;1521"} LISTENER_START=""LISTENER"" NAMING_METHODS={"TNSNAMES","ONAMES","HOSTNAME"} NSN_NUMBER=1 NSN_NAMES={"EXTPROC_CONNECTION_DATA"} NSN_SERVICE={"PLSExtProc"} NSN_PROTOCOLS={"TCP;HOSTNAME;1521"} !
复制
静默配置监听
netca -silent -responseFile /tmp/netca.rsp
复制
安装数据库
编辑dbca.rsp
安装文件
responseFileVersion=/home/oracle/rspfmt_dbca_response_schema_v19.0.0 gdbName=oracle sid=oracle sysPassword=oracle oracleHomeUserPassword=oracle templateName=General_Purpose.dbc emExpressPort=5500 totalMemory=1500 sysPassword=Oracle123 systemPassword=Oracle123 datafileDestination=/oradata characterSet=ZHS16GBK nationalCharacterSet=AL16UTF16 databaseType=OLTP
复制
静默安装数据库
dbca -silent -createDatabase -responseFile /tmp/dbca.rsp
复制
检查状态
监听状态
lsnrctl status
复制
数据库与实例状态
sqlplus / as sysdba select name,db_unique_name,open_mode from v$database; select instance_name,status from v$instance;
复制
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
Oracle 19c RAC更换IP实战,运维必看!
szrsu
406次阅读
2025-04-08 23:57:08
Oracle19C低版本一天遭遇两BUG(ORA-04031/ORA-00600)
潇湘秦
247次阅读
2025-04-16 17:05:16
oracle rac 添加 多个scan ip,你不可不知道的坑!
szrsu
211次阅读
2025-04-13 23:56:22
DeepSeek 携手 Oracle in-memory 新特性:统计对象存储访问情况的神奇之旅
JiekeXu
209次阅读
2025-03-31 18:02:28
数据库服务器操作系统升级后Oracle 19c crs无法启动
Xiaofei Huangfu
119次阅读
2025-03-31 15:00:07
Oracle索引UNUSABLE导致表无法操作?一分钟带你排查与修复!
伟鹏
4次阅读
2025-04-28 13:48:48