<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      liuziyi

      liuziyi

      【實(shí)用腳本】一鍵安裝Oracle19c數(shù)據(jù)庫(kù)

      f3e6092d-af7c-408c-866e-e9fa877ac011
      image
      image
      image
      完整腳本:

      #!/bin/bash
      #Oracle 一鍵安裝工具
      log_file="/var/log/oracle_install_$(date +%Y%m%d_%H%M%S).log"
      # 屏幕輸出只顯示狀態(tài)提示,日志文件記錄完整詳細(xì)信息
      exec > >(tee -a "$log_file") 2>&1
      
      echo -e "\e[1;35m###########################################################\e[0m"
      echo -e "\e[1;35m#                     Oracle 一鍵安裝工具                 #\e[0m"
      echo -e "\e[1;35m###########################################################\e[0m"
      echo -e "安裝日志路徑:${log_file}\n"
      echo "==========================================================" >> "$log_file"
      echo "Oracle 安裝開(kāi)始時(shí)間:$(date '+%Y-%m-%d %H:%M:%S')" >> "$log_file"
      echo "==========================================================" >> "$log_file"
      
      # 步驟1/15:修改主機(jī)名
      echo -e "【步驟1/15】修改主機(jī)名..."
      echo "===== 步驟1:修改主機(jī)名 =====" >> "$log_file"
      hostnamectl set-hostname myoracle  # 保留詳細(xì)輸出到日志
      if [ $? -eq 0 ]; then
          echo -e "[SUCCESS] 主機(jī)名修改為 myoracle"
      else
          echo -e "[ERROR] 主機(jī)名修改失敗,詳細(xì)日志請(qǐng)查看:${log_file}"
      fi
      echo "當(dāng)前主機(jī)名:$(hostname)" >> "$log_file"
      
      # 步驟2/15:添加主機(jī)名與IP對(duì)應(yīng)記錄
      echo -e "\n【步驟2/15】添加主機(jī)名與IP對(duì)應(yīng)記錄..."
      echo -e "\n===== 步驟2:添加主機(jī)名與IP對(duì)應(yīng)記錄 =====" >> "$log_file"
      public_ip=$(hostname -I| grep -o -e '[0-9]\{1,3\}.[0-9]\{1,3\}.[0-9]\{1,3\}.[0-9]\{1,3\}' |head -n 1)
      node_name=$(hostname)
      echo "獲取到的IP:${public_ip},主機(jī)名:${node_name}" >> "$log_file"
      echo -e "${public_ip} ${node_name}">> /etc/hosts
      # 屏幕只顯示添加的記錄,完整hosts文件寫(xiě)入日志
      cat /etc/hosts | grep "${node_name}"
      echo "完整/etc/hosts文件內(nèi)容:" >> "$log_file"
      cat /etc/hosts >> "$log_file"
      echo -e "[SUCCESS] 主機(jī)名與IP對(duì)應(yīng)記錄添加完成"
      
      # 步驟3/15:關(guān)閉Selinux
      echo -e "\n【步驟3/15】關(guān)閉Selinux..."
      echo -e "\n===== 步驟3:關(guān)閉Selinux =====" >> "$log_file"
      sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config
      setenforce 0  # 保留詳細(xì)輸出到日志
      # 屏幕只顯示當(dāng)前模式,完整sestatus輸出寫(xiě)入日志
      current_selinux=$(sestatus | grep "Current mode" | awk '{print $3}')
      echo "Current mode:                   ${current_selinux}"
      echo "完整sestatus輸出:" >> "$log_file"
      sestatus >> "$log_file"
      echo -e "[SUCCESS] Selinux 已設(shè)置為 disabled"
      
      # 步驟4/15:關(guān)閉防火墻
      echo -e "\n【步驟4/15】關(guān)閉防火墻..."
      echo -e "\n===== 步驟4:關(guān)閉防火墻 =====" >> "$log_file"
      systemctl stop firewalld  # 保留詳細(xì)輸出到日志
      systemctl disable firewalld  # 保留詳細(xì)輸出到日志
      # 屏幕只顯示激活狀態(tài),完整status輸出寫(xiě)入日志
      firewall_status=$(systemctl status firewalld | grep "Active" | awk '{print $2,$3}')
      echo "   Active: ${firewall_status}"
      echo "完整firewalld狀態(tài)輸出:" >> "$log_file"
      systemctl status firewalld >> "$log_file"
      echo -e "[SUCCESS] 防火墻已停止并禁用"
      
      # 步驟5/15:準(zhǔn)備目錄并復(fù)制安裝包
      echo -e "\n【步驟5/15】準(zhǔn)備目錄并復(fù)制安裝包..."
      echo -e "\n===== 步驟5:準(zhǔn)備目錄并復(fù)制安裝包 =====" >> "$log_file"
      current_dir=$(pwd)
      target_dir="/soft"
      echo "當(dāng)前目錄:${current_dir},目標(biāo)目錄:${target_dir}" >> "$log_file"
      if [ ! -d "$target_dir" ]; then
          mkdir -p "$target_dir"
          echo -e "[INFO] 已創(chuàng)建目錄: $target_dir"
          echo "創(chuàng)建目錄 ${target_dir} 成功" >> "$log_file"
      else
          echo -e "[INFO] 目錄 $target_dir 已存在"
          echo "目錄 ${target_dir} 已存在" >> "$log_file"
      fi
      # 復(fù)制文件(保留詳細(xì)輸出到日志)
      echo "開(kāi)始復(fù)制當(dāng)前目錄文件到 ${target_dir}..." >> "$log_file"
      cp -r "$current_dir"/* "$target_dir"
      if [ $? -eq 0 ]; then
          echo -e "[SUCCESS] 已將當(dāng)前目錄所有文件復(fù)制至 $target_dir"
          echo "復(fù)制文件完成,目標(biāo)目錄內(nèi)容:" >> "$log_file"
          ls -la "$target_dir" >> "$log_file"
      else
          echo -e "[ERROR] 文件復(fù)制失敗,詳細(xì)日志請(qǐng)查看:${log_file}"
      fi
      
      # 步驟6/15:添加用戶組及用戶(移到Y(jié)um源安裝前,解決cvuqdisk依賴)
      echo -e "\n【步驟6/15】添加用戶組及用戶..."
      echo -e "\n===== 步驟6:添加用戶組及用戶 =====" >> "$log_file"
      # 移除/dev/null,讓組創(chuàng)建詳細(xì)信息寫(xiě)入日志
      groupadd -g 54321 oinstall || echo -e "[INFO] 組 oinstall 已存在"
      groupadd -g 54322 dba || echo -e "[INFO] 組 dba 已存在"
      groupadd -g 54323 oper || echo -e "[INFO] 組 oper 已存在"
      groupadd -g 54324 backupdba || echo -e "[INFO] 組 backupdba 已存在"
      groupadd -g 54325 dgdba || echo -e "[INFO] 組 dgdba 已存在"
      groupadd -g 54326 kmdba || echo -e "[INFO] 組 kmdba 已存在"
      useradd -u 54321 -g oinstall -G dba,backupdba,dgdba,kmdba,oper oracle || echo -e "[INFO] 用戶 oracle 已存在"
      echo "oracle" | passwd --stdin oracle
      # 驗(yàn)證用戶創(chuàng)建結(jié)果
      if id oracle >/dev/null 2>&1; then
          echo -e "[SUCCESS] oracle 用戶及組創(chuàng)建完成"
          echo "oracle用戶詳細(xì)信息:" >> "$log_file"
          id oracle >> "$log_file"
          echo "用戶組列表:" >> "$log_file"
          cat /etc/group | grep -E "oinstall|dba|oper|backupdba|dgdba|kmdba" >> "$log_file"
      else
          echo -e "[ERROR] oracle 用戶及組創(chuàng)建失敗,詳細(xì)日志請(qǐng)查看:${log_file}"
      fi
      
      # 步驟7/15:處理離線Yum源
      echo -e "\n【步驟7/15】處理離線Yum源..."
      echo -e "\n===== 步驟7:處理離線Yum源 =====" >> "$log_file"
      cd /soft
      if [ -f "oracle_repo.tar.gz" ]; then
          echo -e "[INFO] 正在解壓離線Yum源包..."
          echo "開(kāi)始解壓 oracle_repo.tar.gz..." >> "$log_file"
          tar -xvf oracle_repo.tar.gz >> "$log_file" 2>&1  # 解壓詳情寫(xiě)入日志
          if [ $? -eq 0 ]; then
              echo "[INFO] 離線Yum源包解壓完成" >> "$log_file"
          else
              echo "[ERROR] 離線Yum源包解壓失敗" >> "$log_file"
          fi
          cd /soft/my_oracle_repo
          echo -e "[INFO] 正在安裝離線Yum源(包含cvuqdisk)..."
          echo "開(kāi)始安裝離線Yum源rpm包(CVUQDISK_GRP=oinstall)..." >> "$log_file"
          # rpm安裝詳情寫(xiě)入日志,屏幕不顯示
          CVUQDISK_GRP=oinstall rpm -ivh *.rpm --nodeps --force >> "$log_file" 2>&1
          if [ $? -eq 0 ]; then
              echo -e "[SUCCESS] 離線Yum源(含cvuqdisk)安裝完成"
              echo "已安裝的rpm包列表:" >> "$log_file"
              rpm -qa | grep -E "$(ls *.rpm | sed 's/.rpm//g')" >> "$log_file"
          else
              echo -e "[ERROR] 離線Yum源安裝失敗,詳細(xì)日志請(qǐng)查看:${log_file}"
          fi
      else
          echo -e "[WARNING] 未找到 oracle_repo.tar.gz,離線Yum源安裝跳過(guò)"
          echo "未找到 oracle_repo.tar.gz,跳過(guò)離線Yum源安裝" >> "$log_file"
      fi
      echo -e "[SUCCESS] Yum源配置完成"
      
      # 步驟8/15:配置系統(tǒng)參數(shù)文件(sysctl.conf)
      echo -e "\n【步驟8/15】配置系統(tǒng)參數(shù)文件..."
      echo -e "\n===== 步驟8:配置sysctl.conf =====" >> "$log_file"
      chmod 644 /etc/sysctl.conf
      echo "添加Oracle相關(guān)系統(tǒng)參數(shù)到/etc/sysctl.conf..." >> "$log_file"
      cat <<EOF >>/etc/sysctl.conf
      #ORACLE SETTING
      fs.aio-max-nr = 1048576
      fs.file-max = 6815744
      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 = 1048586
      kernel.panic_on_oops = 1
      kernel.shmmax = 2684354560
      kernel.shmall = 655360
      kernel.shmmni = 4096
      vm.swappiness=10
      vm.vfs_cache_pressure=200
      EOF
      echo "重新加載sysctl參數(shù)..." >> "$log_file"
      sysctl -p  # 保留參數(shù)加載詳細(xì)輸出到日志
      echo "修改后的/etc/sysctl.conf文件內(nèi)容:" >> "$log_file"
      cat /etc/sysctl.conf | grep -A 20 "#ORACLE SETTING" >> "$log_file"
      echo -e "[SUCCESS] sysctl.conf 配置完成"
      
      # 步驟9/15:配置資源限制及內(nèi)存掛載
      echo -e "\n【步驟9/15】配置資源限制及內(nèi)存掛載..."
      echo -e "\n===== 步驟9:配置limits.conf及內(nèi)存掛載 =====" >> "$log_file"
      chmod 644 /etc/security/limits.conf
      echo "添加Oracle用戶資源限制到/etc/security/limits.conf..." >> "$log_file"
      cat <<EOF >>/etc/security/limits.conf
      #ORACLE SETTING
      oracle soft nproc 16384
      oracle hard nproc 16384
      oracle soft nofile 16384
      oracle hard nofile 65536
      oracle soft stack 10240
      oracle hard stack 32768
      EOF
      echo "添加/dev/shm掛載配置到/etc/fstab..." >> "$log_file"
      echo "none /dev/shm tmpfs defaults,size=3096m 0 0" >> /etc/fstab 
      echo "重新掛載/dev/shm..." >> "$log_file"
      mount -o remount /dev/shm  # 保留掛載詳細(xì)輸出到日志
      # 屏幕只顯示關(guān)鍵信息,完整df輸出寫(xiě)入日志
      df -h /dev/shm | grep "shm" | awk '{print $1,$2,$3,$4,$5,$6}'
      echo "完整/dev/shm掛載信息:" >> "$log_file"
      df -h /dev/shm >> "$log_file"
      echo "修改后的/etc/security/limits.conf文件內(nèi)容:" >> "$log_file"
      cat /etc/security/limits.conf | grep -A 10 "#ORACLE SETTING" >> "$log_file"
      echo -e "[SUCCESS] 資源限制及內(nèi)存掛載配置完成"
      
      # 步驟10/15:配置系統(tǒng)環(huán)境變量(/etc/profile)
      echo -e "\n【步驟10/15】配置系統(tǒng)環(huán)境變量..."
      echo -e "\n===== 步驟10:配置/etc/profile =====" >> "$log_file"
      chmod 644 /etc/profile
      echo "添加Oracle用戶環(huán)境變量到/etc/profile..." >> "$log_file"
      cat <<EOF >>/etc/profile
      if [ \$USER = "oracle" ]; then
         if [ \$SHELL = "/bin/ksh" ]; then
             ulimit -p 16384
             ulimit -n 65536
          else
             ulimit -u 16384 -n 65536
         fi
      fi
      EOF
      source /etc/profile
      echo "修改后的/etc/profile文件相關(guān)內(nèi)容:" >> "$log_file"
      cat /etc/profile | grep -A 10 "if [ \$USER = \"oracle\" ]" >> "$log_file"
      echo -e "[SUCCESS] /etc/profile 配置完成"
      
      # 步驟11/15:準(zhǔn)備Oracle安裝目錄及權(quán)限
      echo -e "\n【步驟11/15】準(zhǔn)備Oracle安裝目錄及權(quán)限..."
      echo -e "\n===== 步驟11:準(zhǔn)備Oracle安裝目錄及權(quán)限 =====" >> "$log_file"
      install_dirs="/u01/app/oracle /u01/app/oraInventory /u01/app/oracle/product/19.0.0/dbhome_1"
      echo "創(chuàng)建Oracle安裝目錄:${install_dirs}" >> "$log_file"
      mkdir -p $install_dirs  # 保留詳細(xì)輸出到日志
      echo "設(shè)置目錄權(quán)限(oracle:oinstall,775)..." >> "$log_file"
      chown -R oracle:oinstall /u01  # 保留詳細(xì)輸出到日志
      chmod -R 775 /u01  # 保留詳細(xì)輸出到日志
      # 屏幕只顯示關(guān)鍵權(quán)限信息,完整ls輸出寫(xiě)入日志
      ls -ld /u01 | awk '{print $1,$3,$4,$9}'
      echo "Oracle安裝目錄詳細(xì)權(quán)限:" >> "$log_file"
      ls -la /u01/app/ >> "$log_file"
      echo -e "[SUCCESS] Oracle安裝目錄及權(quán)限設(shè)置完成"
      
      # 步驟12/15:配置Oracle用戶環(huán)境變量(.bash_profile)
      echo -e "\n【步驟12/15】配置Oracle用戶環(huán)境變量..."
      echo -e "\n===== 步驟12:配置oracle用戶.bash_profile =====" >> "$log_file"
      echo "添加Oracle環(huán)境變量到/home/oracle/.bash_profile..." >> "$log_file"
      cat <<EOF >>/home/oracle/.bash_profile
      #for oracle
      umask=022
      export PS1
      export TMP=/tmp
      export LANG=en_US.UTF8
      export TMPDIR=\$TMP
      export ORACLE_UNQNAME=orcl11g
      export ORACLE_SID=orcl11g;
      export ORACLE_BASE=/u01/app/oracle; 
      export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1; 
      export ORACLE_TERM=xterm; 
      export NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS";
      export NLS_LANG=AMERICAN_AMERICA.UTF8;
      export PATH=.:\$PATH:\$HOME/.local/bin:\$HOME/bin:\$ORACLE_HOME/bin; 
      export THREADS_FLAG=native;
      export  LD_LIBRARY_PATH=\$ORACLE_HOME/lib:/lib:/usr/lib
      export  CLASSPATH=\$ORACLE_HOME/JRE:\$ORACLE_HOME/jlib:\$ORACLE_HOME/rdbms/jlib
      export ORACLE_OWNR=oracle        
      export PATH=\$PATH:\$ORACLE_HOME/bin
      EOF
      source /home/oracle/.bash_profile
      echo "修改后的.bash_profile文件內(nèi)容:" >> "$log_file"
      cat /home/oracle/.bash_profile | grep -A 25 "#for oracle" >> "$log_file"
      echo "oracle用戶環(huán)境變量驗(yàn)證:" >> "$log_file"
      su - oracle -c "echo \$ORACLE_HOME; echo \$ORACLE_SID" >> "$log_file"
      echo -e "[SUCCESS] oracle 用戶環(huán)境變量配置完成"
      
      # 步驟13/15:移動(dòng)并解壓Oracle安裝包
      echo -e "\n【步驟13/15】移動(dòng)并解壓Oracle安裝包..."
      echo -e "\n===== 步驟13:移動(dòng)并解壓Oracle安裝包 =====" >> "$log_file"
      oracle_zip="/soft/LINUX.X64_193000_db_home.zip"
      target_zip="/u01/app/oracle/product/19.0.0/dbhome_1/LINUX.X64_193000_db_home.zip"
      if [ -f "$oracle_zip" ]; then
          echo "移動(dòng)Oracle安裝包:${oracle_zip} -> ${target_zip}" >> "$log_file"
          mv "$oracle_zip" "$target_zip"  # 保留詳細(xì)輸出到日志
          cd /u01/app/oracle/product/19.0.0/dbhome_1
          echo -e "[INFO] 正在解壓Oracle安裝包(此過(guò)程可能需要幾分鐘)..."
          echo "開(kāi)始解壓Oracle安裝包:${target_zip}" >> "$log_file"
          # 解壓詳細(xì)輸出寫(xiě)入日志,屏幕不顯示文件列表
          unzip LINUX.X64_193000_db_home.zip >> "$log_file" 2>&1
          if [ $? -eq 0 ]; then
              echo -e "[SUCCESS] Oracle安裝包移動(dòng)并解壓完成"
              echo "解壓后目錄大小:" >> "$log_file"
              du -sh /u01/app/oracle/product/19.0.0/dbhome_1 >> "$log_file"
          else
              echo -e "[ERROR] Oracle安裝包解壓失敗,詳細(xì)日志請(qǐng)查看:${log_file}"
          fi
      else
          echo -e "[WARNING] 未找到 Oracle 安裝包(${oracle_zip}),安裝包解壓跳過(guò)"
          echo "未找到Oracle安裝包:${oracle_zip},跳過(guò)解壓" >> "$log_file"
      fi
      
      # 步驟14/15:配置安裝響應(yīng)文件(db_install.rsp)
      echo -e "\n【步驟14/15】配置安裝響應(yīng)文件..."
      echo -e "\n===== 步驟14:配置db_install.rsp =====" >> "$log_file"
      response_dir="/u01/app/oracle/product/19.0.0/dbhome_1/install/response"
      if [ -d "$response_dir" ]; then
          mkdir -p /home/oracle/etc
          chown -R oracle.oinstall /home/oracle/etc
          echo "復(fù)制響應(yīng)文件模板到/soft:${response_dir}/* -> /soft/" >> "$log_file"
          cp  "$response_dir"/* /soft/  # 保留詳細(xì)輸出到日志
          chmod 777 /soft/*.rsp
          chown -R  oracle:oinstall /soft
          echo "創(chuàng)建db_install.rsp響應(yīng)文件:/soft/db_install.rsp" >> "$log_file"
          cat <<EOF >/soft/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=/u01/app/oraInventory
      ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
      ORACLE_BASE=/u01/app/oracle
      oracle.install.db.InstallEdition=EE
      oracle.install.db.OSDBA_GROUP=dba
      oracle.install.db.OSOPER_GROUP=oper
      oracle.install.db.OSBACKUPDBA_GROUP=backupdba
      oracle.install.db.OSKMDBA_GROUP=kmdba
      oracle.install.db.OSRACDBA_GROUP=dba
      oracle.install.db.OSDGDBA_GROUP=dgdba
      EOF
          chown -R  oracle:oinstall /soft/db_install.rsp
          chmod 660 /soft/db_install.rsp
          chown -R  oracle:oinstall /u01/app/oracle/product/19.0.0/dbhome_1
          echo "db_install.rsp文件內(nèi)容:" >> "$log_file"
          cat /soft/db_install.rsp >> "$log_file"
          echo -e "[SUCCESS] db_install.rsp 配置完成"
      else
          echo -e "[WARNING] 安裝包解壓目錄不存在(${response_dir}),響應(yīng)文件配置跳過(guò)"
          echo "安裝包解壓目錄不存在:${response_dir},跳過(guò)響應(yīng)文件配置" >> "$log_file"
      fi
      
      # 步驟15/15:安裝Oracle軟件、配置監(jiān)聽(tīng)及創(chuàng)建數(shù)據(jù)庫(kù)(保留完整日志)
      echo -e "\n【步驟15/15】安裝Oracle軟件及配置數(shù)據(jù)庫(kù)...(此過(guò)程可能需要30分鐘以上,請(qǐng)耐心等待)"
      echo -e "\n===== 步驟15:安裝Oracle軟件及配置數(shù)據(jù)庫(kù) =====" >> "$log_file"
      run_installer="/u01/app/oracle/product/19.0.0/dbhome_1/runInstaller"
      db_rsp="/soft/db_install.rsp"
      if [ -f "$run_installer" ] && [ -f "$db_rsp" ]; then
          echo -e "[INFO] 正在安裝Oracle軟件..."
          echo "開(kāi)始執(zhí)行Oracle安裝:${run_installer} -silent -responseFile ${db_rsp}" >> "$log_file"
          echo "Oracle安裝詳細(xì)日志開(kāi)始($(date '+%Y-%m-%d %H:%M:%S')):" >> "$log_file"
          # 保留Oracle安裝完整輸出(包括進(jìn)度、報(bào)錯(cuò))寫(xiě)入日志
          su - oracle -c "$run_installer -silent -responseFile $db_rsp"
          echo "Oracle安裝執(zhí)行完成($(date '+%Y-%m-%d %H:%M:%S'))" >> "$log_file"
          
          echo "執(zhí)行orainstRoot.sh腳本..." >> "$log_file"
          /u01/app/oraInventory/orainstRoot.sh  # 保留詳細(xì)輸出到日志
          echo "執(zhí)行root.sh腳本..." >> "$log_file"
          /u01/app/oracle/product/19.0.0/dbhome_1/root.sh  # 保留詳細(xì)輸出到日志
      
          echo -e "\n[INFO] 正在配置監(jiān)聽(tīng)..." 
          netca_rsp_src="/u01/app/oracle/product/19.0.0/dbhome_1/assistants/netca/netca.rsp"
          netca_rsp="/soft/netca.rsp"
          if [ -f "$netca_rsp_src" ]; then
              echo "復(fù)制監(jiān)聽(tīng)配置文件:${netca_rsp_src} -> ${netca_rsp}" >> "$log_file"
              cp "$netca_rsp_src" "$netca_rsp"
              chmod 644 "$netca_rsp"
              echo "修改netca.rsp配置文件..." >> "$log_file"
              cat <<EOF >>"$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"}
      EOF
              echo "netca.rsp文件內(nèi)容:" >> "$log_file"
              cat "$netca_rsp" >> "$log_file"
              sleep 60
              echo "開(kāi)始配置監(jiān)聽(tīng):netca -silent -responsefile ${netca_rsp}" >> "$log_file"
              # 保留監(jiān)聽(tīng)配置完整輸出到日志
              su - oracle -c "/u01/app/oracle/product/19.0.0/dbhome_1/bin/netca -silent -responsefile $netca_rsp"
              echo -e "[SUCCESS] 監(jiān)聽(tīng)配置完成"
              echo "監(jiān)聽(tīng)狀態(tài)驗(yàn)證:" >> "$log_file"
              su - oracle -c "lsnrctl status" >> "$log_file"
          else
              echo -e "[WARNING] 監(jiān)聽(tīng)配置文件缺失(${netca_rsp_src}),監(jiān)聽(tīng)配置跳過(guò)"
              echo "監(jiān)聽(tīng)配置文件缺失:${netca_rsp_src},跳過(guò)監(jiān)聽(tīng)配置" >> "$log_file"
          fi
      
          echo -e "\n[INFO] 正在創(chuàng)建數(shù)據(jù)庫(kù)實(shí)例..." 
          dbca_rsp_src="/u01/app/oracle/product/19.0.0/dbhome_1/assistants/dbca/dbca.rsp"
          dbca_rsp="/soft/dbca.rsp"
          if [ -f "$dbca_rsp_src" ]; then
              echo "復(fù)制數(shù)據(jù)庫(kù)配置文件:${dbca_rsp_src} -> ${dbca_rsp}" >> "$log_file"
              cp "$dbca_rsp_src" "$dbca_rsp"
              chmod 644 "$dbca_rsp"
              echo "修改dbca.rsp配置文件..." >> "$log_file"
              cat <<EOF >>"$dbca_rsp"
      responseFileVersion=/oracle/assistants/rspfmt_dbca_response_schema_v19.0.0
      templateName=General_Purpose.dbc
      gdbName=orcl11g
      sid=orcl11g
      databaseConfigType=SI
      sysPassword=Tiger@123
      systemPassword=Tiger@123
      characterSet=AL32UTF8
      nationalCharacterSet=UTF8
      listeners=LISTENER
      memoryPercentage=40
      databaseType=MULTIPURPOSE
      automaticMemoryManagement=false
      EOF
              echo "dbca.rsp文件內(nèi)容:" >> "$log_file"
              cat "$dbca_rsp" >> "$log_file"
              sleep 60
              echo "開(kāi)始創(chuàng)建數(shù)據(jù)庫(kù)實(shí)例:dbca -silent -createDatabase ..." >> "$log_file"
              echo "數(shù)據(jù)庫(kù)創(chuàng)建詳細(xì)日志開(kāi)始($(date '+%Y-%m-%d %H:%M:%S')):" >> "$log_file"
              # 保留數(shù)據(jù)庫(kù)創(chuàng)建完整輸出到日志
              su - oracle -c "/u01/app/oracle/product/19.0.0/dbhome_1/bin/dbca -silent -createDatabase -templateName /u01/app/oracle/product/19.0.0/dbhome_1/assistants/dbca/templates/General_Purpose.dbc -gdbname orcl11g -sid orcl11g -syspassword Tiger@123 -systempassword Tiger@123 -emConfiguration NONE -characterSet ZHS16GBK"
              echo "數(shù)據(jù)庫(kù)創(chuàng)建執(zhí)行完成($(date '+%Y-%m-%d %H:%M:%S'))" >> "$log_file"
              echo -e "[SUCCESS] 數(shù)據(jù)庫(kù)實(shí)例創(chuàng)建完成"
              echo "數(shù)據(jù)庫(kù)狀態(tài)驗(yàn)證:" >> "$log_file"
              su - oracle -c "sqlplus -S / as sysdba <<EOF
      select status from v\$instance;
      exit;
      EOF" >> "$log_file"
          else
              echo -e "[WARNING] 數(shù)據(jù)庫(kù)配置文件缺失(${dbca_rsp_src}),數(shù)據(jù)庫(kù)創(chuàng)建跳過(guò)"
              echo "數(shù)據(jù)庫(kù)配置文件缺失:${dbca_rsp_src},跳過(guò)數(shù)據(jù)庫(kù)創(chuàng)建" >> "$log_file"
          fi
          echo -e "[SUCCESS] Oracle軟件安裝及數(shù)據(jù)庫(kù)配置完成"
      else
          echo -e "[WARNING] 安裝程序(${run_installer})或響應(yīng)文件(${db_rsp})缺失,Oracle軟件安裝及數(shù)據(jù)庫(kù)配置跳過(guò)"
          echo "安裝程序或響應(yīng)文件缺失:${run_installer} / ${db_rsp},跳過(guò)安裝" >> "$log_file"
      fi
      
      echo -e "\n==========================================================" >> "$log_file"
      echo "Oracle 安裝結(jié)束時(shí)間:$(date '+%Y-%m-%d %H:%M:%S')" >> "$log_file"
      echo "==========================================================" >> "$log_file"
      
      echo -e "\n\e[1;32m###########################################################\e[0m"
      echo -e "\e[1;32m#                     Oracle 安裝流程完成                 #\e[0m"
      echo -e "\e[1;32m###########################################################\e[0m"
      echo -e "\n\e[1;33m安裝完成提示:\e[0m"
      echo -e "1. 安裝日志路徑:${log_file}(包含完整執(zhí)行細(xì)節(jié)和報(bào)錯(cuò)信息)"
      echo -e "2. 數(shù)據(jù)庫(kù)信息:"
      echo -e "   - SID:orcl11g"
      echo -e "   - 端口:1521"
      echo -e "   - 管理員賬號(hào):sys/system"
      echo -e "   - 管理員密碼:Tiger@123"
      echo -e "3. 登錄方式:su - oracle 后執(zhí)行 sqlplus / as sysdba"
      echo -e "4. 若安裝失敗,請(qǐng)查看日志文件排查問(wèn)題(重點(diǎn)關(guān)注 [ERROR] 標(biāo)記)"
      

      目錄文件:
      image

      posted on 2025-11-04 19:50  劉子毅  閱讀(9)  評(píng)論(0)    收藏  舉報(bào)

      導(dǎo)航

      主站蜘蛛池模板: 麻豆国产成人av高清在线| 亚洲AV无码一区二区一二区色戒| 午夜通通国产精品福利| 男女啪啪高潮激烈免费版 | 九九热在线观看视频免费| 曰韩无码av一区二区免费| 亚洲天天堂天堂激情性色| 国产精品久久久久aaaa| 奇米网777狠狠狠俺| 青草热在线观看精品视频| 亚洲成av人片无码天堂下载| 亚洲精品久久| 人妻系列无码专区无码中出 | 久热久热久热久热久热久热| 蜜臀在线播放一区在线播放| 这里只有精品免费视频| 亚洲中文字幕av天堂| 国产黄色免费看| 婷婷四房综合激情五月在线| 色老头亚洲成人免费影院| 永久免费无码国产| 国产一区二区三区不卡视频 | 亚洲嫩模一区二区三区| 国产精品视频不卡一区二区| 亚洲日本欧洲二区精品| 绿春县| 精品午夜福利在线视在亚洲| 久久久天堂国产精品女人| 久久99久久99精品免观看| www久久只有这里有精品| 如东县| 开心五月激情五月俺亚洲| 蜜桃av无码免费看永久| 成人av专区精品无码国产| 中文亚洲成A人片在线观看| 欧美白妞大战非洲大炮| 日韩视频一区二区三区视频| 中文字幕亚洲综合久久综合| 青春草在线视频观看| 国产精品一区二区国产馆| 日韩人妻一区中文字幕|