您好,登錄后才能下訂單哦!
博文結(jié)構(gòu)
配置和連接數(shù)據(jù)庫(kù)
控住文件的管理
日志文件的管理
歸檔日志的管理
數(shù)據(jù)字典
在實(shí)際生產(chǎn)環(huán)境中, Oracle 一般都是通過(guò)遠(yuǎn)程方式進(jìn)行管理及維護(hù), Oracle 遠(yuǎn)程操作除了對(duì)客戶端工具的使用外,它的通信原理也是需要掌握的。
無(wú)論是使用SQL*Plus工具還是使用第三方工具連接遠(yuǎn)程數(shù)據(jù)庫(kù),都必須建立客戶端與服務(wù)器端
之間的連接。Oracle 提供了Oracle Net Services 組件,用于方便地配置和管理網(wǎng)絡(luò)連接。這些組件不
需要單獨(dú)安裝,在安裝Oracle服務(wù)器或客戶端軟件時(shí)會(huì)自動(dòng)安裝。
開(kāi)啟監(jiān)聽(tīng)
[oracle@Oracle ~] $ lsnrctl start
1.Oracle Net協(xié)議
如圖所示,Oracle 通過(guò)Oracle Net協(xié)議實(shí)現(xiàn)客戶端與服務(wù)器端的連接及數(shù)據(jù)傳遞。Oracle Net
是同時(shí)駐留在Oracle服務(wù)器端和客戶端上的一一個(gè)軟件層,它封裝了TCP/IP 協(xié)議,負(fù)責(zé)建立和維護(hù)客
戶端應(yīng)用程序到數(shù)據(jù)庫(kù)服務(wù)器的連接。
2.客戶端與服務(wù)器端的連接過(guò)程
在分析客戶端與服務(wù)器端的連接機(jī)制之前,先要了解兩個(gè)概念:一個(gè)是Oracle Net監(jiān)聽(tīng)器,另一個(gè)是Oracle網(wǎng)絡(luò)服務(wù)名。
案例:客戶機(jī)遠(yuǎn)程連接oracle
[root@oracle ~]# systemctl stop firewalld
[root@oracle ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
[root@oracle ~]# systemctl restart network
[root@oracle ~]# xhost +
access control disabled, clients can connect from any host
[root@oracle ~]# su - oracle
[oracle@oracle root]$ export DISPLAY=:0.0
[oracle@oracle ~]$ lsnrctl start
[oracle@oracle ~]$ sqlplus / as sysdba
SQL> select instance_name from v$instance;
[oracle@oracle admin]$ pwd
/u01/app/oracle/product/12.2.0/dbhome_1/network/admin
[oracle@oracle admin]$ vim tnsnames.ora \\gaiyi改一下地址
客戶端配置如下:
下載oracle客戶端軟件
默認(rèn)一直下一步
點(diǎn)開(kāi)編輯文件
配置如下
ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.1)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SID=orcl)
)
)
保存
打開(kāi)連接
控制文件在Oracle 數(shù)據(jù)庫(kù)中有非常重要的作用,若控制文件損壞、丟失,將導(dǎo)致數(shù)據(jù)庫(kù)無(wú)法啟動(dòng),所以合理地管理維護(hù)控制文件,對(duì)于DBA來(lái)說(shuō)至關(guān)重要。
對(duì)于DBA來(lái)講,Oracle數(shù)據(jù)庫(kù)控制文件是非常重要的文件。它是在數(shù)據(jù)庫(kù)創(chuàng)建時(shí)自動(dòng)生成的二進(jìn)制文件,其中記錄了數(shù)據(jù)庫(kù)的狀態(tài)信息,主要包括以下內(nèi)容:
數(shù)據(jù)庫(kù)的名稱, 一-個(gè)控制文件只能屬于一個(gè)數(shù)據(jù)庫(kù)。
數(shù)據(jù)庫(kù)的創(chuàng)建 時(shí)間。
數(shù)據(jù)文件的名稱、位置、聯(lián)機(jī)、脫機(jī)狀態(tài)信息。
重做日志文件的名稱、 位置及歸檔信息。
所有表空間信息。
當(dāng)前日 志序列號(hào)。
最近檢查點(diǎn)信息。
控制文件在數(shù)據(jù)庫(kù)啟動(dòng)的MOUNT階段被讀取。數(shù)據(jù)庫(kù)啟動(dòng)與控制文件的關(guān)系如所示。
案例:備份恢復(fù)數(shù)據(jù)庫(kù)
SQL> select name from v$controlfile;
NAME
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/orcl/control01.ctl
/u01/app/oracle/oradata/orcl/control02.ctl
SQL>
SQL> select type,record_size,records_total,records_used from v$controlfile_record_section;
[oracle@rhel1 ~]$ su - root
[root@oracle ~]# mkdir -p /backup1/control
[root@oracle ~]# mkdir -p /backup2/control
[root@oracle ~]# chown -R oracle /backup1
[root@oracle ~]# chown -R oracle /backup2
SQL> alter system set
2 control_files=
3 '/u01/app/oracle/oradata/orcl/control01.ctl',
4 '/backup1/control/control02.ctl',
5 '/backup2/control/control03.ctl' scope=spfile;
系統(tǒng)已更改。
關(guān)閉數(shù)據(jù)庫(kù)
SQL> shutdown immediate;
使用操作系統(tǒng)命令將文件復(fù)制到新的位置
SQL> quit;
[oracle@rhel1 ~]$cp /u01/app/oracle/oradata/orcl/control01.ctl /backup1/control/control02.ctl
[oracle@rhel1 ~]$ cp /u01/app/oracle/oradata/orcl/control01.ctl /backup2/control/control03.ctl
重新啟動(dòng)數(shù)據(jù)庫(kù)
[oracle@rhel1 ~]$ sqlplus sys/123456 as sysdba
SQL>startup
4.備份與恢復(fù)控制文件
直接用現(xiàn)有的完好的控制文件覆蓋損壞或丟失的控制文件
模擬故障,停止數(shù)據(jù)庫(kù),刪除控制文件
sql>shutdown immediate
sql>quit
$rm -f /badkup1/control/control02.ctl
啟動(dòng)數(shù)據(jù)庫(kù)
sql>startup 觀察現(xiàn)象
恢復(fù)控制文件
sql>shutdown abort;
sql>quit
$ cp /u01/app/oracle/oradata/orcl/control01.ctl /backup1/control/control02.ctl
再次啟動(dòng)數(shù)據(jù)庫(kù)
sql>startup
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。