亚洲成精品动漫久久精久,九九在线精品视频播放,黄色成人免费观看,三级成人影院,久碰久,四虎成人欧美精品在永久在线

掃一掃
關(guān)注微信公眾號(hào)

Oracle:大數(shù)據(jù)的備份
2006-06-06   Chinaitlab

  問:公司里的oracle數(shù)據(jù)庫有20G之大(這是一個(gè)方案的大小.原來這個(gè)方案有30G,我已經(jīng)把能刪的數(shù)據(jù)都刪了),怎么備份?感覺備份一次好慢啊.專家有什么指導(dǎo)一下的嗎?(另:20G的數(shù)據(jù)庫是不是備份也要20G這樣?)我希望能每周備份一次,最好每天一次.

  答:方法一:首選需要在UNIX下創(chuàng)建一個(gè)管道(只創(chuàng)建一次即可):

  $mknod ./exp_pipe p

  $ ls -l exp_pipe

  prw-rw-r-- 1 report group 0 Mar 17 05:20 exp_pipe

  然后通過管道,將EXP導(dǎo)出的數(shù)據(jù)直接壓縮,注意:下面二行要寫在同一個(gè)shell腳本中。

  compress < ./exp_pipe > ./tmp_now.dmp.Z &

  exp user/passwd@數(shù)據(jù)庫連接串 file=./exp_pipe direct=y compress=no log=./exp.log

  20G的DMP文件,壓縮后的大小在4G左右。

  方法二:考慮到機(jī)器的速度和效率的問題,一般不建議使用exp對(duì)數(shù)據(jù)量大的數(shù)據(jù)庫進(jìn)行備份,因?yàn)楸容^慢。oracle的rman備份可以支持增量備份,你可以自己設(shè)置一個(gè)備份策略,好比每周日做一次數(shù)據(jù)庫全備份(level 0 級(jí)的備份),然后周一周二做增量備份(level 1 級(jí)的備份),周三在做一次數(shù)據(jù)庫全備份(level 0),最后周四、周五、周六做數(shù)據(jù)庫的增量備份(level 1)。這樣既可以保證你的備份在大部分時(shí)間內(nèi)比較快,而且也可一保證在需要恢復(fù)時(shí)較快。具體的備份策略要根據(jù)你的要求而定,我只是舉個(gè)例子。

  介紹一下什么是Oracle的rman備份:

  Oracle 的RMAN備份- -

  查看那當(dāng)前使用那個(gè)spfile文件 :

  SQL> select name,value from v$parameter where name='spfile';

  1。檢查數(shù)據(jù)庫的歸檔方式。如果不是規(guī)定方式,則要修改數(shù)據(jù)庫為歸檔方式。

  1.1 以dba帳號(hào)登陸,

  $ sqlplus '/as sysdba';

  SQL> archive log list;

  Database log mode No Archive Mode #非歸檔方式

  Automatic archival Enabled

  Archive destination /oracle/bakram/log_archive

  Oldest online log sequence 161

  Current log sequence 163

  1.2 如果第一步為 No Archive Mode ,則將數(shù)據(jù)庫修改修改為歸檔方式

  1.2.1 建立存檔路徑.

  $mkdir /oracle/bakram/log_archive

  1.2.2 在/oracle/OracleHome/dbs/建立一文件 firstSpfile.ora

  文件內(nèi)容為:

  SPFILE="/oracle/OracleHome/dbs/spfileorcyehoo.ora" # 實(shí)例名稱

  log_archive_start=true;

  log_archive_format=ARC%T%S.arc #格式

  log_archive_dest=/oracle/bakram/log_archive #存放的路徑

  1.3 停止數(shù)據(jù)庫

  $/oracle/dbstop.sh

  1.4 修改歸檔方式

  1.4.1 建立一個(gè)dbstartmount.sh文件

  --------

  echo "begin to start oracle mount..."

  lsnrctl start

  sqlplus /nolog <

  connect /as sysdba

  startup mount

  exit

  exit

  sleep 10

  echo "oracle have started oracle mount..."

  --------

  執(zhí)行./dbstartmount.sh

  SQL>alert database archivelog;

  Database altered.

  將數(shù)據(jù)庫打開

  SQL> alert database open;

  Database altered.

  SQL>

  1.5.配置dbstart.sh。 啟動(dòng)數(shù)據(jù)庫

  $vi /oracle/dbstart.sh #編輯啟動(dòng)腳本

  ---------------------------------------------

  echo "begin to start oracle..."

  lsnrctl start

  sqlplus /nolog <

  connect /as sysdba

  startup pfile="/oracle/OracleHome/dbs/firstSpfile.ora" #修改這里。即啟動(dòng)時(shí)加載自己配置的文件。

  exit

  exit

  sleep 10

  echo "oracle have started..."

  --------------------------------------

  2. 創(chuàng)建RMAN目錄

  $ sqlplus system/data#yes

  2.1創(chuàng)建一個(gè)獨(dú)立的表空間

  SQL> create tablespace back datafile 'back_css.dmp' size 50m;

  2.2創(chuàng)建RMAN用戶

  SQL> create user rman identified by rman default tablespace back temporary tablespace temp;

  2.3給RMAN授予權(quán)限

  SQL>grant connect,resource,recovery_catalog_owner to rman;

  2.4打開RMAN

  $RMAN

  2.5連接數(shù)據(jù)庫

  RMAN>connect catalog rman/rman;

  2.6 創(chuàng)建恢復(fù)目錄

  RMAN>create catalog tablespace back;

  3. 注冊(cè)目標(biāo)數(shù)據(jù)庫(需要備份的數(shù)據(jù)庫)

  3.1 注冊(cè)數(shù)據(jù)庫

  $rman target sys/data#yes catalog rman/rman@yehoo; #yehoo為實(shí)例名。

  ----

  Recovery Manager: Release 9.2.0.1.0 - Production

  Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.

  connected to target database: YEHOO (DBID=2840368994)

  connected to recovery catalog database

  ----

  RMAN> register database;

  3.2 查詢恢復(fù)目錄

  怎么能知道我們的oracle9i是OLTP還是DSS

  4。備份

  備份表空間:

  backup tag 'tsuser' format '/oracle/css_20041209_%u_%s_%p' tablespace css;

  5. 維護(hù)rman

  5.1 查看現(xiàn)有備份

  RMAN> list backup;

  5.2 列出過期備份

  RMAN> report obsolete

  6. 選擇備份策略

熱詞搜索:

上一篇:思科將更新CCIE安全筆試和實(shí)驗(yàn)考試大綱
下一篇:如何讓Oracle的數(shù)據(jù)不丟失?

分享到: 收藏