位置
软件包和脚本都上传到/app/danti/oracle
下,以方便下面脚本的运行。
步骤
1. 创建install.sh文件
#!/bin/bash
# 安装依赖
yum install -y bc binutils compat-libcap1 compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel fontconfig-devel glibc glibc-devel ksh libaio libaio-devel libX11 libXau libXi libXtst libXrender libXrender-devel libgcc libstdc++ libstdc++-devel libxcb make smartmontools sysstat ipmiutil net-tools nfs-utils python python-configshell python-rtslib python-six targetcli > dev/null 2>&1
# 创建Oracle相关用户和组
groupadd -g 54321 oinstall
groupadd -g 54322 dba
groupadd -g 54323 oper #oper组非必须,也可以不创建
groupadd -g 54324 backupdba
groupadd -g 54325 dgdba
groupadd -g 54326 kmdba
groupadd -g 54327 asmdba
groupadd -g 54328 asmoper
groupadd -g 54330 racdba
# 创建oracle用户
useradd -u 54321 -g oinstall -G dba,asmdba,backupdba,dgdba,kmdba,racdba oracle
# 设置Oracle用户的密码
echo "oracle"|passwd --stdin oracle
# 创建目录
mkdir -p app/oracle
mkdir -p app/oraInventory
mkdir -p /app/database
mkdir -p /app/oracle/oradata
mkdir -p /app/oracle/flash_recovery_area
mkdir -p /app/oracle/product/software
chown -R oracle:oinstall /app/oracle
chown -R oracle:oinstall /app/oracle/oradata
chown -R oracle:oinstall /app/oraInventory
chown -R oracle:oinstall /app/database
chmod -R 775 /app/oracle
# 系统内核优化
MEMORY_SIZE=`grep MemTotal /proc/meminfo|awk -F ' ' '{print $2}'`
MEMORY_SIZE_BYTES=`echo $MEMORY_SIZE*1024|bc`
echo "
kernel.shmall = $(($MEMORY_SIZE_BYTES / 4096))
kernel.shmmax = $MEMORY_SIZE_BYTES
kernel.shmmni = 4096
kernel.sem = 2500 32000 1024 1280
fs.file-max = 6815744
fs.aio-max-nr = 1048576
###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
vm.hugetlb_shm_group = 302
" >> /etc/sysctl.conf
/sbin/sysctl -p
# 修改oracle用户限制
echo "oracle soft nproc 2047" >> /etc/security/limits.conf
echo "oracle hard nproc 16384" >> /etc/security/limits.conf
echo "oracle soft nofile 1024" >> /etc/security/limits.conf
echo "oracle hard nofile 65536" >> /etc/security/limits.conf
# 切换oracle角色
# 切换用户只执行一条命令的可以用: su - oracle -c command
# 切换用户执行一个shell文件可以用:su - oracle -s /bin/bash shell.sh
su - oracle -s /bin/bash /app/danti/oracle/next.sh
复制
复制
2. 创建next.sh文件
复制
#!/bin/bash
# 配置Oracle用户的环境变量
cat << EOF >> /home/oracle/.bash_profile
umask 022
#oracle数据库安装目录
export ORACLE_BASE=/app/oracle
#oracle数据库路径
export ORACLE_HOME=/app/oracle/product/software
#oracle启动数据库实例名
export ORACLE_SID=orcl
#xterm窗口模式安装
export ORACLE_TERM=xterm
#配置时间格式
NLS_DATE_FORMAT="YYYY:MM:DDHH24:MI:SS"
#添加系统环境变量
export PATH=/app/oracle/product/software/bin:/usr/sbin:$PATH
#添加系统环境变量
export LD_LIBRARY_PATH=/app/oracle/product/software/lib:/lib:/usr/lib
#防止安装过程出现乱码
#export LANG=en_US.gbk
export LANG=en_US.UTF-8
#设置Oracle客户端字符集,必须与Oracle安装时设置的字符集保持一致,
#export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export NLS_LANG=AMERICAN_AMERICA.UTF8
EOF
# 生效环境变量:
source /home/oracle/.bash_profile
# 检查环境变量是否生效
echo $ORACLE_HOME
# 解压包
unzip -q -o /app/danti/oracle/LINUX.X64_193000_db_home.zip -d $ORACLE_HOME
# 安装Oracle
$ORACLE_HOME/runInstaller -silent -force -noconfig -ignorePrereq \
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v19_3 \
oracle.install.option=INSTALL_DB_SWONLY \
UNIX_GROUP_NAME=oinstall \
INVENTORY_LOCATION=/app/oraInventory \
ORACLE_BASE=/app/oracle \
ORACLE_HOME=/app/oracle/product/software \
oracle.install.db.InstallEdition=EE \
oracle.install.db.OSDBA_GROUP=dba \
oracle.install.db.OSOPER_GROUP=oinstall \
oracle.install.db.OSBACKUPDBA_GROUP=backupdba \
oracle.install.db.OSDGDBA_GROUP=dgdba \
oracle.install.db.OSKMDBA_GROUP=kmdba \
oracle.install.db.OSRACDBA_GROUP=racdba \
oracle.install.db.rootconfig.executeRootScript=true \
oracle.install.db.rootconfig.configMethod=ROOT
# 启动监听
lsnrctl start
# 创建数据库
dbca -silent -createDatabase -templateName General_Purpose.dbc -responseFile NO_VALUE \
-gdbname orcl -sid orcl \
-createAsContainerDatabase TRUE \
-numberOfPDBs 1 \
-pdbName oracle \
-pdbAdminPassword oracle0591FuNeng \
-sysPassword oracle0591FuNeng -systemPassword oracle0591FuNeng -dbsnmpPassword oracle0591FuNeng \
-datafileDestination '/app/oracle/oradata' \
-recoveryAreaDestination '/app/oracle/flash_recovery_area' \
-redoLogFileSize 50 \
-storageType FS \
-characterset AL32UTF8 -nationalCharacterSet AL16UTF16 \
-sampleSchema true \
-totalMemory 6144 \
-databaseType OLTP \
-emConfiguration NONE
# 密码为:oracle0591FuNeng
复制
复制
安装
sh install.sh
默认账号密码:sys/oracle0591FuNeng
如需要表空间或创建账号,可自行百度
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。