Oracle數據庫部署
一、安裝Oracle 12c
1、安裝前的注意事項
1、系統及配置要求
安裝有 GNOME 中文桌面環境
防火牆的配置選項設置爲禁用 。
SELinux設置爲禁用 。
默認安裝設置爲軟件開發 。
內核選擇3.10.0.54.0.1.e17.x86_64及以上版本
物理內存必須高於1GB,對於VMware 虛擬機建議不少於2GB .
交換空間物理內存爲1-2GB時,交換分區爲物理內存的1.5-2倍;物理內存爲2-16GB時,交換分區與物理內存大小相同;物理內存超過16GB時,交換分區使用16GB就可以了。
2、修改主機名和IP
[root@localhost ~]# vim /etc/hostname //修改主機名
Oracle
[root@localhost ~]# vim /etc/hosts //添加主機IP映射
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.1.10 Oracle
3、軟件環境要求
[root@localhost ~]# yum -y install binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel
4、內核要求
[root@localhost ~]# vim /etc/sysctl.conf
......
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_max = 4194304
net.core.rmem_default = 262144
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
[root@localhost ~]# sysctl -p
5、Oracle用戶環境要求
創建固定的運行用戶oracle,安裝組oinstall,管理組dba
[root@localhost ~]# groupadd -g 54321 oinstall //創建安裝組(-g 組ID)
[root@localhost ~]# groupadd -g 54322 dba //創建管理組
[root@localhost ~]# useradd -u 54321 -g oinstall -G dba oracle //創建運行用戶
[root@localhost ~]# passwd oracle //設置密碼
[root@localhost ~]# mkdir -p /u01/app/oracle //建立基本目錄
[root@localhost ~]# chown -R oracle:oinstall /u01/app/
[root@localhost ~]# chmod -R 755 /u01/app/oracle/
[root@localhost ~]# vim /home/oracle/.bash_profile //調整oracle用戶的環境配置
......
umask 022
ORACLE_BASE=/u01/app/oracle //定義基本目錄
ORACLE_HOME=/u01/app/oracle/product/12.2.0/dbhome_1/ //定義安裝家目錄
ORACLE_SID=orcl // 定義數據庫實例名稱
NLS_LANG="SIMPLIFIED CHINESE_CHINA".UTF8 // 確定使用何種語言環境
PATH=$PATH:$ORACLE_HOME/bin
LANG=zh_CN.UTF-8
export DISPLAY=:0.0
export PATH LANG NLS_LANG ORACLE_BASE ORACLE_HOME ORACLE_SID
6、oracle用戶資源限制要求
[root@localhost ~]# vim /etc/pam.d/login
......
session required /lib/security/pam_limits.so
session required pam_limits.so
[root@localhost ~]# vim /etc/security/limits.conf
oracle soft nproc 2047 //進程數軟限制
oracle hard nproc 16384 //進程數硬限制
oracle soft nofile 1024 //文件數軟限制
oracle hard nofile 65536 //文件數硬限制
oracle soft stack 10240 //Oracle軟堆棧限制
[root@localhost ~]# vim /etc/profile
......
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
7、重新啓動系統
2、Oracle 12c安裝過程
Oracle的中文官方網址爲https://www.oracle.com/crmondemand/,它支持Oracle12c安裝文件的免費下載(需註冊賬號)。這裏我們使用光盤安裝。
[root@Oracle ~]# mkdir /tmp/abc
[root@Oracle ~]# cd /media/
[root@Oracle media]# ls
linuxx64_12201_database.zip
[root@Oracle media]# cp linuxx64_12201_database.zip /tmp/abc/
[root@Oracle media]# cd /tmp/abc/
[root@Oracle abc]# unzip linuxx64_12201_database.zip
[root@Oracle abc]# xhost + //一 定要以root用戶在圖形環境中操作
access control disabled, clients can connect from any host
[root@Oracle abc]# su - oracle
[oracle@Oracle ~]$ cd /tmp/abc/database/
[oracle@Oracle database]$ export DISPLAY=:0.0 //設置DISPLAY環境變量
[oracle@Oracle database]$ ./runInstaller
1、典型安裝過程
如果已購買Oracle 12c數據庫的授權且服務器能夠連接Internet,建議正確填寫電子郵件地址和Oracle Support口令以便及時接收官方的安全更新通知。
配置安全更新
安裝選項
系統類
數據庫安裝選項
安裝類型
典型安裝配置
創建產品清單
先決條件檢查及彙總
安裝產品
安裝完成
執行配置腳本時切換爲root用戶並依次執行腳本文件
[root@Oracle ~]# /u01/app/oraInventory/orainstRoot.sh
更改權限/u01/app/oraInventory.
添加組的讀取和寫入權限。
刪除全局的讀取, 寫入和執行權限。
更改組名/u01/app/oraInventory 到 oinstall.
腳本的執行已完成。
[root@Oracle ~]# /u01/app/oracle/product/12.2.0/dbhome_1/root.sh //按照默認值按兩次Enter鍵
Performing root user operation.
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /u01/app/oracle/product/12.2.0/dbhome_1
Enter the full pathname of the local bin directory: [/usr/local/bin]:
Copying dbhome to /usr/local/bin ...
Copying oraenv to /usr/local/bin ...
Copying coraenv to /usr/local/bin ...
Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Do you want to setup Oracle Trace File Analyzer (TFA) now ? yes|[no] :
Oracle Trace File Analyzer (TFA - User Mode) is available at :
/u01/app/oracle/product/12.2.0/dbhome_1/suptools/tfa/release/tfa_home/bin/tfactl
OR
Oracle Trace File Analyzer (TFA - Daemon Mode) can be installed by running this script :
/u01/app/oracle/product/12.2.0/dbhome_1/suptools/tfa/release/tfa_home/install/roottfa.sh
2、安裝flash player
[root@Oracle ~]wget http://linuxdownload.adobe.com/adobe-release/adobe-release-x86_64-1.0-1.noarch.rpm
[root@Oracle ~]rpm -ivh adobe-release-x86_64-1.0-1.noarch.rpm
[root@Oracle ~]yum -y install flash-plugin
二、Oracle 12c數據庫的創建
1、以oracle用戶身份運行命令DBCA
[oracle@Oracle ~]$ dbca
選擇數據庫操作
填寫數據庫信息
三、Oracle 12c數據庫的啓動與關閉
1、啓動、 關閉 Oracle 數據庫
1、數據庫的啓動
[oracle@Oracle ~]$ sqlplus / as sysdba //以sysdba用戶登錄
SQL> startup nomount //僅啓動一個Oracle實例
SQL> startup mount //啓動實例並且裝載數據庫,但沒有打開數據庫
SQL> startup //完成啓動實例、裝載數據庫和打開數據庫
必須運行下面的兩條命令 , 數據庫才能正確啓動
ALTER DATABASE MOUNT; //startup nomount啓動時
ALTER DATABASE OPEN; //startup nomount啓動時/startup mount啓動時
2、數據庫的關閉
SQL> shutdown normal //同shutdown,目前連接的所有用戶都從數據庫中退出後纔開始關閉數據庫
SQL> shutdown immediate //安全且相對較快
SQL> shutdown transactional //計劃關閉數據庫
SQL> shutdown abort //會造成數據丟失,並且恢復數據庫也需要較長時間
2、管理 Oracle 監聽進程
先啓動監聽, 後啓動數據庫
1、啓動監聽
[oracle@oracle ~]$ lsnrctl start
2、關閉監聽
[oracle@Oracle ~]$ lsnrctl stop
3、其他命令
[oracle@oracle ~]$ lsnrctl status //查看監聽進程狀態
[oracle@oracle ~]$ lsnrctl reload //重新加載監聽進程
[oracle@oracle ~]$ lsnrctl set //設置相應參數
[oracle@oracle ~]$ lsnrctl show //查看當前參數的取值
[oracle@oracle ~]$ lsnrctl help //顯示幫助信息
[oracle@oracle ~]$ lsnrctl version //顯示當前監聽進程版本
[oracle@oracle ~]$ lsnrctl change_password //改變口令
4、增加新的監聽進程
[oracle@oracle ~]$ vim $ORACLE_HOME/network/admin/listener.ora
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.1)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
LISTENER1 =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP) (HOST = Oracle) (PORT = 1522)) //主機爲Oracle,端口爲1522
)
)
#靜態註冊模塊
SID_LIST_LISTENER = //SID_LIST_監聽名
(SID_LIST =
(SID_DESC =
(SID NAME = orcl) //實例名
(ORACLE_HOME = /uO1/app/oracle/product/12.2.0/dbhome_1) //標識服務主目錄位置
(GLOBAL_DBNAME = orcl) //全局數據庫名稱
)
)
[oracle@oracle ~]$ netstat -lnupt | grep 1522
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
tcp6 0 0 :::1522 :::* LISTEN 3725/tnslsnr
查詢GLOBAL_DBNAME代碼
SQL> select global_name from global_name;
GLOBAL_NAME
--------------------------------------------------------------------------------
ORCL
四、附件
另:關於sqlplus方向鍵不能用的解決方法
[root@localhost ~]# yum -y install ncurses* readline*
[root@localhost ~]# tar zxf /media/rlwrap-0.30.tar.gz -C /usr/src/
[root@localhost ~]# cd /usr/src/rlwrap-0.30/
[root@localhost rlwrap-0.30]# ./configure && make && make install
[root@localhost ~]# vim /home/oracle/.bash_profile
......
alias sqlplus='rlwrap sqlplus'
alias rman='rlwrap rman'
rlwrap-0.30.tar.gz資源
鏈接:https://pan.baidu.com/s/1wJy037qGoq3bNB-YvYasyQ
提取碼:ta2n