本文為墨天輪數據庫管理服務團隊第117期技術分享,內容原創,作者為技術顧問楊玉壯,如需轉載請聯繫小墨(VX:modb666)並註明來源。如需查看更多文章可關注【墨天輪】公眾號。
配置主機名
vi /etc/hosts
檢查主機名和網絡並且配置/etc/hosts文件
關閉防火牆
檢查防火牆狀態
systemctl status firewalld.service
暫時關閉防火牆,下次啓動時防火牆仍隨系統啓動而啓動
systemctl stop firewalld.service
徹底永久關閉防火牆
systemctl disable firewalld.service
關閉SELINUX防火牆!
vi /etc/selinux/config
將內容 SELINUX=enforcing 更改為 SELINUX=disabled
配置yum源
掛載鏡像
mkdir -p /opt/Centos
mount /dev/cdrom /oopt/Centos
mkdir -p /etc/yum.repo.d/back
mv /etc/yum.repo.d/*.repo /etc/yum.repo.d/back
vi /etc/yum.repo.d/oracle.repo
[local]
name=oracle yum
baseurl=file:///opt/Centos
gpgcheck=0
enable=1
yum clear all
查看yum源
yum repolist
安裝ORACLE先決條件的軟件包
yum install -y bc
yum install -y compat-libcap1*
yum install -y compat-libcap*
yum install -y binutils
yum install -y compat-libstdc++-33
yum install -y elfutils-libelf
yum install -y elfutils-libelf-devel
yum install -y gcc
yum install -y gcc-c++
yum install -y glibc-2.5
yum install -y glibc-common
yum install -y glibc-devel
yum install -y glibc-headers
yum install -y ksh libaio
yum install -y libaio-devel
yum install -y libgcc
yum install -y libstdc++
yum install -y libstdc++-devel
yum install -y make
yum install -y sysstat
yum install -y unixODBC
yum install -y unixODBC-devel
yum install -y binutils*
yum install -y compat-libstdc*
yum install -y elfutils-libelf*
yum install -y gcc*
yum install -y glibc*
yum install -y ksh*
yum install -y libaio*
yum install -y libgcc*
yum install -y libstdc*
yum install -y make*
yum install -y sysstat*
yum install -y libXp*
yum install -y glibc-kernheaders
yum install -y net-tools-*
修改LINUX的內核文件
vi /etc/sysctl.conf
kernel.shmmax = 277495689510912 //表示最大共享內存大小,一般為物理內存的3/4 但是常用的就是將所有內存換算成字節後-1(單位:字節)
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586
fs.file-max = 6815744 //文件句柄數 一次可以打開文件的個數
kernel.shmall = 4294967296 //公式:內存大小*1024*1024*1024/4*1024 //表示所有內存大小(單位:頁=4K)
net.ipv4.tcp_max_tw_buckets = 6000
net.ipv4.ip_local_port_range = 9000 65500
net.ipv4.tcp_tw_recycle = 0
net.ipv4.tcp_tw_reuse = 1
#net.core.somaxconn = 262144
net.core.netdev_max_backlog = 262144
net.ipv4.tcp_max_orphans = 262144
net.ipv4.tcp_max_syn_backlog = 262144
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_fin_timeout = 1
net.ipv4.tcp_keepalive_time = 30
net.ipv4.tcp_keepalive_probes = 6
net.ipv4.tcp_keepalive_intvl = 5
net.ipv4.tcp_timestamps = 0
fs.aio-max-nr = 1048576
net.ipv4.conf.all.rp_filter = 2
net.ipv4.conf.default.rp_filter = 2
創建用户組
groupadd -g 10001 oinstall
groupadd -g 10002 dba
groupadd -g 10003 oper
useradd -u 11001 -g oinstall -G dba,oper oracle
創建目錄並授權:
mkdir -p /u01/app/oracle
mkdir -p /u01/oraInventory
chown -R oracle.oinstall /u01
chown -R oracle:oinstall /u01/app/oracle
chmod -R 775 /u01/app/oracle
給oracle用户加一個密碼
passwd oracle
修改limit參數
vi /etc/security/limits.conf
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
su - oracle
修改oracle環境變量
vim .bash_profile
export EDITOR=vi
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_SID=orcl
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/12.2.0/db_1
export INVENTORY_LOCATION=/u01/oraInventory
export TNS_ADMIN=$ORACLE_HOME/network/admin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export NLS_LANG="AMERICAN_AMERICA.AL32UTF8"
export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"
export PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin:$PATH:$HOME/bin
umask 022
參數生效
source .bash_profile
上傳數據庫軟件並解壓
上傳到opt目錄下
修改權限 chmod -R 775 /opt/XXXXX
安裝軟件
vim /opt/database/response/db_install.rsp(可以先備份相應的rsp文件)
oracle.install.option=INSTALL_DB_SWONLY # 安裝類型
ORACLE_HOSTNAME=orcl # 主機名稱(hostname查詢)
UNIX_GROUP_NAME=oinstall # 安裝組
INVENTORY_LOCATION=/u01/app/oraInventory # INVENTORY目錄(不填就是默認值)
SELECTED_LANGUAGES=en,zh_CN,zh_TW # 選擇語言
ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1 # oracle_home
ORACLE_BASE=/u01/app/oracle # oracle_base
oracle.install.db.InstallEdition=EE # oracle版本
oracle.install.db.isCustomInstall=false # 自定義安裝,否,使用默認組件
oracle.install.db.DBA_GROUP=dba # dba用户組
oracle.install.db.OPER_GROUP=oinstall # oper用户組
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE # 數據庫類型
oracle.install.db.config.starterdb.globalDBName=orcl # globalDBName
oracle.install.db.config.starterdb.SID=orcl # SID
oracle.install.db.config.starterdb.memoryLimit=157285 # 自動管理內存的內存(M)
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false
DATAFILEDESTINATION = /u01/oradata
DECLINE_SECURITY_UPDATES=true
./runInstaller -silent -force -responseFile /home/oracle/db_install.rsp
root用户下執行
/u01/app/oraInventory/orainstRoot.sh
/u01/app/oracle/product/11.2.0/db_1/root.sh
配置監聽
netca -silent -responsefile /home/oracle/netca.rsp
安裝數據庫
vim /opt/database/response/dbca.rsp
[GENERAL]
RESPONSEFILE_VERSION = "11.2.0"
OPERATION_TYPE = "createDatabase"
[CREATEDATABASE]
GDBNAME = "orcl"
SID = "orcl"
TEMPLATENAME = "General_Purpose.dbc"
CHARACTERSET = "AL32UTF8"
SYSPASSWORD = "oracle"
SYSTEMPASSWORD = "oracle"
TOTALMEMORY = "157285"
檢驗監聽:
lsnrctl status
檢驗數據庫
sqlplus / as sysdba
select status from v$instance;
墨天輪從樂知樂享的數據庫技術社區蓄勢出發,全面升級,提供多類型數據庫管理服務。墨天輪數據庫管理服務旨在為用户構建信賴可託付的數據庫環境,併為數據庫廠商提供中立的生態支持。
墨天輪數據庫服務官網:https://www.modb.pro/service