Linux安裝Oracle12C全過程
一、關(guān)閉防火墻
# 查看防火墻狀態(tài) systemctl status firewalld # 關(guān)閉防火墻 systemctl stop firewalld # 開啟防火墻 systemctl disable firewalld
二、安裝補(bǔ)丁
先更新環(huán)境依賴庫,看有沒有報(bào)錯(cuò)
yum update
(三選一即可)
1. 在線安裝(需連接外網(wǎng))
執(zhí)行命令:
yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33*.i686 elfutils-libelf-devel gcc gcc-c++ gcc-c++glibc*.i686 glib c glibc-devel glibc-devel*.i686 ksh libgcc*.i686 libgcclibstdc++ libstdc++*.i686 libstdc++-devel libstdc++-devel*.i686 libaiolibaio*.i686 libaio-devel libaio-devel*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686 libXp libXtst
檢查是否安裝成功(31個(gè)安裝包)
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
2. 離線安裝(內(nèi)網(wǎng)環(huán)境推薦)
網(wǎng)上下載對(duì)應(yīng)操作系統(tǒng)版本的rpm依賴包,執(zhí)行下述命令
rpm -ivh *.rpm --nodeps --force
3. 掛載鏡像后執(zhí)行1命令
- 修改yum鏡像
cd /etc/yum.repos.d/ vim iso.repo
#### [base] name=iso #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra baseurl=file:///mnt gpgcheck=0 #gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 enable=1 #######
- 每次重啟都要,執(zhí)行掛載命令:
mount -o loop /home/software/rhel-server-7.7-x86_64-dvd.iso /mnt #iso.repo里的baseurl
- 測(cè)試
yum repolist
- 清理
yum makecache yum clean all
二、建立用戶和組:
groupadd oinstall groupadd dba groupadd oper useradd -g oinstall -G dba,oper oracle #oracle用戶的密碼設(shè)置,后面會(huì)用到 echo "您的密碼" | passwd --stdin oracle
三、創(chuàng)建安裝目錄
mkdir -p /app/oracle/product/12c/dbhome chown -R oracle:oinstall /app chmod -R 775 /app
四、修改內(nèi)核參數(shù)
(先看下方參數(shù)聲明,根據(jù)服務(wù)器參數(shù)對(duì)配置文件的插入語句做適當(dāng)修改)
vi /etc/sysctl.conf
fs.aio-max-nr = 1048576 fs.file-max = 6815744 #設(shè)置最大打開文件數(shù) kernel.shmall = 2097152 # 共享內(nèi)存總量,以頁為單位。 kernel.shmmax = 4294967295 # 共享內(nèi)存段的最大尺寸(以字節(jié)為單位) kernel.shmmni = 4096 # 整個(gè)系統(tǒng)共享內(nèi)存段的最大數(shù)量 kernel.sem = 250 32000 100 128 net.ipv4.ip_local_port_range = 9000 65500 # 應(yīng)用程序可使用的IPv4端口范圍 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048586
改好后,使之生效:
sysctl -p
參數(shù)說明
kernel.shmall = 6580668 # 可以使用的共享內(nèi)存的總頁數(shù)(Linux共享內(nèi)存頁大小為4kb) kernel.shmmni=4096 # 設(shè)置系統(tǒng)范圍內(nèi)共享內(nèi)存段的最大數(shù)量(默認(rèn)4096) kernel.shmmax = 33693024256 # 單個(gè)共享內(nèi)存段的最大值(字節(jié));一個(gè)共享內(nèi)存段應(yīng)容納下整個(gè)SGA(>=sga_max_size) 32位linux系統(tǒng):推薦值 4294967295 64位linux系統(tǒng):推薦值 內(nèi)存|kernel.shmmax|kernel.shmall 12G | 12884901887 | 3145728 16G | 17179869183 | 4194304 32G | 34359738367 | 8388608 64G | 68719476735 | 16777216 128G | 137438953471 | 33554432 # 計(jì)算公式如下 kernel.shmmax = 內(nèi)存*1024*1024*1024 kernel.shmall = kernel.shmmax/1024/4
五、改文件限制:
vim /etc/security/limits.conf #(沒有前面這個(gè)文件,則 vi /etc/security/limits.d/20-nproc.conf )
oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 oracle soft stack 10240 #oracle soft memlock unlimited #oracle hard memlock unlimited
六、修改Oracle用戶的環(huán)境變量
su - oracle vim .bash_profile
export ORACLE_BASE=/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/12c/dbhome export ORACLE_SID=orcl export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
# 加載環(huán)境變量 source .bash_profile
七、創(chuàng)建交換空間
dd if=/dev/zero of=/home/swap bs=1024 count=8000000 mkswap /home/swap swapon /home/swap
八、安裝軟件
1.修改/etc/profile
vim /etc/profile
#添加以下內(nèi)容
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
#使配置生效
source /etc/profile
2.修改/etc/selinux/config里SELINUX的值
vim /etc/selinux/config SELINUX=disabled
3.安裝數(shù)據(jù)庫軟件
su - oracle cd /app/database ./runInstaller -silent -responseFile /app/database/db_install.rsp
完成數(shù)據(jù)庫軟件安裝,切到root用戶,運(yùn)行以下腳本。
sh /app/oraInventory/orainstRoot.sh sh /app/oracle/product/12c/dbhome/root.sh
4.創(chuàng)建監(jiān)聽
su - oracle cd /app/database/ netca -silent -responsefile /app/database/netca.rsp
5.創(chuàng)建數(shù)據(jù)庫
su - oracle dbca -silent -createDatabase -responseFile /app/database/dbca.rsp
設(shè)置密碼: ***
6.專用模式改為共享模式
--沒有返回值,說明處于專用模式: SQL>select * from v$dispatcher; SQL>show parameter shared_ser --在線修改共享服務(wù)器進(jìn)程的數(shù)量 --(若執(zhí)行下方SQL出現(xiàn)亂碼,可執(zhí)行“十二、修改字符集”,修改數(shù)據(jù)庫字符集) SQL> alter system set shared_servers=5 scope=both; --配置dispatchersDispatchers參數(shù)用于配置共享模式架構(gòu)中dispatcher進(jìn)程,共享模式只少需要一個(gè)dispatcher進(jìn)程。 SQL> alter system set dispatchers='(PROTOCOL=TCP) (dispatchers=3)' scope=both; -- 啟動(dòng)數(shù)據(jù)庫 SQL> startup; -- 關(guān)閉數(shù)據(jù)庫 SQL> shutdown immediate;
九、測(cè)試oracle是否安裝成功
#先啟動(dòng)監(jiān)聽 [oracle@ etlsrv ~]$ lsnrctl start #連接sqlplus [oracle@ etlsrv ~]$ sqlplus /nolog
--連接dba SQL> conn / as sysdba --啟動(dòng)服務(wù) SQL> startup -- 啟動(dòng)startup,停止 shutdown / shutdown immediate SQL> alter system register; SQL> select status from v$instance; --查看狀態(tài) SQL> desc dba_tablespaces; --測(cè)試:顯示表空間 SQL> quit
# 查看監(jiān)聽狀態(tài) [oracle@ etlsrv ~]$ lsnrctl status
十、修改字符集
#系統(tǒng)字符集 [root@localhost /root]$ vim ~oracle/.bash_profile export NLS_LANG="SIMPLIFIED CHINESE_CHINA.AL32UTF8" #使設(shè)置生效 [root@localhost /root]$source ~oracle/.bash_profile
#linux下查看oracle字符集 # 切換oracle用戶 su - oracle # 進(jìn)入SQL plus控制臺(tái) sqlplus / as sysdba
SQL>select * from v$nls_parameters; --AL32UTF8
SQL>select * from nls_database_parameters where parameter ='NLS_CHARACTERSET'; --AL32UTF8
SQL>select userenv('language') from dual; --SIMPLIFIED CHINESE_CHINA.AL32UTF8
十一、調(diào)整process(進(jìn)程數(shù))
# 查看ORACLE最大進(jìn)程數(shù): su - oracle # 先查看現(xiàn)在情況 sqlplus / as sysdba
SQL> select count(*) from v$session; #當(dāng)前連接數(shù) SQL> Select count(*) from v$session where status='ACTIVE'; #當(dāng)前并發(fā)連接數(shù) SQL> show parameter processes; #最大連接 SQL> show parameter sessions; # 在Linux系統(tǒng)中, 1個(gè)用戶session 對(duì)應(yīng)一個(gè)操作系統(tǒng) process ,而 windows體現(xiàn)在線程 # 修改ORACLE最大進(jìn)程數(shù):sessions=(1.1*processes+5) SQL> alter system set processes = 4000 scope = spfile; #修改連接 SQL> alter system set sessions= 4405 scope = spfile; # 系統(tǒng)已更改。 SQL> show parameter processes; SQL>shutdown immediate; # 數(shù)據(jù)庫已經(jīng)關(guān)閉。 # 已經(jīng)卸載數(shù)據(jù)庫。 # ORACLE 例程已經(jīng)關(guān)閉。 SQL> startup # ORACLE 例程已經(jīng)啟動(dòng)。 # 看提示信息,database open后,則表明該數(shù)據(jù)庫全部啟動(dòng)完畢,啟動(dòng)完畢后,再查看一下。 SQL> show parameter processes;
十二、修改密碼過期策略
# 設(shè)置密碼永不過期 SQL> alter profile default limit password_life_time unlimited;
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
解決centos7中tomcat啟動(dòng)與本機(jī)訪問問題
這篇文章主要介紹了解決centos7中tomcat啟動(dòng)與本機(jī)訪問問題,需要的朋友可以參考下2018-08-08
Ubuntu報(bào)“無法解析域名cn.archive.ubuntu.com“問題解決辦法
在Ubuntu系統(tǒng)上使用sudo?apt?update命令更新時(shí)可能遇到“無法解析域名cn.archive.ubuntu.com”的問題,這通常是因?yàn)閏n.archive.ubuntu.com的鏡像資源不穩(wěn)定,為解決此問題,可以更換為穩(wěn)定性好、速度快的鏡像源,需要的朋友可以參考下2024-11-11
linux環(huán)境搭建圖數(shù)據(jù)庫neo4j的講解
今天小編就為大家分享一篇關(guān)于linux環(huán)境搭建圖數(shù)據(jù)庫neo4j的講解,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-04-04
Linux基于環(huán)形隊(duì)列的生產(chǎn)消費(fèi)者模型詳解
這篇文章主要介紹了Linux基于環(huán)形隊(duì)列的生產(chǎn)消費(fèi)者模型方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-04-04
安裝Debian12后Linux啟動(dòng)SMTP服務(wù)的詳細(xì)指南
這篇文章主要為大家詳細(xì)了在 Win10 上 WSL 安裝 Debian 12 后,Linux 如何啟動(dòng) SMTP 服務(wù),文中的示例代碼簡(jiǎn)潔易懂,有需要的可以了解下2025-06-06
linux新文件權(quán)限設(shè)置之umask的深入理解
這篇文章主要給大家介紹了關(guān)于linux新文件權(quán)限設(shè)置之umask的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03

