您好,登錄后才能下訂單哦!
博文結構
Oracle的手動安裝過程
啟動,關閉Oracle數據庫
Oracle Database,又名Oracle RDBMS,或簡稱Oracle。是甲骨文公司的一款關系數據庫管理系統。它是在數據庫領域一直處于領先地位的產品。可以說Oracle數據庫系統是目前世界上流行的關系數據庫管理系統,系統可移植性好、使用方便、功能強,適用于各類大、中、小、微機環境。它是一種高效率、可靠性好的、適應高吞吐量的數據庫方案。
1)數據的大量性
2)數據的保存的持久性
3)數據的共享性
4)數據的可靠性
2、完備關系的產品:
1)信息準則---關系型DBMS的所有信息都應在邏輯上用一種方法,即表中的值顯式地表示;
2)保證訪問的準則
3)視圖更新準則---只要形成視圖的表中的數據變化了,相應的視圖中的數據同時變化
4)數據物理性和邏輯性獨立準則
3、分布式處理功能:
ORACLE數據庫自第5版起就提供了分布式處理能力,到第7版就有比較完善的分布式數據庫功能了,一個ORACLE分布式數據庫由oraclerdbms、sql*Net、SQL*CONNECT和其他非ORACLE的關系型產品構成。
4、用ORACLE能輕松的實現數據倉庫的操作。
優點
■ 可用性強
■ 可擴展性強
■ 數據安全性強
■ 穩定性強
安裝前要求
Oracle 12c明確支持的Linux操作系統包括Oracle Linux 7、Oracle Linux 6、Oracle Linux 5、Red Hat Enterprise Linux 7、Red Hat Enterprise Linux 6、Red Hat Enterprise Linux 5等,因為Red Hat Enterprise 和CentOS屬于同步并行的操作系統,所以Oracle 12 c同樣支持CentOS 7、CentOS 6、CentOS 5操作系統。在其他Linux系統中安裝時,個別軟件或配置文件可能需要進行適當的調整。
Linux操作系統要求:
物理內存:必須高于1GB,對于VMware虛擬機建議不少于2GB;
交換空間:物理內存為1~2GB時,交換分區為物理內存的1.5~2倍;物理內存為2~16GB時,交換分區于物理內存大小相同;物理內存超過16GB時,交換分區使用16GB就可以了;
[root@localhost /]# vim /etc/hosts
192.168.1.10 Oracle
[root@localhost ~]# yum -y install 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
[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_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
[root@localhost ~]# sysctl -p \\重新加載配置
[root@localhost ~]# groupadd -g 54321 oinstall \\創建安裝組
[root@localhost ~]# groupadd -g 54322 dba \\創建管理組
[root@localhost ~]# useradd -u 54321 -g oinstall -G dba oracle
\\創建運行用戶
[root@localhost ~]# passwd oracle
更改用戶 oracle 的密碼 。
新的 密碼:
重新輸入新的 密碼:
passwd:所有的身份驗證令牌已經成功更新。
[root@localhost ~]# mkdir -p /u01/app/oracle \\建立基本組
[root@localhost ~]# chown -R oracle:oinstall /u01/app/
[root@localhost ~]# chmod -R 775 /u01/app/oracle/
Oracle 12c的安裝任務應以運行用戶oracle的身份執行,需適當調整oracle用戶的環境配置以滿
足要求。具體操作如下:
[root@localhost /]# vim /home/oracle/.bash_profile \\加入以下這段
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 PATH LANG NLS_LANG ORACLE_BASE ORACLE_HOME ORACLE_SID
export DISPLAY=:0.0
4.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
[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
準備工作完成后重新啟動系統。重新啟動之后,再次檢查之前的配置是否生效。重啟
[root@localhost media]# mkdir /tmp/abc
[root@localhost media]# cd /media/
[root@localhost media]# ls
linuxx64_12201_database.zip
[root@localhost media]# cp linuxx64_12201_database.zip /tmp/abc/
[root@localhost abc]# cd /tmp/abc/
[root@localhost abc]# unzip linuxx64_12201_database.zip
[root@localhost abc]# ls
database linuxx64_12201_database.zip
[root@localhost abc]# ls database/
install response rpm runInstaller sshsetup stage welcome.html
[root@localhost abc]# xhost +
//一定要以root用戶在圖形環境中操作
access control disabled, clients can connect from any host
[root@localhost abc]# cd /
[root@localhost /]# su oracle
[oracle@localhost /]$ cd /tmp/abc/database/
[oracle@localhost database]$ export DISPLAY=:0.0
//設置DISPLAY環境變量
[oracle@localhost database]$ ./runInstaller
輸入上面這條命令會出現如圖:
安裝過程中會彈出如下圖,需要打開終端執行一下
[root@localhost ~]# /u01/app/oraInventory/orainstRoot.sh
\\默認回車就行
更改權限/u01/app/oraInventory.
添加組的讀取和寫入權限。
刪除全局的讀取, 寫入和執行權限。
更改組名/u01/app/oraInventory 到 oinstall.
腳本的執行已完成。
[root@localhost~]#/u01/app/oracle/product/12.2.0/dbhome_1/root.sh
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 ...
略.....
首先需要解決sqlplus命令行方向鍵不能使用的問題,方法如下:
[root@oracle ~]# yum -y install ncurses* readline* //安裝軟件包所需依賴
[root@oracle ~]# tar zxf rlwrap-0.30.tar.gz.zip -C /usr/src
[root@oracle ~]# cd /usr/src/rlwrap-0.30/
[root@oracle rlwrap-0.30]# ./configure && make && make install
//使用root身份進行編譯安裝,安裝完成后即可使用!
[oracle@oracle ~]$ rlwrap sqlplus "/ as sysdba"
SQL*Plus: Release 12.2.0.1.0 Production on 星期二 11月 26 10:51:44 2019
Copyright (c) 1982, 2016, Oracle. All rights reserved.
連接到:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
SQL>
創建數據庫的步驟如下,
。
(1)以oracle用戶身份運行命令DBCA。
[oracle@localhost /]$ dbca
要啟動和關閉數據庫,必須具有Oracle管理員權限的用戶登錄,通常以具有SYSDBA權限的用戶登錄。
數據庫的啟動
啟動一個數據庫需要三個步驟:①啟動oracle實例(非裝載階段);②由實例裝載數據庫(裝載階段);③打開數據庫(打開階段)。
在startup命令中,可以使用不同的選項來控制數據庫的不同啟動步驟。
1)startup nomount(該命令不常用)
nomount選項僅僅啟動一個oracle實例,讀取init.ora初始化參數文件、啟動后臺進程、初始化SGA。當實例啟動后,系統將顯示一個SGA內存結構和大小的列表,如下:
[oracle@oracle ~]$ sqlplus / as sysdba //以oracle用戶登錄數據庫
SQL*Plus: Release 12.2.0.1.0 Production on 星期二 11月 26 11:18:36 2019
Copyright (c) 1982, 2016, Oracle. All rights reserved.
連接到:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
SQL> startup nomount
2)startup mount(某些時候會用到該命令)
startup mount 命令啟動實例并且裝載數據庫,但是沒有打開數據庫。oracle系統讀取控制文件中關于數據文件和重做日志文件的內容,但并不打開該文件。這種打開方式常在數據庫維護操作中使用,如對數據文件的更名、改變重做日志及打開歸檔模式等。在這種打開方式下,除了可以看到SGA系統列表以外,系統還會給出“數據庫裝載完畢”的提示。
SQL> alter database mount;
//由于上面已經執行了startup nomount命令,所以再更改它的狀態,就需要使用該命令
3)startup(正常時使用的命令)
startup命令完成啟動實例,裝載數據庫和打開數據庫三個步驟。此時,數據庫使數據文件和重做日志文件在線,通常還會請求一個或者多個回滾段;系統除了可以看到前面startup mount 方式下的所有提示外,還會給出一個“數據庫已經打開”的提示;數據庫系統處于正常的工作狀態,可以接收用戶的請求。
如果采用startup nomount或者startup mount的數據庫打開方式,必須采用alter database命令來執行裝載或打開數據庫的操作。
前面兩條命令都執行過了(startup nomount和alter database mount),所以這里再執行下面命令,數據庫就可以說是正確啟動完成了。如下:
SQL> alter database open;
正常來說,可以直接使用下面一條命令來正常啟動數據庫,如下:
SQL> startup //在數據庫關閉狀態下執行該命令,數據庫會依次啟動、裝載、打開。
ORACLE 例程已經啟動。
Total System Global Area 1593835520 bytes
Fixed Size 8793256 bytes
Variable Size 1023411032 bytes
Database Buffers 553648128 bytes
Redo Buffers 7983104 bytes
數據庫裝載完畢。
數據庫已經打開。
對于數據庫的關閉,有四種不同的關閉選項。
1)shutdown normal
shutdown normal是shutdown命令的默認選項。也就是說,如果用戶發出shutdown命令,即執行shutdown normal命令。
發出該命令后,任何新的連接都將不再允許連接到數據庫。在數據庫關閉之前,oracle將等待目前連接的所有用戶都從數據庫中退出后才開始關閉數據庫。采用這種方式關閉數據庫,在下一次啟動時不需要進行任何的實例恢復。但需要注意的是,采用這種方式時,也許關閉一個數據庫需要幾天或更長的時間。
發出該命令后,當前正在被oracle處理的SQL語句立即中斷,系統中任何沒有提交的事務全部回滾。如果系統中存在一個很長的未提交的事務,那么采用這種方式關閉數據庫也需要一段時間(該事務回滾時間)。系統不會等待連接到數據庫的所有用戶退出系統,而會強行回滾當前所有的活動事務,然后斷開所有的連接用戶。
3)shutdown transactional
shutdown transactional 命令常用來計劃關閉數據庫,它會等待當前連接到系統且正在活動的事務執行完畢,運行該命令后,任何新的連接和事務都是不允許的。它所有活動的事務執行完成后,數據庫將以和shutdown immediate同樣的方式關閉數據庫。
數據庫處于一種非正常工作狀態,不能用shutdown normal或shutdown immediate命令關閉數據庫;
需要立即關閉數據庫;
在啟動數據庫實例時遇到問題。
發出該命令后,所有正在運行的SQL語句將立即中止,所有未提交的事務將不回滾,oracle也不等待目前連接到數據庫的用戶退出系統;下一次啟動數據庫時需要實例恢復,因此,下一次啟動可能比平時需要更多的時間。
在關閉數據庫時最好使用shutdown immediate方式,因為這種方式安全且相對較快。不是萬不得已不要使用shutdown abort 方式,因為這種方式會造成數據丟失,并且恢復數據庫也需要較長時間。
當Oracle數據庫實例啟動完成后,為了使客戶端用戶能連接到Oracle實例,數據庫管理員還要
在Oracle所在的服務器上使用Inrctl 命令啟動監聽進程。如果數據庫實例關閉,-般也要關閉監聽
進程。
[oracle@oracle ~]$ lsnrctl //執行該命令
LSNRCTL for Linux: Version 12.2.0.1.0 - Production on 25-9月 -2019 21:59:04
Copyright (c) 1991, 2016, Oracle. All rights reserved.
歡迎來到LSNRCTL, 請鍵入"help"以獲得信息。
LSNRCTL> start //啟動監聽
啟動/u01/app/oracle/product/12.2.0/dbhome_1//bin/tnslsnr: 請稍候...
TNSLSNR for Linux: Version 12.2.0.1.0 - Production
系統參數文件為/u01/app/oracle/product/12.2.0/dbhome_1/network/admin/listener.ora
寫入/u01/app/oracle/diag/tnslsnr/oracle/listener/alert/log.xml的日志信息
監聽: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle)(PORT=1521)))
監聽: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
正在連接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle)(PORT=1521)))
LISTENER 的 STATUS
------------------------
別名 LISTENER
版本 TNSLSNR for Linux: Version 12.2.0.1.0 - Production
啟動日期 25-9月 -2019 21:59:12
正常運行時間 0 天 0 小時 0 分 0 秒
跟蹤級別 off
安全性 ON: Local OS Authentication
SNMP OFF
監聽程序參數文件 /u01/app/oracle/product/12.2.0/dbhome_1/network/admin/listener.ora
監聽程序日志文件 /u01/app/oracle/diag/tnslsnr/oracle/listener/alert/log.xml
監聽端點概要...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
監聽程序不支持服務
命令執行成功
直接命令開啟
[oracle@oracle ~]$ lsnrctl start //啟動監聽
[oracle@oracle ~]$ lsnrctl stop //關閉監聽
LSNRCTL for Linux: Version 12.2.0.1.0 - Production on 25-9月 -2019 22:00:31
Copyright (c) 1991, 2016, Oracle. All rights reserved.
正在連接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle)(PORT=1521)))
命令執行成功
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。