生產系統32BITORACLE10G到64BIT遷移
為了達到提升SGA和PGA得目的我會調整引數,還由於為了最小化誤操作順利的完成資料遷移工作,我會在各個步驟中給中具體的引數值、命令和需要建立的目錄。這裡說明一下對於新的伺服器經過分析我準備為SGA分配16GB記憶體,PGA分配到3GB,剩餘的5GB來分配給系統使用。
1、遷移前幾天停止現有DATA GUARD,提前安裝好備庫伺服器的系統和資料庫軟體。
2、遷移前一天停止RMAN指令碼中的DELETE ALL INPUT來停止刪除歸檔日誌檔案。
3、全備前使用V$LOG來確定當前的日誌序列號,為確定恢復所需要的歸檔日誌檔案做好準備。
4、在當前伺服器中新建目錄(/??)來儲存RMAN備份檔案
5、使用RMAN全備命令進行完整的RMAN備份,指定目錄到新建的目錄(/??)中。同時儲存RMAN備份日誌,用來過後確定ORACLE控制檔案所在的備份集備份片。
命令如下:
run {
backup format "/??/db_%s_%p_%T"
database plus archivelog
format "/??/arch_%s_%p_%T";
}
6、在原資料庫中使用CREATE PFILE FROM SPFILE來更新PFILE,保證所有的引數設定都是最新的
7、在目標伺服器中透過DBCA新建資料庫,資料庫的名字和原資料庫一樣,我們的生產庫就為POMSPRO,但是其他的檔案位置不需要更改,因為這個步驟只是為了建立初始例項(INSTANCE)
8、建立完成後刪除所有資料檔案,日誌檔案,控制檔案,同時刪除SPFILE。
9、在目標伺服器中新建目錄,此目錄和原伺服器中的目錄一樣,及和第5步中的目錄一樣(/??),用來存放RMAN全備的備份集備份片。
10、透過FTP傳輸所有備份集備份片到目標伺服器中新建的目錄中及/??目錄中。
11、修改目標伺服器中資料庫的PFILE,要求和原資料庫PFILE一樣。然後修改部分引數,如下:
log_archive_dest_1='LOCATION=/u01/oradata/gelcprod10g
VALID_FOR=(ALL_LOGFILES,ALL_ROLES)'
pga_aggregate_target = 3221225472
sga_max_size= 17179869184
sga_target= 17072495001
data guard 引數
12、啟動資料庫到NOMOUNT狀態,此時例項已經啟動記憶體已經分配。
13、在目標伺服器中新建目錄用來存在恢復的控制檔案,參照PFILE中的配置及建立如下目錄
/oradata/gelcprod10g/GELCPRO/
14、使用命令恢復控制檔案,命令如下
restore controlfile from ‘/??/??’
??代表的是第5步確定的控制檔案所在的備份片
15、啟動資料庫到MOUNT狀態,此時資料庫已經載入了控制檔案。
16、在目標伺服器中新建資料檔案目錄,日誌目錄,歸檔目錄,同時建立各種TRACE
檔案目錄。我們需要建立的目錄如下
/u01/oradata/gelcprod10g 歸檔位置
/oradata/gelcprod10g/GELCPRO/ 資料檔案所在位置
/oradata/gelcprod10g/GELCPRO/ 日誌檔案組1所在位置
/u01/oradata/gelcprod10g/GELCPRO/ 日誌檔案組2所在位置
/home/oraprod/admin/GELCPRO/adump
/home/oraprod/admin/GELCPRO/bdump
/home/oraprod/admin/GELCPRO/cbump
/home/oraprod/admin/GELCPRO/udump
/home/oraprod/admin/GELCPRO/dpdump
/home/oraprod/admin/GELCPRO/pfile
這些目錄用來存放各種TRACE
17、透過RESOTRE DATABASE來進行資料檔案還原
到此準備工作完成,下面的步驟需要斷開所有應用,停止所有業務進行操作
18、關閉應用,確定不會再有新的資料寫入到資料庫。
19、遷移前提取原庫的物件資訊,使用命令如下
select count(*) from user_tables;
select count(*) from user_indexes;
select count(*) from user_views;
select count(*) from user_synonyms;
select OBJECT_TYPE, count(*)
from user_objects
group by OBJECT_TYPE
having OBJECT_TYPE not in ('TABLE', 'INDEX', 'VIEW','SYNONYM');
select count(*) from dba_users;
select count(*) from dba_db_links;
select count(*) from user_jobs;
20、進行多次日誌切換,確保所有更改的資料都已經寫入到歸檔日誌,我們的日誌組為3組所以進行4-6次切換保證所有的資料都進入了歸檔日誌,使用日下命令 ALTER SYSTEM SWITCH LOGFILE
21、透過在原資料庫檢視V$LOG來確定當前日誌序列(SEQUENCE#),判斷出需要複製的歸檔日誌檔案,為了更加安全可以在最早的歸檔以前再多取幾個。
22、透過FTP複製原伺服器歸檔日誌到目標伺服器相應的目錄中,及複製到目錄/u01/oradata/gelcprod10g中。
23、透過應用歸檔日誌檔案進行恢復。命令如下
recover database until logseq **
**代表最後一個歸檔日誌檔案的SEQUENCE#
24、使用ALTER DATABASE OPEN RESETLOGS來開啟資料庫。
25、使用命令SHUTDOWN IMMEDIATE來關閉資料庫。
26、使用命令STARTUP MIGRATE啟動資料庫。
27、執行rdbms/admin 下的utlirp.sql指令碼
28、使用命令SHUTDOWN IMMEDIATE來關閉資料庫。
29、使用命令STARTUP來啟動資料庫。
30、執行rdbms/admin 下的utlrp.sql指令碼
31、使用命令SHUTDOWN IMMEDIATE來關閉資料庫。
32、使用命令STARTUP來啟動資料庫。
到此資料遷移工作完成,下面的步驟進行IP切換和監聽配置,此時需要關閉原庫並且禁用網路服務,避免IP衝突
33、關閉原生產伺服器網路服務使用命令如下
service network stop
34、修改/etc/sysconfig/network-scripts/ ifcfg-eth0引數如下
DEVICE=eth0
BOOTPROTO=static
BROADCAST=192.168.8.255
IPADDR=192.168.8.9
NETMASK=255.255.255.0
NETWORK=192.168.8.0
ONBOOT=yes
TYPE=Ethernet
35、修改/etc/hosts中主機名所對應的IP 192.168.8.9
36、使用命令重啟網路服務,命令如下
service network restart
37、透過FTP複製原資料庫的listener.ora和tnsnames.ora檔案到目標伺服器的network/admin目錄下
38、透過命令來重啟ORACLE監聽器,命令如下
Lsnrctl stop
Lsnrctl start
到此IP切換工作完成,下面的步驟是進行物件的驗證,作為DBA只能對資料庫中的各種物件進行驗證,而不會對具體的資料進行驗證
39、驗證使用者所擁有的表數量,使用如下命令
select count(*) from user_table;
40、驗證使用者所擁有的索引數量,使用如下命令
select count(*) from user_indexes;
41、驗證使用者所擁有的檢視數量,使用如下命令
select count(*) from user_views;
42、驗證使用者所擁有的同義詞數量,使用如下命令
select count(*) from user_synonyms;
43、驗證其他一些物件,包括過程,函式,觸發器等,使用如下命令
select OBJECT_TYPE, count(*)
from user_objects
group by OBJECT_TYPE
having OBJECT_TYPE not in ('TABLE', 'INDEX', 'VIEW');
44、驗證所有使用者使用如下命令
select count(*) from dba_users;
45、驗證所用Dblink使用如下命令
select count(*) from dba_db_links;
46、驗證使用者擁有的JOB使用如下命令
select count(*) from user_jobs;
至此我們DBA所能做的資料驗證結束,需要開發人員進行詳細的資料抽樣驗證,等到資料驗證完成我們就可以啟動應用。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7728585/viewspace-769243/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 新舊系統更替產生的資料遷移問題
- 銀行業生產系統儲存資料遷移方法及實踐行業
- SAP ECC6 EHP4 System Copy 系統遷移 32bit to 64bit
- win10遷移系統到固態硬碟 win10系統遷移到ssd教程Win10硬碟
- 生產系統恢復到異機測試
- 遷移windows子系統Windows
- 系統資料遷移
- Windows 遷移系統盤Windows
- 生產環境資料遷移問題彙總
- 使用RMAN遷移檔案系統資料庫到ASM資料庫ASM
- 如何遷移ASM資料檔案到檔案系統ASM
- 遷移檔案系統管理下的db到asm下ASM
- Arch Linux 系統遷移Linux
- ASM檔案系統遷移ASM
- asm 檔案系統遷移ASM
- 對序列進行遷移時產生間斷的原因
- 用rman從檔案系統遷移資料庫到asm資料庫ASM
- 四、用rman從檔案系統遷移資料庫到asm資料庫ASM
- mysqldump同步生產到生產資料MySql
- 遷移和移動 UNIX 檔案系統(轉)
- 產品的生態系統
- Azure ASM到ARM遷移 (三) Reserved IP的遷移ASM
- 利用rman遷移裸裝置資料檔案到檔案系統
- 三、rman 資料庫遷移--從檔案系統到裸裝置資料庫
- Velero系列文章(四):使用Velero進行生產遷移實戰
- win10 系統變數遷移Win10變數
- 最近老聽到幾個全球的重要生產系統當機...
- 直播系統程式碼,點選產生動畫效果並移動的特效動畫特效
- 服裝生產管理軟體鞋帽生產系統的優點
- linux 上32bit的 database向 64bit的database遷移LinuxDatabase
- 大型系統儲存層遷移實踐
- Oracle 跨作業系統 遷移 說明Oracle作業系統
- 遺留系統的技術棧遷移
- Oracle 跨作業系統遷移說明Oracle作業系統
- Oracle跨作業系統遷移說明Oracle作業系統
- 遷移資料庫到ASM資料庫ASM
- 將ABAP On-Premises系統連線到中央檢查系統以進行自定義程式碼遷移REM
- APS高階計劃排程系統和生產排產系統