1. 程式人生 > 其它 >Oracle 19c單例項部署

Oracle 19c單例項部署

目錄

Oracle 19c單例項部署:

本機虛擬機器伺服器環境如下:(作業系統安裝過程略)

系統資源相關資訊
OS(最小化安裝) OracleLinux7.9
記憶體 8G
SWAP 8G
/tmp >1G
/u01 60G
網絡卡:(ens33) IP:192.168.153.130
資料庫相關資訊
資料庫版本 19.3.0.0
補丁版本 暫無

1、配置yum:

  1. root執行以下操作

    cd /etc/yum.repos.d/
    mkdir bak
    mv *.repo ./bak
    vi  /etc/yum.repos.d/public-yum-ol7.repo
    

    新增以下內容:

    [OEL7U9]
    name=OEL7U9
    baseurl=file:///mnt/cdrom
    gpgcheck=0
    enabled=1
    
  2. 建立掛載目錄:

    mkdir -p /mnt/cdrom
    
  3. 掛在映象盤:

    mount /dev/sr0 /mnt/cdrom
    mount -o loop -t iso9660 /u01/software/*.iso /mnt/cdrom
    
  4. 清空yum快取:

    yum clean all
    yum makecache
    yum list
    

2、安裝rpm包:

  1. 資料庫所需相關rpm包:

    yum install libst* -y
    yum install gcc* -y
    yum install libaio* -y
    yum install glibc* -y
    yum install compat* -y
    yum install libx* -y
    yum install libX* -y
    yum install make* -y
    yum install sysstat* -y
    yum install ksh* -y
    yum install smartmontools* -y
    yum install net-tools* -y
    
  2. xorg圖形化相關rpm包

    yum install  xorg-x11-apps -y
    
  3. 日常管理:

    yum install unzip -y
    yum install redhat-lsb -y
    

3、設定hostname:

hostnamectl set-hostname <host_name>

4、配置hostname解析:

vi /etc/hosts

新增以下內容:

<IP> <HOSTNAME>

5、配置時鐘同步服務(ntp):

  1. 安裝ntp服務:

    yum install -y ntp
    
  2. 啟動ntp服務:

    systemctl start ntpd
    
  3. 開機自啟動:

    systemctl enable ntpd.service
    
  4. 編輯ntp.conf,註釋 server 0. 1. 2.等等:

    vi /etc/ntp.conf
    
  5. 增加以下內容:(與閘道器進行時鐘同步):

    server <GATEWAY_IP> iburst
    
  6. ntp微調:

    vi /etc/sysconfig/ntpd
    

    編輯以上檔案,新增 **-x **如下:

    # Command line options for ntpd
    OPTIONS="-x -g"
    
  7. 重啟NTPD服務:

    systemctl restart ntpd.service
    
  8. 檢視NTP同步:

    ntpq -p
    
  9. 檢視ntpd狀態:

    systemctl status ntpd
    
  10. 關閉並禁用chronyd服務:

    systemctl stop chronyd.service
    systemctl disable chronyd.service
    

    不禁用在重啟系統時自動啟動會導致ntpd服務無法啟動

6、檢查及配置核心引數:

  1. 檢查核心版本:

    cat /etc/redhat-release
    cat /etc/os-release
    lsb_release -id
    uname -r
    
  2. 配置核心引數:

    vi /etc/sysctl.conf
    

    新增以下內容:

    net.ipv4.ip_local_port_range = 9000 65500
    net.ipv4.tcp_rmem = 4096 87380 4194304
    net.ipv4.tcp_wmem = 4096 16384 4194304
    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
    
  3. 使核心引數生效:

    /sbin/sysctl -p
    
  4. 配置oracle使用者系統資源限制:

    編輯/etc/security/limits.conf檔案:

    vi /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
    

7、關閉透明大頁:

  1. 檢查大頁是否開啟:

    Red Hat Enterprise Linux kernels:
    # cat /sys/kernel/mm/redhat_transparent_hugepage/enabled
    Other kernels:
    # cat /sys/kernel/mm/transparent_hugepage/enabled
    如下顯示錶示:開啟狀態
    [always] never 
    

    注意:
    如果提示如下檔案不存在,則表示hugepage已從核心中移除:

    neither /sys/kernel/mm/transparent_hugepage nor /sys/kernel/mm/redhat_transparent_hugepage files exist.

  2. 禁用透明大頁:

    對於Oracle Linux 7 and Red Hat Enterprise Linux 7,修改/etc/default/grub

    vi /etc/default/grub
    

    GRUB_CMDLINE_LINUX列新增以下內容:

    transparent_hugepage=never
    

    示例:

    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 rd.lvm.lv=vg_root/lv_root rd.lvm.lv=vg_root/lv_swap rhgb quiet transparent_hugepage=never"
    GRUB_DISABLE_RECOVERY="true"
    
  3. 執行grub2–mkconfig 重新生成grub.cfg檔案:

    grub2-mkconfig -o /boot/grub2/grub.cfg
    

8、建立使用者與目錄:

  1. 建立使用者:

    groupadd -g 1100 oinstall
    groupadd -g 1101 dba
    groupadd -g 1102 oper
    groupadd -g 1201 asmdba
    
    useradd -u 1100 oracle -g oinstall -G dba,asmdba,oper
    
  2. 修改使用者密碼:

    passwd oracle
    
  3. 建立安裝目錄並授權:

    mkdir -p /u01/app/oracle/product/19.3.0/dbhome_1
    mkdir -p /u01/app/oraInventory
    mkdir -p /u01/app/oracle/cfgtoollogs
    mkdir -p /u01/software
    chown -R oracle:oinstall /u01
    

9、關閉防火牆及selinux:

(1)關閉防火牆:
  1. 檢視當前防火牆狀態:

    # firewall-cmd --state
    
    running
    
  2. 永久關閉防火牆(需重啟後生效):

    #關閉防火牆:
    systemctl stop firewalld.service
    #禁用防火牆:
    systemctl disable firewalld.service
    
    #禁用防火牆輸出如下:
    Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
    Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
    
  3. 修改後檢視防火牆狀態:

    # firewall-cmd --state
    not running
    

    或:

    # systemctl list-unit-files|grep firewalld.service
    firewalld.service                             disabled
    
(2)關閉selinux:
  1. 檢視selinux狀態:

    getenforce
    
  2. 臨時關閉selinux:

    setenforce 0
    
  3. 禁用selinux:

    vi /etc/selinux/config
    

    更改SELINUX=disabled(重啟後生效)

    # This file controls the state of SELinux on the system.
    # SELINUX= can take one of these three values:
    #     enforcing - SELinux security policy is enforced.
    #     permissive - SELinux prints warnings instead of enforcing.
    #     disabled - No SELinux policy is loaded.
    SELINUX=disabled
    # SELINUXTYPE= can take one of these two values:
    #     targeted - Targeted processes are protected,
    #     mls - Multi Level Security protection.
    SELINUXTYPE=targeted
    

10、配置使用者環境變數:

su - oracle

vi /home/oracle/.bash_profile

新增以下內容:

export PS1='\[\e[1;31m\][$ORACLE_SID]\[\e[0m\][\u@\h \w]\$ '
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/19.3.0/dbhome_1
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
export NLS_DATE_FORMAT='YYYY-MM-DD HH24:MI:SS'
export ORACLE_SID=orcl
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$ORACLE_HOME/OPatch/oplan:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH

使使用者環境變數生效:

source ~/.bash_profile

11、安裝資料庫軟體:

1、配置圖形化顯示:

#設定環境變數:
export DISPLAY=192.168.153.1:0.0

#顯示圖形化時間視窗:
xclock

2、上傳授權與解壓

上傳/u01/software目錄下並授權:

chown oracle:oinstall /u01/software/LINUX.X64_193000_db_home.zip

將安裝包解壓到$ORACLE_HOME目錄下:

su - oracle
unzip /u01/software/LINUX.X64_193000_db_home.zip -d $ORACLE_HOME/

3、啟動圖形化安裝:

cd $ORACLE_HOME
./runInstaller

僅安裝軟體,next

單例項資料庫安裝,next

安裝企業版,next

識別$ORACLE_HOME和$ORACLE_BASE目錄,next

識別Inventory目錄,next

自動選擇OS使用者組,next

自動執行root.sh指令碼,輸入root使用者密碼,next

執行安裝預檢查,next

通過預先檢查後顯示安裝資訊,install

開始進行安裝

安裝進度到%63彈出對話方塊是否用root使用者執行指令碼,yes

Oracle19c資料庫軟體安裝完成,close

12、dbca建立資料庫:

# su - oracle
$ export DISPLAY=192.168.153.1:0.0
$ dbca

dbca啟動建立資料庫圖形化視窗,next

高階配置,next

預設選項,next

輸入例項名,取消勾選建立容器資料庫,使用經典模式,next

資料庫儲存屬性使用模板檔案,next

暫時不開啟閃回區和歸檔,next

建立資料庫監聽,輸入Listener name,預設Listener port為(1521),next

預設,next

點選Memory:使用AMM記憶體管理,設定PGA、SGA大小

點選Sizing:設定程序數

點選Character sets:設定資料庫字符集與國家字符集

點選Sample schemas:勾選新增示例使用者到資料庫,next

取消勾選配置em埠,next

設定資料庫管理使用者system與sys密碼,next

密碼太簡單會有以上資訊彈出,點選yes忽略

建立資料庫,next

資料庫配置助手展示的資料庫配置資訊,Finish

開始進行資料庫安裝,待安裝操作完成

資料庫orcl建立完畢

點選Password Management,管理當前使用者狀態及其密碼

設定ORACLE_SID=orcl使用sqlplus / as sysdba連線19c orcl資料庫

[orcl][oracle@ocp19c /u01/app/oracle/product/19.3.0/dbhome_1]$ sqlplus / as sysdba

SQL*Plus: Release 19.0.0.0.0 - Production on Sat Apr 16 16:21:22 2022
Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle.  All rights reserved.


Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0

SQL> 

hr使用者指令碼:(執行完畢後按提示輸入內容)

SQL> @?/demo/schema/human_resources/hr_main.sql