1. 程式人生 > >CentOS7 圖形化方式安裝 Oracle 18c 單實例

CentOS7 圖形化方式安裝 Oracle 18c 單實例

xxx firewall pass etime libstdc++ tar 打開 文件系統 界面

下載 Oracle 數據庫,zip 包

https://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html

一、更改內核參數值

https://docs.oracle.com/en/database/oracle/oracle-database/18/ladbi/changing-kernel-parameter-values.html#GUID-FB0CC366-61C9-4AA2-9BE7-233EB6810A31

# 創建或編輯
# vim /etc/sysctl.conf
vim /etc/sysctl.d/97
-oracle-database-sysctl.conf fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmall = 2097152 kernel.shmmax = 4294967295 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 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 # 更改內核參數的當前值 /sbin/sysctl --system
sysctl -p
# 確認值設置正確
/sbin/sysctl -a

二、設置 UDP 和 TCP 內核參數

https://docs.oracle.com/en/database/oracle/oracle-database/18/ladbi/setting-udp-and-tcp-kernel-parameters-manually.html#GUID-F94545C8-7695-4866-89B0-F32651CD3658

# 查看
cat /proc/sys/net/ipv4/ip_local_port_range
#
32768 61000 # 臨時修改 echo 9000 65500 > /proc/sys/net/ipv4/ip_local_port_range # 永久修改,添加或更改以下內容 vim /etc/sysctl.conf net.ipv4.ip_local_port_range = 9000 65500 # 重啟網絡 /etc/rc.d/init.d/network restart

三、安裝基本依賴

https://docs.oracle.com/en/database/oracle/oracle-database/18/ladbi/supported-red-hat-enterprise-linux-7-distributions-for-x86-64.html#GUID-2E11B561-6587-4789-A583-2E33D705E498

yum install -y bc binutils compat-libcap1 gcc-c++ glibc glibc-devel ksh libaio libaio-devel libX11 libXau libXi libXtst libXrender-devel libXrender libgcc libstdc++ libstdc++-devel libxcb make nfs-utils net-tools python python-configshell python-rtslib python-six smartmontools sysstat targetcli

# compat-libstdc++
# http://mirror.centos.org/centos/7/os/x86_64/Packages/compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm
yum install -y http://www.rpmfind.net/linux/centos/7.6.1810/os/x86_64/Packages/compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm

四、禁用 Transparent HugePages

https://docs.oracle.com/en/database/oracle/oracle-database/18/ladbi/disabling-transparent-hugepages.html#GUID-02E9147D-D565-4AF8-B12A-8E6E9F74BEEA

https://izhong.me/index.php/archives/70/

# 查看
# [always]啟用、[never]禁用、[madvise]只在 MADV_HUGEPAGE 標誌的 VMA 中使用 THP
cat /sys/kernel/mm/transparent_hugepage/enabled

# 修改
# GRUB_CMDLINE_LINUX 最後添加 transparent_hugepage=never
vim /etc/default/grub

GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed ‘s, release .*$,,g‘ /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rhgb quiet transparent_hugepage=never"
GRUB_DISABLE_RECOVERY="true"

# 生成新 gurb.cfg 文件,重啟生效
grub2-mkconfig -o /boot/grub2/grub.cfg

五、使用自動 SSH 配置

https://docs.oracle.com/en/database/oracle/oracle-database/18/ladbi/using-automatic-ssh-configuration-during-installation.html#GUID-51280BE9-4B2A-4BE3-9DA3-68B795D9FBA2

vim /etc/ssh/sshd_config

LoginGraceTime 0

六、為 Oracle Grid Infrastructure 和 Oracle 數據庫配置用戶,組和環境

https://docs.oracle.com/en/database/oracle/oracle-database/18/ladbi/configuring-users-groups-and-environments-for-oracle-grid-infrastructure-and-oracle-database.html#GUID-B65E6113-D056-4DD9-940F-DFF493E413D5

# 創建Oracle庫存組
groupadd -g 54321 oinstall

# 為ASM Group創建OSDBA,該組的成員被授予對Oracle自動存儲管理的訪問權限
groupadd -g 54327 asmdba

# 為ASM Group創建OSOPER,該組的成員被授予Oracle自動存儲管理的啟動和關閉權限
groupadd -g 54328 asmoper

# 為數據庫安裝創建OSDBA組,該組的成員被授予SYSDBA系統特權以管理數據庫
groupadd -g 54322 dba

# 為數據庫安裝創建OSOPER組
# 僅當您要使用一組有限的數據庫管理權限(SYSOPER操作員權限)標識一組操作系統用戶時,才創建OSOPER組。
# 對於大多數安裝,僅創建OSDBA組就足夠了。
groupadd -g 54323 oper

# 為數據庫安裝創建OSBACKUPDBA組,該組的成員被授予SYSBACKUP權限,以使用RMAN或SQL * Plus執行備份和恢復操作
groupadd -g 54324 backupdba

# 為數據庫安裝創建OSDGDBA組,該組的成員被授予SYSDG權限以執行Data Guard操作
groupadd -g 54325 dgdba

# 為數據庫安裝創建OSKMDBA組,該組的成員被授予SYSKM權限以執行透明數據加密密鑰庫操作
groupadd -g 54326 kmdba

# 為數據庫安裝創建OSRACDBA組,該組的成員被授予SYSRAC權限,以在Oracle RAC集群上執行Oracle數據庫的日常管理
groupadd -g 54330 racdba

# 創建Oracle軟件所有者用戶
useradd -u 54321 -g oinstall -G dba,asmdba,backupdba,dgdba,kmdba,racdba,oper oracle
# usermod -g oinstall -G dba,asmdba,backupdba,dgdba,kmdba,racdba[,oper] oracle

七、檢查Oracle軟件安裝用戶的資源限制

https://docs.oracle.com/en/database/oracle/oracle-database/18/ladbi/checking-resource-limits-for-oracle-software-installation-users.html#GUID-293874BD-8069-470F-BEBF-A77C06618D5A

# nofile 打開文件描述符
# nproc 單個用戶可用的進程數
# stack 進程的堆棧段的大小
# memlock 最大鎖定內存限制
vim /etc/security/limits.conf

oracle soft nofile 1024
oracle hard nofile 65536
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft stack 10240
oracle hard stack 32768
oracle soft memlock 3145728
oracle hard memlock 3145728

八、創建Oracle數據庫文件的目錄

https://docs.oracle.com/en/database/oracle/oracle-database/18/ladbi/creating-directories-for-oracle-database-files.html#GUID-BAA48B85-7B6D-4482-B2CB-CE3CFC82ABBD

附上Oracle數據庫文件目錄規範 https://docs.oracle.com/en/database/oracle/oracle-database/18/ladbi/optimal-flexible-architecture.html#GUID-34434C8B-EBEE-497A-BB92-26B43561B6B1

這裏沒有按照規範來,個人習慣

# 查看每個已裝入文件系統上的可用磁盤空間
df -h

# 數據庫主目錄
mkdir -p /opt/oracle/oracle_base/

# 數據庫基目錄
mkdir -p /opt/oracle/oracle_home/

# 安裝時生成的日誌目錄
mkdir -p /opt/oracle/oraInventory/

# 設置用戶組和權限
chown oracle:oinstall -R /opt/oracle/
chmod 775 -R /opt/oracle/

九、設置環境變量

# 全局
vim /etc/profile.d/oracle.sh
# 或對 oracle 用戶
su oracle
vim ~/.bashrc

# umask 022
export ORACLE_SID=ORCLCDB
export ORACLE_BASE=/opt/oracle/oracle_base/
export ORACLE_HOME=/opt/oracle/oracle_home/
export PATH=$ORACLE_HOME/bin:$PATH
export NLS_LANG=american_america.AL32UTF8

# 刷新
. /etc/profile.d/oracle.sh
. ~/.bashrc

十、關閉防火墻,或放行端口

systemctl stop firewalld
systemctl disable firewalld

配置好後重啟一遍,使一些配置生效。

十一、解壓安裝

https://docs.oracle.com/en/database/oracle/oracle-database/18/ladbi/running-oracle-universal-installer-to-install-oracle-database.html#GUID-DD4800E9-C651-4B08-A6AC-E5ECCC6512B9

先準備圖形化工具 https://www.cnblogs.com/jhxxb/p/10672764.html

然後切換到 oracle 用戶進行解壓安裝

# 安裝解壓工具
yum install -y unzip

# 在 root 用戶下修改 oracle 用戶密碼
passwd oracle

# 打開 Xmanager,使用 oracle 用戶登錄 xstart

# 解壓至主目錄,前面環境變量已經指定,不要解壓到其它目錄
cd /opt/oracle/oracle_home/
unzip -q /tmp/LINUX.X64_180000_db_home.zip

# 關於安裝界面語言
# 查看
echo $LANG
# 使用中文需要增加中文字體 zysong.ttf
# http://www.3673.com/font/20617.html
# 下載後放入 /opt/oracle/oracle_home/jdk/jre/lib/fonts/fallback/zysong.ttf
# 使用英文設置下 LANG 即可
export LANG=en_US.UTF-8

# 開始安裝
# 在 Oracle 主目錄中,運行 runInstaller 命令以啟動 Oracle 數據庫設置向導,不要停留在其他目錄運行
./runInstaller

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

使用 root 用戶登錄,執行腳本

# 不用進入特定目錄,直接執行即可
/opt/oracle/oraInventory/orainstRoot.sh
/opt/oracle/oracle_home/root.sh

技術分享圖片

技術分享圖片

技術分享圖片

安裝完成,重啟一遍系統

十二、啟動數據庫

打開 xstart,以 oracle 用戶登錄

# 啟動監聽服務
lsnrctl start

技術分享圖片

# 進入 SQL
sqlplus / as sysdba

# 啟動數據庫
startup

技術分享圖片

若出現 ORA-01078 LRM-00109 錯誤,把 /opt/oracle/oracle_base/admin/orcl/pfile/ 下的 init.ora.xxxxxxxx 文件復制到提示目錄,然後改名即可

https://www.cnblogs.com/kerrycode/p/3567388.html

連接 oracle 數據庫

技術分享圖片

關於設置自啟動

https://www.cnblogs.com/jhxxb/p/10647101.html

其他命令

# 監聽配置工具
netmgr

技術分享圖片

# 數據庫配置工具
dbca

技術分享圖片

CentOS7 圖形化方式安裝 Oracle 18c 單實例