在centos7中静默安装oracle11g
生活随笔
收集整理的這篇文章主要介紹了
在centos7中静默安装oracle11g
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Centos7靜默安裝Oracle11G r2
I’m coming !!!
如題,進行操作吧!!!!!
環境準備
軟件包在此提取碼:vt9f
步驟
安裝yum源
在這里用的是阿里云的yum源
[root@test ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo [root@test ~]# yum repolist 已加載插件:fastestmirror Loading mirror speeds from cached hostfile* base: mirrors.aliyun.com* epel: mirrors.yun-idc.com* extras: mirrors.aliyun.com* updates: mirrors.aliyun.com 源標識 源名稱 狀態 base/7/x86_64 CentOS-7 - Base - mirrors.aliyun.com 10,068+2 centos centos 9,909+2 epel/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 13,414+2 extras/7/x86_64 CentOS-7 - Extras - mirrors.aliyun.com 412 updates/7/x86_64 CentOS-7 - Updates - mirrors.aliyun.com 900 repolist: 34,703檢查空間狀態
[root@test ~]# grep MemTotal /proc/meminfo # 物理內存不小于1G MemTotal: 1865280 kB [root@test ~]# df -h # 可用硬盤不小于8G 文件系統 容量 已用 可用 已用% 掛載點 /dev/mapper/centos-root 17G 8.1G 9.0G 48% / devtmpfs 899M 0 899M 0% /dev tmpfs 911M 4.0K 911M 1% /dev/shm tmpfs 911M 9.7M 902M 2% /run tmpfs 911M 0 911M 0% /sys/fs/cgroup /dev/sr0 8.8G 8.8G 0 100% /mnt/guazai /dev/sda1 1014M 142M 873M 14% /boot tmpfs 183M 0 183M 0% /run/user/0 [root@test ~]# grep SwapTotal /proc/meminfo # Swap分區空間不小于2G SwapTotal: 2097148 kB [root@test ~]# vim /etc/redhat-release # 修改CentOS系統標識(由于Oracle默認不支持CentOS) redhat-tian關閉防火墻
[root@test ~]# systemctl stop firewalld.service [root@test ~]# systemctl disable firewalld.service安裝依賴包
[root@test ~]# yum -y install binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel[root@test ~]# rpm -q binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel binutils-2.27-43.base.el7_8.1.x86_64 compat-libcap1-1.10-7.el7.x86_64 compat-libstdc++-33-3.2.3-72.el7.x86_64 gcc-4.8.5-39.el7.x86_64 gcc-c++-4.8.5-39.el7.x86_64 glibc-2.17-307.el7.1.x86_64 glibc-2.17-307.el7.1.i686 glibc-devel-2.17-307.el7.1.x86_64 ksh-20120801-142.el7.x86_64 libaio-0.3.109-13.el7.x86_64 libaio-devel-0.3.109-13.el7.x86_64 libgcc-4.8.5-39.el7.x86_64 libgcc-4.8.5-39.el7.i686 libstdc++-4.8.5-39.el7.x86_64 libstdc++-4.8.5-39.el7.i686 libstdc++-devel-4.8.5-39.el7.x86_64 libXi-1.7.9-1.el7.x86_64 libXtst-1.2.3-1.el7.x86_64 make-3.82-24.el7.x86_64 sysstat-10.1.5-19.el7.x86_64 unixODBC-2.3.1-14.el7.x86_64 unixODBC-devel-2.3.1-14.el7.x86_64如果上述命令報錯,則直接直接下面的命令。
[root@test ~]# yum -y install xz wget gcc-c++ ncurses ncurses-devel cmake make perl openssl openssl-devel gcc* libxml2 libxml2-devel curl-devel libjpeg* libpng* freetype* make gcc-c++ cmake bison perl perl-devel perl perl-devel glibc-devel.i686 glibc-devel libaio readline-devel zlib.x86_64 zlib-devel.x86_64 libcurl-* net-tool* sysstat lrzsz dos2unix telnet.x86_64 iotop unzip ftp.x86_64 xfs* expect vim psmisc openssh-client* libaio bzip2 epel-release automake binutils bzip2 elfutils expat gawk gcc ksh less make openssh-server rpm sysstat unzip unzip cifs-utils libXext.x86_64 glibc.i686 binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel expat gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers libaio libaio-devel libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel libnsl創建oracle用戶
[root@test ~]# groupadd -g 502 oinstall # 產品的所有者 [root@test ~]# groupadd -g 503 dba # 數據庫的安全審核 [root@test ~]# groupadd -g 504 oper [root@test ~]# groupadd -g 505 asmadmin [root@test ~]# useradd -u 502 -g oinstall -G oinstall,dba,asmadmin,oper -s /bin/bash -m oracle [root@test ~]# passwd oracle # 當前設置的密碼為1231qqq...A 新的 密碼: 重新輸入新的 密碼: passwd:所有的身份驗證令牌已經成功更新。解壓Oracle數據庫安裝包
將Oracle 11gR2安裝文件上傳(可以使用sftp上傳)到該操作目錄下面,然后順序解壓安裝文件到該目錄。
[root@test ~]# su - oracle [oracle@test ~]$ ll 總用量 2295592 -rw-r--r-- 1 oracle oinstall 1239269270 7月 22 18:15 linux.x64_11gR2_database_1of2.zip -rw-r--r-- 1 oracle oinstall 1111416131 7月 22 18:13 linux.x64_11gR2_database_2of2.zip解壓 [oracle@test ~]$ unzip linux.x64_11gR2_database_1of2.zip [oracle@test ~]$ unzip linux.x64_11gR2_database_2of2.zip [oracle@test ~]$ ls database linux.x64_11gR2_database_1of2.zip linux.x64_11gR2_database_2of2.zip [oracle@test ~]$ cd database/ [oracle@test database]$ ls doc install response rpm runInstaller sshsetup stage welcome.html修改內核配置
[root@test ~]# vim /etc/sysctl.conf11 fs.aio-max-nr = 104857612 fs.file-max = 681574413 kernel.shmall = 209715214 kernel.shmmax = 429496729515 kernel.shmmni = 409616 kernel.sem = 250 32000 100 12817 net.ipv4.ip_local_port_range = 9000 6550018 net.core.rmem_default = 26214419 net.core.rmem_max = 419430420 net.core.wmem_default = 26214421 net.core.wmem_max = 1048576##### # kernel.shmall : 該參數控制可以使用的共享內存的總頁數。Linux共享內存頁大小為4KB,共享內存段的大小都是共享內存頁大小的整數倍。一個共享內存段的最大大小是16G,那么需要共享內存頁數是16GB/4KB=16777216KB/4KB=4194304(頁),也就是64Bit系統下16GB物理內存,設置kernel.shmall = 4194304 符合要求。 # kernel.shmmax: 是核心參數中最重要的參數之一,用于定義單個共享內存段的最大值。64位linux系統:可取的最大值為物理內存值-1byte,建議值為多于物理內存的一半,例如,如果為16GB物理內存,可取16*1024*1024*1024-1=17179869183。 # kernel.shmmni: 該參數是共享內存段的最大數量。shmmni缺省值4096,一般肯定是夠用了。 # kernel.sem = 250 32000 100 128 的意思是: 250是參數semmsl的值,表示一個信號量集合中能夠包含的信號量最大數目。 32000是參數semmns的值,表示系統內可允許的信號量最大數目。 100是參數semopm的值,表示單個semopm()調用在一個信號量集合上可以執行的操作數量。 128是參數semmni的值,表示系統信號量集合總數。完成后使用命令sysctl -p載入sysctl配置文件,如果-p后面不接任何的參數則默認執行/etc/sysctl.conf文件 [root@test ~]# sysctl -p 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修改操作系統的配置
[oracle@test ~]$ exit 登出 [root@test ~]# vim /etc/security/limits.conf 在末尾進行如下的配置62 oracle soft nproc 204763 oracle hard nproc 1638464 oracle soft nofile 102465 oracle hard nofile 6553666 oracle soft stack 10240修改系統環境
[root@test ~]# vim /etc/profile77 if [ $USER = "oracle" ]; then78 if [ $SHELL = "/bin/ksh" ]; then79 ulimit -p 1638480 ulimit -n 6553581 else82 ulimit -u 16384 -n 6553583 fi84 umask 022285 fi86 unset i執行,使環境變量生效 [root@test ~]# . /etc/profile創建Oracle安裝目錄
[root@test ~]# su - oracle [oracle@test ~]$ mkdir -p ~/tools/oracle11g修改環境變量
[oracle@test ~]$ vim ~/.bash_profile 在文件末尾添加如下配置13 export ORACLE_BASE=/home/oracle/tools/oracle11g14 export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_115 export ORACLE_SID=orcl16 export ORACLE_UNQNAME=orcl17 export NLS_LANG=.AL32UTF818 export PATH=${PATH}:${ORACLE_HOME}/bin/:$ORACLE_HOME/lib64執行環境變量配置使其生效[oracle@test ~]$ . ~/.bash_profile # .相當于source修改Oracle配置文件
備份一份配置文件模板到當前 [oracle@test ~]$ cp database/response/db_install.rsp .[oracle@test ~]$ vim db_install.rsp 29 oracle.install.option=INSTALL_DB_AND_CONFIG # 選擇安裝類型:1.只裝數據庫軟件 2.安裝數據庫軟件并建庫 3.升級數據庫,此處為安裝數據庫軟件并建庫 37 ORACLE_HOSTNAME=test # 指定操作系統主機名,通過hostname命令獲得 42 UNIX_GROUP_NAME=oinstall # 指定oracleinventory目錄的所有者,通常會是oinstall或者dba 47 INVENTORY_LOCATION=/home/oracle/tools/oraInventory # 指定產品清單oracle inventory目錄的路徑,如果是Win平臺下可以省略 78 SELECTED_LANGUAGES=en,zh_CN # 指定數據庫語言,可以選擇多個,用逗號隔開。選擇en, zh_CN(英文和簡體中文) 83 ORACLE_HOME=/home/oracle/tools/oracle11g/product/11.2.0/dbhome_1 # 設置ORALCE_HOME的路徑 88 ORACLE_BASE=/home/oracle/tools/oracle11g # 設置ORALCE_BASE的路徑 99 oracle.install.db.InstallEdition=EE # 選擇Oracle安裝數據庫軟件的版本(企業版,標準版,標準版1),不同的版本功能不同,EE為企業版 142 oracle.install.db.DBA_GROUP=dba # 指定擁有OSDBA、OSOPER權限的用戶組,通常會是dba組 147 oracle.install.db.OPER_GROUP=oper 160 oracle.install.db.config.starterdb.type=GENERAL_PURPOSE # 選擇數據庫的用途,一般用途/事物處理,數據倉庫,此處選擇的是一般用途 165 oracle.install.db.config.starterdb.globalDBName=orcl # 指定GlobalName 170 oracle.install.db.config.starterdb.SID=orcl # 指定SID 184 oracle.install.db.config.starterdb.characterSet=AL32UTF8 # 選擇字符集。不正確的字符集會給數據顯示和存儲帶來麻煩無數。通常中文選擇的有ZHS16GBK簡體中文庫,建議選擇unicode的AL32UTF8國際字符集 192 oracle.install.db.config.starterdb.memoryOption=true # 11g的新特性自動內存管理,也就是SGA_TARGET和PAG_AGGREGATE_TARGET都不用設置了,Oracle會自動調配兩部分大小。 200 oracle.install.db.config.starterdb.memoryLimit=1024 # 指定Oracle自動管理內存的大小,最小是256MB,如果后面安裝時報錯 原因: 系統中的可用共享內存總量 (908 MB) 小于所選目標數據庫內存 (1024 MB)。操作: 請為目標數據庫內存輸入小于 908MB 的值。那么將它的值調小一點即可 206 oracle.install.db.config.starterdb.installExampleSchemas=false # 是否載入模板示例 233 oracle.install.db.config.starterdb.password.ALL=oracle # 設定所有數據庫用戶使用同一個密碼,其它數據庫用戶就不用單獨設置了。 261 oracle.install.db.config.starterdb.control=DB_CONTROL # 數據庫本地管理工具DB_CONTROL,遠程集中管理工具GRID_CONTROL 273 oracle.install.db.config.starterdb.dbcontrol.enableEmailNotification=false # 是否啟用Email通知, 啟用后會將告警等信息發送到指定郵箱 278 oracle.install.db.config.starterdb.dbcontrol.emailAddress=tian15511@163.com # 設置通知EMAIL地址 299 oracle.install.db.config.starterdb.automatedBackup.enable=false # 設置自動備份,和OUI里的自動備份一樣。 324 oracle.install.db.config.starterdb.storageType=FILE_SYSTEM_STORAGE #自動備份,要求指定使用的文件系統存放數據庫文件還是ASM,這里指定的是存放數據庫的文件 332 oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=/home/oracle/tools/oracle1 1g/oradata # 使用文件系統存放數據庫文件才需要指定數據文件、控制文件、Redo log的存放目錄 339 oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=/home/oracle/tools/ora cle11g/fast_recovery_area # 使用文件系統存放數據庫文件才需要指定備份恢復目錄 385 DECLINE_SECURITY_UPDATES=true # False表示不需要設置安全更新,注意,在11.2的靜默安裝中疑似有一個BUG,ResponseFile中必須指定為true,否則會提示錯誤,不管是否正確填寫了郵件地址靜默安裝oracle11gr2
[oracle@test ~]$ ls database linux.x64_11gR2_database_1of2.zip tools db_install.rsp linux.x64_11gR2_database_2of2.zip [oracle@test ~]$ cd database/ [oracle@test database]$ ./runInstaller -silent -ignoreSysPrereqs -responseFile /home/oracle/db_install.rsp # ignoreSysPrereqs:讓Oracle忽略系統檢查,因為Oracle官方聲明只支持Linux服務器產品,所以要在非服務器產品的Linux上安裝就必須指定此參數。-ignorePrereq: 如果哪塊沒有符合要求,不添加可能就安裝不過去了 # silent :讓安裝程序以靜默模式運行。 # responseFile:指定一個應答文件。出現以下字樣則代表安裝成功: [oracle@test database]$ 以下配置腳本需要以 "root" 用戶的身份執行。#!/bin/sh #要運行的 Root 腳本/home/oracle/tools/oraInventory/orainstRoot.sh /home/oracle/tools/oracle11g/product/11.2.0/dbhome_1/root.sh 要執行配置腳本, 請執行以下操作:1. 打開一個終端窗口2. 以 "root" 身份登錄3. 運行腳本4. 返回此窗口并按 "Enter" 鍵繼續Successfully Setup Software.ps:中間可能會報出各種各樣的問題,請耐心等待,即可安裝成功,如果報出系統中的可用共享內存總量 (908 MB) 小于所選目標數據庫內存,則在配置文件中修改第200行目標數據庫的大小即可開啟一個root身份的終端,執行腳本: [root@test ~]# . /home/oracle/tools/oraInventory/orainstRoot.sh 更改權限/home/oracle/tools/oraInventory. 添加組的讀取和寫入權限。 刪除全局的讀取, 寫入和執行權限。更改組名/home/oracle/tools/oraInventory 到 oinstall. 腳本的執行已完成。[root@test ~]# . /home/oracle/tools/oracle11g/product/11.2.0/dbhome_1/root.sh Check /home/oracle/tools/oracle11g/product/11.2.0/dbhome_1/install/root_test_2020-07-31_10-34-21.log for the output of root script安裝成功!進行測試
查看端口 [root@test ~]# netstat -nutlp | grep 1521 tcp6 0 0 :::1521 :::* LISTEN 23905/tnslsnr 登錄數據庫 [root@test ~]# su - oracle [oracle@test ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.1.0 Production on Fri Jul 31 10:46:14 2020Copyright (c) 1982, 2009, Oracle. All rights reserved.Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing optionsSQL> select status from v$instance; # 查詢當前實例的狀態STATUS ------------ OPENSQL> select userenv('language') from dual; # 查看字符集USERENV('LANGUAGE') ---------------------------------------------------- AMERICAN_AMERICA.AL32UTF8SQL> select * from v$version; # 查看數據庫的版本BANNER -------------------------------------------------------------------------------- Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production PL/SQL Release 11.2.0.1.0 - Production CORE 11.2.0.1.0 Production TNS for Linux: Version 11.2.0.1.0 - Production NLSRTL Version 11.2.0.1.0 - ProductionSQL> select name from v$database ; # 查看當前數據庫名NAME --------- ORCL創建臨時表空間table_test [root@test ~]# mkdir /home/oracle/oracle_file [root@test ~]# chown -R oracle.oinstall /home/oracle/oracle_file/ [root@test ~]# ll /home/oracle/ 總用量 2295624 drwxr-xr-x. 8 oracle oinstall 128 7月 29 18:05 database -rw-r--r--. 1 oracle oinstall 22867 7月 29 18:05 db_install.rsp -rw-r--r--. 1 oracle oinstall 1239269270 7月 29 17:48 linux.x64_11gR2_database_1of2.zip -rw-r--r--. 1 oracle oinstall 1111416131 7月 29 17:48 linux.x64_11gR2_database_2of2.zip drwxr-xr-x. 2 oracle oinstall 6 7月 31 11:25 oracle_file -r--r-----. 1 oracle oinstall 104865792 7月 31 11:23 table_test.dbf drwxr-xr-x. 5 oracle oinstall 58 7月 29 18:08 toolsSQL> create temporary tablespace table_test tempfile # 表空間名稱2 '/home/oracle/oracle_file/table_test.dbf' # 文件路徑3 size 100m ; # 初始大小 在另一個終端查看文件是否創建成功 [root@test ~]# ls /home/oracle/oracle_file/ table_test.dbf激活Scott用戶 SQL> alter user scott account unlock ; User altered.SQL> alter user scott identified by scott ; User altered.SQL> select username,account_status from dba_users ;USERNAME ACCOUNT_STATUS ------------------------------ -------------------------------- MGMT_VIEW OPEN SYS OPEN SYSTEM OPEN DBSNMP OPEN SYSMAN OPEN SCOTT OPEN OUTLN EXPIRED & LOCKED FLOWS_FILES EXPIRED & LOCKED MDSYS EXPIRED & LOCKED ORDSYS EXPIRED & LOCKED EXFSYS EXPIRED & LOCKEDUSERNAME ACCOUNT_STATUS ------------------------------ -------------------------------- WMSYS EXPIRED & LOCKED APPQOSSYS EXPIRED & LOCKED APEX_030200 EXPIRED & LOCKED OWBSYS_AUDIT EXPIRED & LOCKED ORDDATA EXPIRED & LOCKED CTXSYS EXPIRED & LOCKED ANONYMOUS EXPIRED & LOCKED XDB EXPIRED & LOCKED ORDPLUGINS EXPIRED & LOCKED OWBSYS EXPIRED & LOCKED SI_INFORMTN_SCHEMA EXPIRED & LOCKEDUSERNAME ACCOUNT_STATUS ------------------------------ -------------------------------- OLAPSYS EXPIRED & LOCKED ORACLE_OCM EXPIRED & LOCKED XS$NULL EXPIRED & LOCKED MDDATA EXPIRED & LOCKED DIP EXPIRED & LOCKED APEX_PUBLIC_USER EXPIRED & LOCKED SPATIAL_CSW_ADMIN_USR EXPIRED & LOCKED SPATIAL_WFS_ADMIN_USR EXPIRED & LOCKED30 rows selected.?
> 以下是oracle數據庫提供的系統表: > dba_開頭dba_users # 數據庫用戶信息dba_segments # 表段信息dba_extents # 數據區信息dba_objects # 數據庫對象信息dba_tablespaces # 數據庫表空間信息dba_data_files # 數據文件設置信息dba_temp_files # 臨時數據文件信息dba_rollback_segs # 回滾段信息dba_ts_quotas # 用戶表空間配額信息dba_free_space # 數據庫空閑空間信息dba_profiles # 數據庫用戶資源限制信息dba_sys_privs # 用戶的系統權限信息dba_tab_privs # 用戶具有的對象權限信息dba_col_privs # 用戶具有的列對象權限信息dba_role_privs # 用戶具有的角色信息dba_audit_trail # 審計跟蹤記錄信息dba_stmt_audit_opts # 審計設置信息dba_audit_object # 對象審計結果信息dba_audit_session # 會話審計結果信息dba_indexes # 用戶模式的索引信息 > user_開頭user_objects # 用戶對象信息user_source # 數據庫用戶的所有資源對象信息user_segments # 用戶的表段信息user_tables # 用戶的表對象信息user_tab_columns # 用戶的表列信息user_constraints # 用戶的對象約束信息user_sys_privs # 當前用戶的系統權限信息user_tab_privs # 當前用戶的對象權限信息user_col_privs # 當前用戶的表列權限信息user_role_privs # 當前用戶的角色權限信息user_indexes # 用戶的索引信息user_ind_columns # 用戶的索引對應的表列信息user_cons_columns # 用戶的約束對應的表列信息user_clusters # 用戶的所有簇信息user_clu_columns # 用戶的簇所包含的內容信息user_cluster_hash_expressions # 散列簇的信息 > v$開頭v$database # 數據庫信息v$datafile # 數據文件信息v$controlfile # 控制文件信息v$logfile # 重做日志信息v$instance # 數據庫實例信息v$log # 日志組信息v$loghist # 日志歷史信息v$sga # 數據庫SGA信息v$parameter # 初始化參數信息v$process # 數據庫服務器進程信息v$bgprocess # 數據庫后臺進程信息v$controlfile_record_section # 控制文件記載的各部分信息v$thread # 線程信息v$datafile_header # 數據文件頭所記載的信息v$archived_log # 歸檔日志信息v$archive_dest # 歸檔日志的設置信息v$logmnr_contents # 歸檔日志分析的DML DDL結果信息v$logmnr_dictionary # 日志分析的字典文件信息v$logmnr_logs # 日志分析的日志列表信息v$tablespace # 表空間信息v$tempfile # 臨時文件信息v$filestat # 數據文件的I/O統計信息v$undostat # Undo數據信息v$rollname # 在線回滾段信息v$session # 會話信息v$transaction # 事務信息v$rollstat # 回滾段統計信息v$pwfile_users # 特權用戶信息v$sqlarea # 當前查詢過的sql語句訪問過的資源及相關的信息v$sql # 與v$sqlarea基本相同的相關信息v$sysstat # 數據庫系統狀態信息 > all_開頭all_users # 數據庫所有用戶的信息all_objects # 數據庫所有的對象的信息all_def_audit_opts # 所有默認的審計設置信息all_tables # 所有的表對象信息all_indexes # 所有的數據庫對象索引的信息 > session_開頭session_roles # 會話的角色信息session_privs # 會話的權限信息 > index_開頭index_stats # 索引的設置和存儲信息 > 偽表dual # 系統偽列表信息總結
以上是生活随笔為你收集整理的在centos7中静默安装oracle11g的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: plsql的安装与部署
- 下一篇: 腾讯云使用Python发邮件