轉載:https://blog.csdn.net/sl1992/article/details/80457935
親測沒問題。html
Linux命令行安裝Oracle12cnode
下載Oracle12.2.0.1.0版本,選擇Linux x86-64安裝包linux
vi /etc/hosts
,添加配置項192.168.1.200 solang //本機ip 和 機器名稱
git
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.1.200 solang //本機ip 和 機器名稱
參見Oracle Database 12c Release 2 (12.2) Installation On Oracle Linux 6 (OL6) and 7 (OL7)sql
Perform either the Automatic Setup or the Manual Setup to complete the
basic prerequisites. The Additional Setup is required for all installations.
執行自動設置或手動設置完成基本先決條件。全部安裝都須要進行附加設置。shell
這裏咱們選擇手動設置先決條件數據庫
[root@solang ~]# vi /etc/sysctl.conf
添加以下行:ruby
fs.file-max = 6815744 kernel.sem = 250 32000 100 128 kernel.shmmni = 4096 kernel.shmall = 1073741824 kernel.shmmax = 4398046511104 kernel.panic_on_oops = 1 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576 net.ipv4.conf.all.rp_filter = 2 net.ipv4.conf.default.rp_filter = 2 fs.aio-max-nr = 1048576 net.ipv4.ip_local_port_range = 9000 65500
運行sysctl -p
命令更改當前內核參數bash
[root@solang ~]# sysctl -p net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1 net.ipv6.conf.lo.disable_ipv6 = 1 vm.swappiness = 0 net.ipv4.neigh.default.gc_stale_time = 120 net.ipv4.conf.all.rp_filter = 0 net.ipv4.conf.default.rp_filter = 0 net.ipv4.conf.default.arp_announce = 2 net.ipv4.conf.lo.arp_announce = 2 net.ipv4.conf.all.arp_announce = 2 net.ipv4.tcp_max_tw_buckets = 5000 net.ipv4.tcp_syncookies = 1 net.ipv4.tcp_max_syn_backlog = 1024 net.ipv4.tcp_synack_retries = 2 fs.file-max = 6815744 kernel.sem = 250 32000 100 128 kernel.shmmni = 4096 kernel.shmall = 1073741824 kernel.shmmax = 4398046511104 kernel.panic_on_oops = 1 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576 net.ipv4.conf.all.rp_filter = 2 net.ipv4.conf.default.rp_filter = 2 fs.aio-max-nr = 1048576 net.ipv4.ip_local_port_range = 9000 65500
[root@solang ~]# vi /etc/security/limits.conf
添加以下行:cookie
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
yum install binutils -y yum install compat-libcap1 -y yum install compat-libstdc++-33 -y yum install compat-libstdc++-33.i686 -y yum install glibc -y yum install glibc.i686 -y yum install glibc-devel -y yum install glibc-devel.i686 -y yum install ksh -y yum install libaio -y yum install libaio.i686 -y yum install libaio-devel -y yum install libaio-devel.i686 -y yum install libX11 -y yum install libX11.i686 -y yum install libXau -y yum install libXau.i686 -y yum install libXi -y yum install libXi.i686 -y yum install libXtst -y yum install libXtst.i686 -y yum install libgcc -y yum install libgcc.i686 -y yum install libstdc++ -y yum install libstdc++.i686 -y yum install libstdc++-devel -y yum install libstdc++-devel.i686 -y yum install libxcb -y yum install libxcb.i686 -y yum install make -y yum install nfs-utils -y yum install net-tools -y yum install smartmontools -y yum install sysstat -y yum install unixODBC -y yum install unixODBC-devel -y
groupadd -g 54321 oinstall groupadd -g 54322 dba groupadd -g 54323 oper useradd -u 54321 -g oinstall -G dba,oper oracle [root@solang ~]# groupadd -g 54321 oinstall [root@solang ~]# groupadd -g 54322 dba [root@solang ~]# groupadd -g 54323 oper [root@solang ~]# useradd -u 54321 -g oinstall -G dba,oper oracle
沒必要非要按照叫oinstall,和dba,只不過通常文檔上就這麼叫
oinstall組用於安裝數據庫
dba組用於管理數據庫
-g 表示這個用戶的主組
-G 標識這個用戶的其它組
一個用戶能夠屬於多個用戶組,可是一個用戶只能指定一個組做爲其主組
The following steps must be performed, whether you did the manual or automatic setup.
不管是手動仍是自動設置,都必須執行如下步驟。
[oracle@solang ~]$ passwd oracle
[root@solang ~]# vi /etc/selinux/config ## 將`SELINUX`修改成permissive SELINUX=permissive [root@solang ~]# setenforce Permissive setenforce: SELinux is disabled
[root@solang ~]# systemctl stop firewalld [root@solang ~]# systemctl disable firewalld
[root@solang ~]# mkdir -p /usr/local/products/oracle12c [root@solang ~]# chown -R oracle:oinstall /usr/local [root@solang ~]# chmod -R 775 /usr/local/
也能夠按照Oracle安裝文檔上的路徑進行設置
切換到新添加的oracle用戶名下,在oracle用戶下配置環境變量
[root@solang ~]# su oracle [oracle@solang ~]$ vi .bash_profile export TMP=/tmp export TMPDIR=$TMP export ORACLE_HOSTNAME=solang export ORACLE_UNQNAME=cdb1 export ORACLE_BASE=/usr/local/products export ORACLE_HOME=$ORACLE_BASE/oracle12c export ORACLE_SID=cdb1 export PATH=/usr/sbin:/usr/local/bin:$PATH export PATH=$ORACLE_HOME/bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
使配置當即生效
[oracle@solang ~]$ source .bash_profile [oracle@solang ~]$ echo $ORACLE_HOME /usr/local/products/oracle12c
將下載的linuxx64_12201_database.zip上傳到Linux系統/home/oracle
目錄下
解壓
[oracle@solang ~]$ unzip linuxx64_12201_database.zip
壓縮包解壓完成後獲得名爲database
的文件夾,其中包含安裝文件。
[oracle@solang ~]$ cd database/response/ [oracle@solang response]$ vi db_install.rsp
此數據庫安裝響應文件db_install.rsp修改的地方,參見Oracle Universal Installer (OUI) Silent Installations中12cR2進行設置
oracle.install.option=INSTALL_DB_SWONLY UNIX_GROUP_NAME=oinstall INVENTORY_LOCATION=/usr/local/products/oracle12c/oraInventory ORACLE_HOME=/usr/local/products/oracle12c ORACLE_BASE=/usr/local/products oracle.install.db.InstallEdition=EE oracle.install.db.OSDBA_GROUP=dba oracle.install.db.OSBACKUPDBA_GROUP=dba oracle.install.db.OSDGDBA_GROUP=dba oracle.install.db.OSKMDBA_GROUP=dba oracle.install.db.OSRACDBA_GROUP=dba
因爲安裝時本人將指定保存清單文件的位置設置到了$ORACLE_BASE目錄下,出現了警告
WARNING The Central Inventory is located in the Oracle base.
ACTION: Oracle recommends placing this Central Inventory in a location outside the Oracle base directory.
警告 中央清單位於Oracle base中。
操做:Oracle建議將此中央清單放在Oracle基本目錄以外的位置。
建議將清單文件位置修改成INVENTORY_LOCATION=/usr/local/oraInventory
,不在$ORACLE_BASE目錄下便可。
注意:若是不想修改db_install.rsp,能夠採用命令行方式直接指定參數進行安裝,參見4.3靜默安裝Oracle
db_install.rsp完整內容以下
#################################################################### ## Copyright(c) Oracle Corporation 1998,2017. All rights reserved.## ## ## ## Specify values for the variables listed below to customize ## ## your installation. ## ## ## ## Each variable is associated with a comment. The comment ## ## can help to populate the variables with the appropriate ## ## values. ## ## ## ## IMPORTANT NOTE: This file contains plain text passwords and ## ## should be secured to have read permission only by oracle user ## ## or db administrator who owns this installation. ## ## ## #################################################################### #------------------------------------------------------------------------------- # Do not change the following system generated value. #------------------------------------------------------------------------------- oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v12.2.0 #------------------------------------------------------------------------------- # Specify the installation option. # It can be one of the following: # - INSTALL_DB_SWONLY # - INSTALL_DB_AND_CONFIG # - UPGRADE_DB #------------------------------------------------------------------------------- oracle.install.option=INSTALL_DB_SWONLY #------------------------------------------------------------------------------- # Specify the Unix group to be set for the inventory directory. #------------------------------------------------------------------------------- UNIX_GROUP_NAME=oinstall #------------------------------------------------------------------------------- # Specify the location which holds the inventory files. # This is an optional parameter if installing on # Windows based Operating System. #------------------------------------------------------------------------------- INVENTORY_LOCATION=/usr/local/products/oracle12c/oraInventory #------------------------------------------------------------------------------- # Specify the complete path of the Oracle Home. #------------------------------------------------------------------------------- ORACLE_HOME=/usr/local/products/oracle12c #------------------------------------------------------------------------------- # Specify the complete path of the Oracle Base. #------------------------------------------------------------------------------- ORACLE_BASE=/usr/local/products #------------------------------------------------------------------------------- # Specify the installation edition of the component. # # The value should contain only one of these choices. # - EE : Enterprise Edition # - SE2 : Standard Edition 2 #------------------------------------------------------------------------------- oracle.install.db.InstallEdition=EE ############################################################################### # # # PRIVILEGED OPERATING SYSTEM GROUPS # # ------------------------------------------ # # Provide values for the OS groups to which SYSDBA and SYSOPER privileges # # needs to be granted. If the install is being performed as a member of the # # group "dba", then that will be used unless specified otherwise below. # # # # The value to be specified for OSDBA and OSOPER group is only for UNIX based # # Operating System. # # # ############################################################################### #------------------------------------------------------------------------------ # The OSDBA_GROUP is the OS group which is to be granted SYSDBA privileges. #------------------------------------------------------------------------------- oracle.install.db.OSDBA_GROUP=dba #------------------------------------------------------------------------------ # The OSOPER_GROUP is the OS group which is to be granted SYSOPER privileges. # The value to be specified for OSOPER group is optional. #------------------------------------------------------------------------------ oracle.install.db.OSOPER_GROUP=dba #------------------------------------------------------------------------------ # The OSBACKUPDBA_GROUP is the OS group which is to be granted SYSBACKUP privileges. #------------------------------------------------------------------------------ oracle.install.db.OSBACKUPDBA_GROUP=dba #------------------------------------------------------------------------------ # The OSDGDBA_GROUP is the OS group which is to be granted SYSDG privileges. #------------------------------------------------------------------------------ oracle.install.db.OSDGDBA_GROUP=dba #------------------------------------------------------------------------------ # The OSKMDBA_GROUP is the OS group which is to be granted SYSKM privileges. #------------------------------------------------------------------------------ oracle.install.db.OSKMDBA_GROUP=dba #------------------------------------------------------------------------------ # The OSRACDBA_GROUP is the OS group which is to be granted SYSRAC privileges. #------------------------------------------------------------------------------ oracle.install.db.OSRACDBA_GROUP=dba ############################################################################### # # # Grid Options # # # ############################################################################### #------------------------------------------------------------------------------ # Specify the type of Real Application Cluster Database # # - ADMIN_MANAGED: Admin-Managed # - POLICY_MANAGED: Policy-Managed # # If left unspecified, default will be ADMIN_MANAGED #------------------------------------------------------------------------------ oracle.install.db.rac.configurationType= #------------------------------------------------------------------------------ # Value is required only if RAC database type is ADMIN_MANAGED # # Specify the cluster node names selected during the installation. # Leaving it blank will result in install on local server only (Single Instance) # # Example : oracle.install.db.CLUSTER_NODES=node1,node2 #------------------------------------------------------------------------------ oracle.install.db.CLUSTER_NODES= #------------------------------------------------------------------------------ # This variable is used to enable or disable RAC One Node install. # # - true : Value of RAC One Node service name is used. # - false : Value of RAC One Node service name is not used. # # If left blank, it will be assumed to be false. #------------------------------------------------------------------------------ oracle.install.db.isRACOneInstall= #------------------------------------------------------------------------------ # Value is required only if oracle.install.db.isRACOneInstall is true. # # Specify the name for RAC One Node Service #------------------------------------------------------------------------------ oracle.install.db.racOneServiceName= #------------------------------------------------------------------------------ # Value is required only if RAC database type is POLICY_MANAGED # # Specify a name for the new Server pool that will be configured # Example : oracle.install.db.rac.serverpoolName=pool1 #------------------------------------------------------------------------------ oracle.install.db.rac.serverpoolName= #------------------------------------------------------------------------------ # Value is required only if RAC database type is POLICY_MANAGED # # Specify a number as cardinality for the new Server pool that will be configured # Example : oracle.install.db.rac.serverpoolCardinality=2 #------------------------------------------------------------------------------ oracle.install.db.rac.serverpoolCardinality= ############################################################################### # # # Database Configuration Options # # # ############################################################################### #------------------------------------------------------------------------------- # Specify the type of database to create. # It can be one of the following: # - GENERAL_PURPOSE # - DATA_WAREHOUSE # GENERAL_PURPOSE: A starter database designed for general purpose use or transaction-heavy applications. # DATA_WAREHOUSE : A starter database optimized for data warehousing applications. #------------------------------------------------------------------------------- oracle.install.db.config.starterdb.type= #------------------------------------------------------------------------------- # Specify the Starter Database Global Database Name. #------------------------------------------------------------------------------- oracle.install.db.config.starterdb.globalDBName= #------------------------------------------------------------------------------- # Specify the Starter Database SID. #------------------------------------------------------------------------------- oracle.install.db.config.starterdb.SID= #------------------------------------------------------------------------------- # Specify whether the database should be configured as a Container database. # The value can be either "true" or "false". If left blank it will be assumed # to be "false". #------------------------------------------------------------------------------- oracle.install.db.ConfigureAsContainerDB= #------------------------------------------------------------------------------- # Specify the Pluggable Database name for the pluggable database in Container Database. #------------------------------------------------------------------------------- oracle.install.db.config.PDBName= #------------------------------------------------------------------------------- # Specify the Starter Database character set. # # One of the following # AL32UTF8, WE8ISO8859P15, WE8MSWIN1252, EE8ISO8859P2, # EE8MSWIN1250, NE8ISO8859P10, NEE8ISO8859P4, BLT8MSWIN1257, # BLT8ISO8859P13, CL8ISO8859P5, CL8MSWIN1251, AR8ISO8859P6, # AR8MSWIN1256, EL8ISO8859P7, EL8MSWIN1253, IW8ISO8859P8, # IW8MSWIN1255, JA16EUC, JA16EUCTILDE, JA16SJIS, JA16SJISTILDE, # KO16MSWIN949, ZHS16GBK, TH8TISASCII, ZHT32EUC, ZHT16MSWIN950, # ZHT16HKSCS, WE8ISO8859P9, TR8MSWIN1254, VN8MSWIN1258 #------------------------------------------------------------------------------- oracle.install.db.config.starterdb.characterSet= #------------------------------------------------------------------------------ # This variable should be set to true if Automatic Memory Management # in Database is desired. # If Automatic Memory Management is not desired, and memory allocation # is to be done manually, then set it to false. #------------------------------------------------------------------------------ oracle.install.db.config.starterdb.memoryOption= #------------------------------------------------------------------------------- # Specify the total memory allocation for the database. Value(in MB) should be # at least 256 MB, and should not exceed the total physical memory available # on the system. # Example: oracle.install.db.config.starterdb.memoryLimit=512 #------------------------------------------------------------------------------- oracle.install.db.config.starterdb.memoryLimit= #------------------------------------------------------------------------------- # This variable controls whether to load Example Schemas onto # the starter database or not. # The value can be either "true" or "false". If left blank it will be assumed # to be "false". #------------------------------------------------------------------------------- oracle.install.db.config.starterdb.installExampleSchemas= ############################################################################### # # # Passwords can be supplied for the following four schemas in the # # starter database: # # SYS # # SYSTEM # # DBSNMP (used by Enterprise Manager) # # # # Same password can be used for all accounts (not recommended) # # or different passwords for each account can be provided (recommended) # # # ############################################################################### #------------------------------------------------------------------------------ # This variable holds the password that is to be used for all schemas in the # starter database. #------------------------------------------------------------------------------- oracle.install.db.config.starterdb.password.ALL= #------------------------------------------------------------------------------- # Specify the SYS password for the starter database. #------------------------------------------------------------------------------- oracle.install.db.config.starterdb.password.SYS= #------------------------------------------------------------------------------- # Specify the SYSTEM password for the starter database. #------------------------------------------------------------------------------- oracle.install.db.config.starterdb.password.SYSTEM= #------------------------------------------------------------------------------- # Specify the DBSNMP password for the starter database. # Applicable only when oracle.install.db.config.starterdb.managementOption=CLOUD_CONTROL #------------------------------------------------------------------------------- oracle.install.db.config.starterdb.password.DBSNMP= #------------------------------------------------------------------------------- # Specify the PDBADMIN password required for creation of Pluggable Database in the Container Database. #------------------------------------------------------------------------------- oracle.install.db.config.starterdb.password.PDBADMIN= #------------------------------------------------------------------------------- # Specify the management option to use for managing the database. # Options are: # 1. CLOUD_CONTROL - If you want to manage your database with Enterprise Manager Cloud Control along with Database Express. # 2. DEFAULT -If you want to manage your database using the default Database Express option. #------------------------------------------------------------------------------- oracle.install.db.config.starterdb.managementOption= #------------------------------------------------------------------------------- # Specify the OMS host to connect to Cloud Control. # Applicable only when oracle.install.db.config.starterdb.managementOption=CLOUD_CONTROL #------------------------------------------------------------------------------- oracle.install.db.config.starterdb.omsHost= #------------------------------------------------------------------------------- # Specify the OMS port to connect to Cloud Control. # Applicable only when oracle.install.db.config.starterdb.managementOption=CLOUD_CONTROL #------------------------------------------------------------------------------- oracle.install.db.config.starterdb.omsPort= #------------------------------------------------------------------------------- # Specify the EM Admin user name to use to connect to Cloud Control. # Applicable only when oracle.install.db.config.starterdb.managementOption=CLOUD_CONTROL #------------------------------------------------------------------------------- oracle.install.db.config.starterdb.emAdminUser= #------------------------------------------------------------------------------- # Specify the EM Admin password to use to connect to Cloud Control. # Applicable only when oracle.install.db.config.starterdb.managementOption=CLOUD_CONTROL #------------------------------------------------------------------------------- oracle.install.db.config.starterdb.emAdminPassword= ############################################################################### # # # SPECIFY RECOVERY OPTIONS # # ------------------------------------ # # Recovery options for the database can be mentioned using the entries below # # # ############################################################################### #------------------------------------------------------------------------------ # This variable is to be set to false if database recovery is not required. Else # this can be set to true. #------------------------------------------------------------------------------- oracle.install.db.config.starterdb.enableRecovery= #------------------------------------------------------------------------------- # Specify the type of storage to use for the database. # It can be one of the following: # - FILE_SYSTEM_STORAGE # - ASM_STORAGE