虛擬機環境:centos 7.8
鏡像文件:http://mirrors.aliyun.com/centos/7/isos/x86_64/
數據庫版本:Oracle 12c R2
安裝文件:linuxx64_12201_database.zip
安裝文件地址: https://www.oracle.com/database/technologies/oracle-database-software-downloads.html#12c
1.創建運行oracle數據庫的系統用戶和用戶組,用root賬號登錄運行一下指令:
groupadd oinstall #創建用戶組oinstall
groupadd dba #創建用戶組dba
useradd -g oinstall -g dba -m oracle #創建oracle用戶,並加入到oinstall和dba用戶組
groups oracle
#查詢用戶組是否授權成功
passwd oracle #設置用戶oracle的登陸密碼,不設置密碼,在CentOS的圖形登陸界面沒法登陸
id oracle #查看新建的oracle用戶
2.創建oracle數據庫安裝目錄,運行以下命令:
mkdir -p /data/oraInventory #oracle數據庫配置文件目錄 mkdir -p /data/database #oracle數據庫軟件包解壓目錄 cd /data ls #創建完畢檢查一下 chown -R oracle:oinstall /data/oracle #設置目錄所有者為oinstall用戶組的oracle用戶 chown -R oracle:oinstall /data/oraInventory chown -R oracle:oinstall /data/database
3.修改OS系統標識,oracle默認不支持Centos系統安裝,修改文件/etc/RedHat-release 內容改為RedHat-7
vi /etc/redhat-release#修改成紅色部分文字 redhat-7
4.安裝oracle數據庫所需要的的軟件包,通過 yum install binutils來查看,執行以下指令,檢查依賴軟件包:
yum install binutils-2.* compat-libstdc++-33* elfutils-libelf-0.* elfutils-libelf-devel-* gcc-4.* gcc-c++-4.* glibc-2.* glibc-common-2.* glibc-devel-2.* glibc-headers-2.* ksh-2* libaio-0.* libaio-devel-0.* libgcc-4.* libstdc++-4.* libstdc++-devel-4.* make-3.* sysstat-7.* unixODBC-2.* unixODBC-devel-2.* pdksh*
5.關閉防火牆和selinux
centos 7.X 默認使用firewall作為防火牆,這里關閉firewall就好:
systemctl stop firewalld.service #停止firewall systemctl disable firewalld.service #禁止firewall開機啟動
vi /etc/selinux/config #SELINUX=enforcing #注釋掉 #SELINUXTYPE=targeted #注釋掉 SELINUX=disabled #增加 :wq! #保存退出 setenforce 0 #使配置立即生效
6.修改內核參數
vi /etc/sysctl.conf #紅色部分是要添加sysctl.conf內容 net.ipv4.icmp_echo_ignore_broadcasts = 1 net.ipv4.conf.all.rp_filter = 1 fs.file-max = 6815744 #設置最大打開文件數 fs.aio-max-nr = 1048576 kernel.shmall = 2097152 #共享內存的總量,8G內存設置:2097152*4k/1024/1024 kernel.shmmax = 2147483648 #最大共享內存的段大小 kernel.shmmni = 4096 #整個系統共享內存端的最大數 kernel.sem = 250 32000 100 128 net.ipv4.ip_local_port_range = 9000 65500 #可使用的IPv4端口范圍 net.core.rmem_default = 262144 net.core.rmem_max= 4194304 net.core.wmem_default= 262144 net.core.wmem_max= 1048576
7.對oracle用戶設置權限,添加以下文件
vi /etc/security/limits.conf #紅色部分要添加到Limits.conf內容 oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536
8.配置用戶的環境變量,添加以下代碼:
vi /home/oracle/.bash_profile #紅色部分是要追加bash_profile內容部分 export ORACLE_BASE=/data/oracle #oracle數據庫安裝目錄 export ORACLE_HOME=$ORACLE_BASE/product/12.2.0/db_1 #oracle數據庫路徑 export ORACLE_SID=orcl #oracle啟動數據庫實例名 export ORACLE_TERM=xterm #xterm窗口模式安裝 export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH #添加系統環境變量 export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib #添加系統環境變量 export LANG=C #防止安裝過程出現亂碼 export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK #設置Oracle客戶端字符集,必須與Oracle安裝時設置的字符集保持一致
配置完成,:wq!保存退出,運行source /home/oracle/.bash_profile時上述配置生效
9.通過Xftp把文件傳到虛擬機,然后獲取安裝包文件后解壓安裝包
unzip linuxx64_12201_database.zip -d /data/database/ #解壓文件2 chown -R oracle:oinstall /data/database/database/ #分配安裝文件授權Oracle
10.Oracle安裝,使用oracle用戶登錄系統,使用命令行跳轉到data/database/database目錄下,輸入./runInstaller 調出安裝頁面:
后續安裝和window環境安裝差不多,具體安裝選擇項,可自行選擇安裝,
如果在檢查的時候,有警告,可以先忽略,繼續安裝
我安裝點時候,只有三個警告,是先解決警告后,點check Again 解決了
警告問題:
警告一.swap size
第一步:使用root用戶,在/tmp(隨意),下執行下面語句
dd if=/dev/zero of=swapfree bs=32k count=65515
(增加swap大小為bs*count,bs為block,count為數量)
第二步:將創建的文件用做交換分區
執行語句:mkswap swapfree
第三步:開啟這個交換空間
執行語句:swapon swapfree
第四步:通過free命令查看,交換空間在原來交換空間的基礎上增加了2G
第五步:
警告二.RAC:Soft Limit:maximm stack size Failed
ulimit -a 查看資源限制
ulimit -s 10240
然后忽略警告即可
警告三. 缺少包,compat-libcap1-1.10 yum install 包名全名,即可
yum install compat-libcap1-1.10
10.配置listener.ora文件
vi $ORACLE_HOME/network/admin/listener.ora
設置HOST=0.0.0.0。
11.配置文件和本機測試:
[oracle@localhost pfile]$ pwd /data/oracle/admin/orcl/pfile
[oracle@localhost pfile]$ cp init.ora.962016224738 /data/oracle/product/12.2.0/db_1/dbs/initorcl.ora
#使用sqlplus命令登錄Oracle,重啟服務器sqlplus /nologconn / as sysdba;
#再輸入startup,回車.這步是啟動oracle服務。startup
12.啟動監聽
lsnrctl start #開啟監聽 dbstart # 啟動用戶實例
然后就安裝完了