安裝操作系統版本為Redhat 7.6
內核 8
內存 20G
Oracle軟件包為 18c
EMCC軟件包為 13c
替換yum:
1
2
3
|
rpm -qa|
grep
yum
rpm -qa|
grep
yum|
xargs
rpm -e --nodeps(不檢查依賴,直接刪除rpm包)
rpm -qa |
grep
yum (查詢確認)
|
下載centos 的yum並生成新的緩存
1
2
3
4
5
6
7
|
wget http:
//mirrors
.163.com
/centos/7/os/x86_64/Packages/yum-3
.4.3-167.el7.centos.noarch.rpm
wget http:
//mirrors
.163.com
/centos/7/os/x86_64/Packages/yum-metadata-parser-1
.1.4-10.el7.x86_64.rpm
wget http:
//mirrors
.163.com
/centos/7/os/x86_64/Packages/yum-plugin-fastestmirror-1
.1.31-53.el7.noarch.rpm
wget http:
//mirrors
.163.com
/centos/7/os/x86_64/Packages/yum-utils-1
.1.31-53.el7.noarch.rpm<br><br>rpm -ivh *.rpm<br><br>wget -O
/etc/yum
.repos.d
/Centos-7
.repo http:
//mirrors
.aliyun.com
/repo/Centos-7
.repo<br><br>vim
/etc/yum
.repos.d
/Centos-7
.repo<br><br>替換所有的$releasever為7<br>:%s/$releasever
/7/g
<br><br>yum clean all<br>yum makecache<br><br>yum repolist
|
1
2
3
4
|
vim
/etc/hostname
將主機名改為oraemcc
重啟電腦生效
|
設置環境變量
1
2
|
echo
"xhost +
export
DISPLAY=oraemcc:0.0" >>
/etc/profile
|
修改系統參數
1
2
3
4
|
echo
"net.ipv4.ip_local_port_range = 11000 65000 <br>fs.aio-max-nr = 1048576 <br>fs.file-max = 6815744 <br>kernel.shmmni = 4096 <br>kernel.sem = 250 32000 100 128 <br>kernel.shmall = 2097152 <br>kernel.shmmax = 4294967295<br>net.ipv4.icmp_echo_ignore_broadcasts = 1 <br>net.ipv4.conf.all.rp_filter = 1 <br>net.core.rmem_default = 262144 <br>net.core.rmem_max= 4194304 <br>net.core.wmem_default= 262144 <br>net.core.wmem_max= 1048576"
>> /etc/sysctl.conf
sysctl -p 刷新sysctl文件使之生效
systemctl restart network 重啟網絡
|
關閉防火牆並設置開機不啟動
1.防火牆
1
|
systemctl stop firewalld.service;systemctl disable firewalld.service
|
2.SELINUX
1
2
3
|
setenforce 0
sed -i
's/^SELINUX=.*/SELINUX=disabled/'
/etc/selinux/config
|
安裝預裝包
1
2
3
|
yum install -y compat-libstdc+* elfutils-libelf-* elfutils-libelf-devel-* gcc-c++* libaio-devel-* libgcc-* libstdc+* \<br>libstdc+±devel-* make-* numactl-* sysstat-* glibc-common-* glibc-devel-* glibc-headers-* glibc-utils-* glibc-* \<br>binutils-* gcc-* libaio-* glibc-common-* libstdc++-* libXtst-* sysstat-* glibc-devel-* glibc-devel-*
yum install -y binutils compat-libcap1 compat-libstdc++-33 ksh libaio libaio-devel libgcc libstdc++ \<br>libstdc++-devel libXext libXtst libX11 libXau libxcb libXi make sysstat libutil.so.1 tree<br><br>wget http:
//mirror.centos.org/centos/7/os/x86_64/Packages/glibc-devel-2.17-307.el7.1.i686.rpm<br><br>rpm -ivh glibc-devel-2.17-307.el7.1.i686.rpm
|
創建用戶及組
1
2
3
4
5
6
7
|
groupadd oinstall #創建安裝oracle程序用戶組
groupadd dba #創建DBA用戶組
useradd -g dba -m oracle #創建用戶oracle 並加入到dba組
usermod -a -G oinstall oracle #將用戶oracle加入到oinstall組
passwd oracle #修改用戶oracle的密碼# id oracle #查看用戶oracle的信息
id oracle #查看用戶Oracle的信息
|
創建安裝目錄
1
|
mkdir -p /u01/app/oracle/product/18c <br><br>mkdir /u01/app/oracle/{middleware,middlewareagent}
|
將Oracle軟件包下載至/u01/app/oracle/profuct/18c目錄下
授權該目錄給Oracle
1
|
chown -R oracle.oinstall /u01/*
|
修改oracle用戶的安全性能設置
修改文件: /etc/security/limits.conf
在文件最后一行前,追加以下內容
1
2
3
4
5
6
7
8
9
10
11
|
echo "
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/18c/
export ORACLE_SID=orcl
export ORACLE_UNQNAME=orcl
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.AL32UTF8" >> /home/oracle/.bashrc
source /home/oracle/.bashrc
|
安裝Oracle軟件
解壓安裝包
1
|
cd /u01/app/oracle/product/18c<br>unzip oracle\ DB2018_Linux.zip
|
切換至Oracle用戶 su - oracle
安裝主程序
1
|
cp /u01/app/oracle/product/18c/install/response/db_install.rsp /u01/app/oracle/product/18c/install/response/db_install.bck.rsp #備份文件模板<br><br>vim /db_install.rsp<br><br>oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v18.0.0<br>oracle.install.option=INSTALL_DB_SWONLY # 安裝類型<br>UNIX_GROUP_NAME=oinstall # 安裝組<br>INVENTORY_LOCATION=/u01/app/oracle/oraInventory #INVENTORY目錄(不填就是默認值)<br>ORACLE_HOME=/u01/app/oracle/product/18c/<br>ORACLE_BASE=/u01/app/oracle/<br>oracle.install.db.InstallEdition=EE #企業版本<br>oracle.install.db.OSDBA_GROUP=dba<br>oracle.install.db.OSOPER_GROUP=oinstall<br>oracle.install.db.OSBACKUPDBA_GROUP=oinstall<br>oracle.install.db.OSDGDBA_GROUP=oinstall<br>oracle.install.db.OSKMDBA_GROUP=oinstall<br>oracle.install.db.OSRACDBA_GROUP=oinstall<br>oracle.install.db.config.starterdb.type=GENERAL_PURPOSE #數據庫類型<br>oracle.install.db.config.starterdb.globalDBName=orcl<br>oracle.install.db.config.starterdb.SID=orcl<br>oracle.install.db.config.starterdb.characterSet=AL32UTF8<br>oracle.install.db.config.starterdb.memoryOption=
true
<br>oracle.install.db.config.starterdb.memoryLimit=15360 #自動管理內存的內存(M)<br>oracle.install.db.config.starterdb.password.ALL=oracle #設定所有數據庫用戶使用同一個密碼 <br>oracle.install.db.config.starterdb.enableRecovery=
true
<br><br><br><br><br>echo
"SECURITY_UPDATES_VIA_MYORACLESUPPORT=false<br>DECLINE_SECURITY_UPDATES=true"
>> /u01/app/oracle/product/18c/install/response/db_install.rsp<br><br>執行db_install.rsp文件<br><br>cd /u01/app/oracle/product/18c
|
/u01/app/oracle/product/18c
/runInstaller
-ignorePrereq -waitforcompletion -silent
-responseFile
/u01/app/oracle/product/18c
/install/response/db_install
.rsp
。。
。。
。。
As a root user, execute the followingscript(s):
1. /u01/app/oraInventory/orainstRoot.sh
2. /u01/app/oracle/product/12.2.0/dbhome_1/root.sh
切換至root用戶執行兩個腳本即可
安裝監聽,啟動監聽
1
|
/u01/app/oracle/product/18c/bin/netca
-silent -responsefile
/u01/app/oracle/product/18c/assistants/netca/netca
.rsp
|
安裝數據庫實例
編輯創建數據庫文件
1
2
3
4
5
6
7
8
9
10
11
12
13
|
$
find
/u01
-name *.rsp<br><br>$ vim
/u01/app/oracle/product/18c/assistants/dbca/dbca
.rsp<br><br>responseFileVersion=
/oracle/assistants/rspfmt_dbca_response_schema_v12
.2.0
gdbName=orcl
sid=orcl
templateName=
/u01/app/oracle/product/18c/assistants/dbca/templates/General_Purpose
.dbc
# 指定數據庫模板
sysPassword=oracle
systemPassword=oracle
oracleHomeUserPassword=oracle
|
可選的模板
1
2
|
/u01/app/oracle/product/18c/assistants/dbca/templates/Data_Warehouse
.dbc
#數據倉庫
/u01/app/oracle/product/18c/assistants/dbca/templates/General_Purpose
.dbc
#一般用途
|
執行安裝
1
|
/u01/app/oracle/product/18c/bin/dbca
-silent -createDatabase -responseFile
/u01/app/oracle/product/18c/assistants/dbca/dbca
.rsp
|
安裝好數據庫之后,要對相應的參數做一定的修改,否則會在安裝的時候報錯,具體的報錯信息會在下面給出:
修改參數:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
SQL> alter system
set
parallel_min_servers=0;
SQL> alter system
set
session_cached_cursors=400 scope=spfile;
SQL> alter system
set
log_buffer=8M scope=spfile;
SQL> alter system
set
memory_max_target=7G scope=spfile;
SQL> alter system
set
memory_target=7G scope=spfile;
SQL> alter system
set
open_cursors=600 scope=spfile;
SQL> alter system
set
pga_aggregate_target=2G scope=spfile;
SQL> alter system
set
processes=800 scope=spfile;
SQL> alter system
set
session_cached_cursors=400 scope=spfile;
SQL> alter system
set
sga_max_size=5G scope=spfile;
SQL> alter system
set
sga_target=5G scope=spfile;
SQL> alter system
set
shared_pool_size=1G scope=spfile;<br><br>SQL> alter system
set
"_allow_insert_with_update_check"
=TRUE
|
安裝emcc需要創建4組大小為300M以上的redolog文件
1
2
3
|
SQL>
select
group
#,thread#,bytes/1024/1024,status from v$log;
GROUP
# THREAD# BYTES/1024/1024 STATUS<br>---------- ---------- --------------- ----------------<br> 1 1 200 INACTIVE<br> 2 1 200 INACTIVE<br> 3 1 200 CURRENT<br><br>
|
1
2
3
4
5
6
7
8
|
SQL> col member
format
a50
SQL>
select
*from
v
$logfile;
GROUP
# STATUS TYPE MEMBER IS_ CON_ID
---------- ------- ------- -------------------------------------------------- --- ----------
3 ONLINE
/u01/app/oracle/oradata/ORCL/redo03
.log NO 0
2 ONLINE
/u01/app/oracle/oradata/ORCL/redo02
.log NO 0
1 ONLINE
/u01/app/oracle/oradata/ORCL/redo01
.log NO 0
|
status 有幾個值分別是:
- UNUSED(還沒有使用過);
- CURRENT(正在使用);
- ACTIVE(日志處於活動狀態,但不是當前日志。 崩潰恢復需要它);
- INACTIVE(實例恢復不再需要當前日志)
由於ORACLE並沒有提供類似RESIZE的參數來重新調整REDO LOG FILE的大小,因此只能先把這個文件刪除了,然后再重建。又由於ORACLE要求最少有兩組日志文件在用,所以不能直接刪除,必須要創建中間過渡的REDO LOG日志組。只有處於INACTIVE狀態的redolog才能被刪除
首先重新創建4組redolog
1
|
SQL> alter database add logfile group 4
'/u01/app/oracle/oradata/ORCL/redo04.log'
size 300m;<br><br>
|
1
|
SQL> alter database add logfile group 5
'/u01/app/oracle/oradata/ORCL/redo05.log'
size 300m;<br><br>
|
1
|
SQL> alter database add logfile group 6
'/u01/app/oracle/oradata/ORCL/redo06.log'
size 300m;<br><br>
|
1
|
SQL> alter database add logfile group 7
'/u01/app/oracle/oradata/ORCL/redo07.log'
size 300m;
|
切換日志組
1
2
3
4
5
6
7
|
SQL> alter system switch logfile;
SQL> alter system switch logfile;
SQL> alter system switch logfile;
SQL> alter system switch logfile;
|
刪除原先的日志組
1
2
3
4
5
|
SQL> alter database drop logfile group 1;
SQL> alter database drop logfile group 2;
SQL> alter database drop logfile group 3;
|
刪除老舊的物理文件
1
|
!
rm
-rf
/u01/app/oracle/oradata/ORCL/redo0
{1,2,3}.log
|
安裝emcc
將emcc的安裝包下載至/data文件夾
切換至root用戶,授予全局用戶使用圖形化界面的權限
1
2
3
4
5
6
7
|
su
- root
xhost+<br><br>
chmod
+x
/data/em13200_linux64
.bin
su
- oracle
export
DISPLAY=localhost:0.0 (不行就換成ip:0.0)<br><br>
/data/em13200_linux64
.bin
|
進入圖形化安裝界面,前兩部跳過即可
保證與檢查全部通過
選擇高級選項
選擇一開始創建好的中間件和代理路徑,名字不能為localhost
密碼強度要符合要求,不少於8位,不能含有特殊字符 oracle123
填寫本機IP,監聽的端口,實例名和SYS用戶密碼
設置sysman和代理密碼一樣即可 oracle123
設置服務的端口,默認即可
執行圖中腳本即可
web地址:
emcc地址:
https://192.168.230.211:7803/em
sysman/Oracle123
weblogic控制台地址:
https://192.168.230.211:7102/console
weblogic/Oracle123