徹底Oracle安裝建庫手冊

Oracle12C R2 for Centos 7html

背景介紹
安裝配置這東西吧,真沒啥可寫的,可是你說不寫詳細點吧,真的好多學員搞不懂,因此呢,熊熊思前想後,打算把本身從頭至尾怎麼安裝的,徹底寫一下,但願能讓你們有個全面的基礎認知linux

準備工做
安裝Xmanager
這個軟件功能很強大,熊熊安裝他主要是用於把遠程服務器的屏幕共享到本地桌面上
軟件在官網或者不少地方都有下載,這裏就不詳細給出連接地址了(也許後期熊熊會把全部須要的軟件都放在百度雲盤上,誰知道呢)
徹底Oracle安裝建庫手冊
雙擊Xmanager安裝程序,在歡迎頁面點擊下一步繼續
徹底Oracle安裝建庫手冊
必須接受許可協議,下一步繼續
徹底Oracle安裝建庫手冊
主要是輸入產品密鑰(網上有不少,能找到,也有專門的註冊機),點擊下一步繼續
徹底Oracle安裝建庫手冊
安裝路徑能夠根據本身實際狀況,下一步繼續
徹底Oracle安裝建庫手冊
典型安裝就夠了,下一步繼續
徹底Oracle安裝建庫手冊
開始菜單裏的程序文件夾,這個默認便可,下一步繼續
徹底Oracle安裝建庫手冊
選擇中文語言,點擊安裝
徹底Oracle安裝建庫手冊
安裝完成sql

下載安裝包
說在前面:其實,對於絕對的新手來說,強烈建議下載一個OEL7.6安裝最踏實,由於裏面對Oracle內核有優化,該有的包和參數也都提早給設置好了,省心
徹底Oracle安裝建庫手冊
https://edelivery.oracle.com/osdc/faces/SoftwareDelivery#! 下載連接在這裏,須要註冊一個Oracle官網用戶並登錄,一般選擇第七個包,就是最後一個便可,若是不用OEL,就本身下載Centos 7.6也能夠
Oracle安裝包下載
徹底Oracle安裝建庫手冊
先把database的包下了就好了,想練習的,就把下面的example包也下了
連接以下:https://www.oracle.com/technetwork/database/enterprise-edition/downloads/oracle12c-linux-12201-3608234.html
一樣須要註冊一個Oracle官網用戶並登陸數據庫

參數配置
建立組和帳戶(root帳號)vim

groupadd -g 501 oinstall
groupadd -g 502 dba
useradd -g oinstall -G dba oracle

建立一些目錄和權限(root帳號)安全

mkdir -p /orasetup /home/app/oracle
chmod -R 775 /orasetup /home/app
chown -R oracle:oinstall /orasetup /home/app

上面具體的路徑,須要根據本身的實際狀況來定,好比一般默認爲/u01/app/oracle
切換到Oracle帳號,編輯一些必要的環境變量bash

[oracle@svn ~]$ pwd
/home/oracle
[oracle@svn ~]$ vi .bash_profile

具體內容以下服務器

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
alias vi='vim'
alias sqlplus='rlwrap sqlplus'
alias rman='rlwrap rman'

export ORACLE_BASE=/home/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/12.2.0/db_1
export ORACLE_SID=bear
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib:/lib/usr/lib
export PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin:$ORACLE_HOME/jdk/bin
export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"
export NLS_LANG="Simplified Chinese_China".AL32UTF8

ORACLE_BASE是Oracle基目錄(這裏能夠包括全部Oracle產品均可以裝在這個目錄下)
ORACLE_HOME是Oracle數據庫軟件目錄
ORACLE_SID是數據庫惟一標示(在單實例尤爲重要)
下面的LD_LIBRARY_PATH和PATH分別是bin操做路徑和字典庫路徑
NLS_DATA_FORMAT是日期顯示格式(這裏是年月日 時分秒)
NLS_LANG是數據庫顯示字符集及國家字符集顯示
(中文是Simplified_Chinese_China.AL32UTF8)
這裏須要安裝一個rlwrap的軟件,咱們來看一下它的做用以及如何安裝
若是沒有rlwrap,默認sqlplus是不支持上下左右的鍵盤滾動以及歷史記錄快速查詢的(list命令能夠查詢歷史記錄,可是很不方便)
所以咱們來安裝這個軟件(網上有不少下載地址,這裏就不給連接了)oracle

[root@svn tmp]# pwd
/tmp
[root@svn tmp]# ll -h
總用量 248K
-rw-r--r-- 1 root root 246K 2月  14 2011 rlwrap-0.37.tar.gz
[root@svn tmp]# tar -zxvf rlwrap-0.37.tar.gz
[root@svn tmp]# cd rlwrap-0.37/
[root@svn rlwrap-0.37]# pwd
/tmp/rlwrap-0.37
[root@svn rlwrap-0.37]# ./configure

若是出現readline的報錯,那麼就執行命令yum -y install *readline*來安裝缺失的包
不然正確的話,應該出現下圖所示
徹底Oracle安裝建庫手冊
[root@svn rlwrap-0.37]# make && make install
執行安裝便可
編輯好.bash_profile的環境變量文件後,wq退出,執行source .bash_profile來使其生效
[root@svn ~]# vi /etc/profile設置系統級環境變量app

if [ $USER = "oracle" ] || [ $USER = "grid" ]; then
        if [ $SHELL = "/bin/ksh" ]; then
                ulimit -p 16384
                ulimit -n 65536
        else
                ulimit -u 16384 -n 65536
        fi
fi

增長上面的部分,主要是爲了解除限制
添加完之後,也要wq保存退出,執行source /etc/profile使其生效
[root@svn ~]# vi /etc/security/limits.conf 編輯一些參數設置

oracle  soft  stack  10240
oracle  soft  nproc  2047
oracle  hard  nproc  16384
oracle  soft  nofile 1024

添加如上設置,主要是容許打開的軟硬限制,noproc表示的是每一個用戶最大的進程數,nofile表示的時最多能同時打開的文件數。
整個這些,真有心的,能夠看一下這個連接(https://www.cnblogs.com/galengao/p/5764693.html

開始安裝
徹底Oracle安裝建庫手冊
在xmanager那個文件夾裏,選擇passive這個,雙擊後,右下角會出現一個x的圖標

[oracle@svn ~]$ export DISPLAY=192.168.9.179:0.0
[oracle@svn ~]$ xhost +
access control disabled, clients can connect from any host

按上面顯示設置你的本地IP顯示(注意,根據你的本地IP實際狀況來設置DISPLAY)

[oracle@svn orasetup]$ pwd
/orasetup
[oracle@svn orasetup]$ ll -h
總用量 0
drwxr-xr-x 7 oracle oinstall 117 1月  27 2017 database
drwxr-xr-x 5 oracle oinstall  90 1月  27 2017 examples
[oracle@svn orasetup]$

把Oracle安裝包傳到/orasetup目錄下並解壓後,出現database文件夾,切入進去

[oracle@svn database]$ pwd
/orasetup/database
[oracle@svn database]$ ./runInstaller

執行安裝
徹底Oracle安裝建庫手冊
第一步出現配置安全更新,由於沒有Metalink帳號,因此把Oracle支持的勾打沒了,點擊下一步繼續
徹底Oracle安裝建庫手冊
先僅安裝數據庫軟件,點擊下一步繼續
徹底Oracle安裝建庫手冊
目前只考慮單實例安裝,點擊下一步繼續
徹底Oracle安裝建庫手冊
選擇企業版進行安裝,點擊下一步繼續
徹底Oracle安裝建庫手冊
這裏能夠看到,上面是Oracle的基目錄,下面是Oracle的產品目錄,這兩個目錄都在Oracle帳號下的.bash_profile文件中配置好,這裏是直接讀取的該文件,點擊下一步繼續
徹底Oracle安裝建庫手冊
各類操做所需的權限組,本身學習都給他dba組就得了,省心,點擊下一步繼續
徹底Oracle安裝建庫手冊
若是有先決條件須要處理,有個腳本執行,缺包的話,使用yum命令進行安裝,爲何讓用OEL呢,由於只須要yum -y install oracle就搞定了,特別方便,這裏我沒有任何問題,點擊安裝開始安裝
徹底Oracle安裝建庫手冊
用root帳號執行上圖所示腳本
[root@svn ~]# /home/app/oracle/product/12.2.0/db_1/root.sh
徹底Oracle安裝建庫手冊
腳本執行完成後,在執行配置腳本窗口點擊肯定按鈕
徹底Oracle安裝建庫手冊
軟件安裝完畢,點擊關閉便可

靜默安裝
有些時候,咱們常常沒法用桌面方式安裝(本地or遠程都算上),因此遠程靜默安裝就尤爲重要了,下面咱們來看一下如何操做
徹底Oracle安裝建庫手冊
在database的response目錄下,有個db_install.rsp的文件,先把他備份一下
徹底Oracle安裝建庫手冊
上面的文件裏,都是一些實際參數,根據本身實際狀況改一下就行了,這裏就不一一解釋了,很簡單的,若是還有不懂的同窗再問我就行了
徹底Oracle安裝建庫手冊
用上圖的命令來調用靜默安裝,這裏就不演示具體安裝了,安裝後也須要用root帳號執行兩個腳本,就都ok了

安裝監聽
NETCA

Oracle用戶下在命令行鍵入netca
徹底Oracle安裝建庫手冊
選擇監聽程序配置,點擊下一步繼續
徹底Oracle安裝建庫手冊
添加監聽程序,下一步繼續
徹底Oracle安裝建庫手冊
默認監聽名稱listener,下一步繼續
徹底Oracle安裝建庫手冊
默認TCP協議,下一步繼續
徹底Oracle安裝建庫手冊
默認端口1521,下一步繼續
徹底Oracle安裝建庫手冊
無需配置另外一個監聽,下一步繼續
徹底Oracle安裝建庫手冊
監聽程序配置完成,下一步繼續
徹底Oracle安裝建庫手冊
點擊完成按鈕完成配置

建立數據庫
在oracle帳號下鍵入dbca
徹底Oracle安裝建庫手冊
選擇建立數據庫,下一步繼續
徹底Oracle安裝建庫手冊
選擇高級配置,下一步繼續
徹底Oracle安裝建庫手冊
選擇單實例數據庫,默認通常用途(OLTP),下一步繼續
徹底Oracle安裝建庫手冊
從12C版本支持CDB與PDB數據庫(即容器數據庫與可插拔數據庫)
CDB全稱爲Container Database,中文翻譯爲數據庫容器
PDB全稱爲Pluggable Database,便可插拔數據庫
從12C開始,Oracle實例與數據庫能夠造成一對多的關係
徹底Oracle安裝建庫手冊
選擇存儲屬性,選擇OMF表空間管理,點擊下一步繼續
徹底Oracle安裝建庫手冊
設定快速閃回區的存儲方式、路徑和大小,下一步繼續(練習階段,暫不開啓歸檔)
徹底Oracle安裝建庫手冊
能夠看到,已經加載咱們設定好的監聽程序,下一步繼續
徹底Oracle安裝建庫手冊
安全選項在練習環境就不設置了,下一步繼續
徹底Oracle安裝建庫手冊
進程我設置爲500、字符集選擇AL31UTF8,鏈接模式爲專用服務器模式,練習環境示例方案能夠打上勾,內存狀況請根據實際狀況自行設置,點擊下一步繼續
若是咱們的共享內存設置超過總內存的一半,那麼須要在Linux系統中設置shm,虛擬內存頁大小
[root@svn ~]# vi /etc/fstab 編輯這個文件
tmpfs /dev/shm tmpfs defaults,size=12288M 0 0
加上上面這行,wq保存退出後,umount /dev/shm再mount /dev/shm便可
徹底Oracle安裝建庫手冊
爲了後期加入到OEM CC中,這裏就不設置單機版的OEM了,下一步繼續
徹底Oracle安裝建庫手冊
這裏熊熊偷懶使用統一管理口令了,下一步繼續
徹底Oracle安裝建庫手冊
有興趣的能夠查看全部的初始化參數,也能夠生成數據庫建立腳原本學習(這個腳本主要採用的是RMAN的CLONE技術),點擊下一步繼續
徹底Oracle安裝建庫手冊
這裏會列出一個詳細的配置清單,查證無誤後,點擊完成開始建庫
徹底Oracle安裝建庫手冊
至此,數據庫建立完畢,點擊關閉便可

靜默建庫
徹底Oracle安裝建庫手冊
編輯dbca.rsp文件能夠進行dbca靜默建庫,該文件具體如何編輯,官網有詳細的記錄,這裏不作具體解釋了
[oracle@svn response]$ dbca -silent -createDatabase -responseFile ./dbca.rsp
用上述命令能夠進行dbca的靜默建庫,在此以前,編輯該腳本,把sid、dbname等該設置的都設置好便可

手工建庫
寫在前面:手工建庫坑不少,並且說實話,意義並不大,因此強烈不推薦新手來試驗
12C建立CDB的區別在於,要建立CDB,CREATE DATABASE語句必須包含ENABLE PLUGGABLE DATABASE子句。當包含此子句時,該語句使用根和種子建立CDB。若是未指定ENABLE PLUGGABLE DATABASE子句 那新建立的數據庫是非CDB。該語句不會建立根和種子,非CDB永遠不會包含PDB。
下面是具體的建庫腳本

create database bear
user sys identified by oracle
user system identified by oracle
logfile group 1 ('$ORACLE_BASE/oradata/bear/disk1/redo01.log') size 200m,
        group 2 ('$ORACLE_BASE/oradata/bear/disk2/redo02.log') size 200m,
        group 3 ('$ORACLE_BASE/oradata/bear/disk3/redo03.log') size 200m
maxlogfiles 10
maxlogmembers 5
maxloghistory 5
maxdatafiles 1000
character set al32utf8
national character set al16utf16
extent management local
  datafile '$ORACLE_BASE/oradata/bear/disk1/system01.dbf' size 1g
  sysaux datafile '$ORACLE_BASE/oradata/bear/disk3/sysaux01.dbf' size 1g
  default tablespace deftbs
     datafile '$ORACLE_BASE/oradata/bear/disk2/deftbs01.dbf' size 1g
  default temporary tablespace temp01
     tempfile '$ORACLE_BASE/oradata/bear/disk1/temp01.tmp' size 100m
  undo tablespace undotbs
     datafile '$ORACLE_BASE/oradata/bear/disk2/undotbs01.dbf' size 2g
enable pluggable database
    seed
    file_name_convert = ('$ORACLE_BASE/oradata/bear/', '$ORACLE_BASE/oradata/pdbseed/')
    system datafiles size 1g autoextend on next 1m maxsize unlimited
    sysaux datafiles size 1g
  user_data tablespace usertbs
    datafile '$ORACLE_BASE/oradata/pdbseed/disk2/usertbs01.dbf' size 1g;

select instance_name, status from v$instance;
select open_mode, name from v$database;

徹底Oracle安裝建庫手冊
12C R2版本建庫後,相關執行腳本都集成到了catcdb.pl這個perl腳本中,簡單編輯修改一下便可使用,具體請根據實際狀況修改,這裏就不演示了
總之,手工建庫不適合新手,不適合新手,不適合新手,重要事情說三遍!

查看數據庫狀態
在CDB數據庫中,啓動CDB數據庫並不能直接將其下的pdb啓動,咱們來看一下
SQL> select con_id, dbid, guid, name , open_mode from v$pdbs;
徹底Oracle安裝建庫手冊
能夠看到,PDB數據庫還處於mount狀態,即未啓動狀態,須要將其啓動
徹底Oracle安裝建庫手冊
目前數據庫已啓動
徹底Oracle安裝建庫手冊
切換到cdb$root用戶下,亦能夠看到pdb庫已啓動
SQL> alter pluggable database all open; 使用該語句能夠將cdb庫下的全部pdb數據庫均啓動,咱們也能夠作個觸發器,當啓動cdb的時候,自動觸發啓動全部的pdb

SQL> create or replace trigger open_pdbs
  2  after startup on database
  3  begin
  4  execute immediate 'alter pluggable database all open';
  5  end open_pdbs;
  6  /

徹底Oracle安裝建庫手冊

相關文章
相關標籤/搜索