oracle 資料遷移案例 從 8.1.7.4到9.2.0.8
舊資料庫環境 作業系統為alpha 資料庫版本為8.1.7.4 使用者名稱 oracle ip地址 192.168.1.1 資料庫例項名為orcl
需要遷移到IBM aix 5308 資料庫版本為 oracle 9.2.0.8 使用者名稱為oracle ip地址為192.168.1.12資料庫例項名為orcl
遷移完成後,需要改回原先用的ip地址
遷移大概步驟:
第一步:資料遷移
舊庫:
1。收集資訊(包括表空間指令碼 需要在新庫建立同樣表空間用到,包括大小)
2。通知客戶停舊庫相關的應用
3。停listener listener stop
4。檢查job引數 停相關job
show parameter job
已經為0
5。停資料庫,再啟動一次資料庫,檢查是否還有session連線,用以下sql檢查
select username,count(*) from v$session group by username; 無的話 進行下步資料匯出
6。vi exp.sh
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
exp system/password full=y file=/oldxz/exp_full_xz1022.dmp log=/oldxz/exp_full_xz1022.log buffer=4096000 feedback=5000 compress=n recordlength=65535
nohup ./exp.sh & 放到後臺進行 注意按回車
7。匯出完成後 檢查log 是否正常 透過檢查 匯出16G資料檔案 花了三個多小時
8。複製tnsnames.ora到/oldxz目錄
新庫: 因為是新機器,需要安裝 oracle軟體,打補丁,建立資料庫需要用到的lv裸裝置,建立資料庫,建立原庫需要用到的表空間
1.安裝oracle軟體
2.打9.2.0.8補丁
3.建立lv 裸裝置
4.建立資料庫,生成建庫指令碼 --注意字符集要和原庫一致
5.建立表空間
6.匯入資料
imp system/password full=y file=/oldxz/exp_full_xz1022.dmp log=/oldxz/imp_full_xz1022.log buffer=4096000 feedback=5000 commit=y
recordlength=65535 ignore=y 匯入時間用了一個小時左右 因為是新儲存,速度比較塊 每秒達到100多M
7.匯入完成後 檢查log 是否正常
8.編譯無效物件
cd $ORACLE_HOME/rdbms/admin/utrlp.sql
sqlplus "/as sysdba"
@ utlrp.sql
9.複製/oldxz/下的tnsnames.ora到$ORACLE_HOME/network/admin目錄下
10.配置listener
11.檢查兩邊失效物件是否一致,也可用toad工具進行檢查
SELECT OWNER,OBJECT_NAME,OBJECT_TYPE FROM DBA_OBJECTS WHERE STATUS='INVALID' ORDER BY OWNER,OBJECT_NAME ;
要是舊庫正常 ,而新庫不正常 就要在新庫解決這些失效的物件
這次遇到的問題 是sys的許可權在新庫中沒有賦予對應的使用者,因為是用system使用者匯出和匯入
用以下sql在原庫進行進行檢查
SELECT * FROM dba_tab_privs WHERE GRANTOR='SYS';
查出來後,在新庫賦予許可權給對應的使用者
GRANT SELECT ON V_$DATAFILE to test;
GRANT SELECT ON V_$FILESTAT to test;
GRANT SELECT ON V_$LATCH to test;
GRANT SELECT ON V_$LIBRARYCACHE to test;
GRANT SELECT ON V_$LOCK to test;
GRANT SELECT ON V_$LOCKED_OBJECT to test;
GRANT SELECT ON V_$PARAMETER to test;
GRANT SELECT ON V_$PROCESS to test;
GRANT SELECT ON V_$ROLLNAME to test;
GRANT SELECT ON V_$ROLLSTAT to test;
GRANT SELECT ON V_$ROWCACHE to test;
GRANT SELECT ON V_$SESSION to test;
GRANT SELECT ON V_$SGA to test;
GRANT SELECT ON V_$SQLTEXT to test;
GRANT SELECT ON V_$SYSSTAT to test;
12.在新庫檢查db_link用到的相關tns,用tnsping測試是否正常連線
和相關使用者登入進去,看連線到 dblink 看是否能正常查詢
dblink檢視名稱dba_db_links
conn test/aaa
select * from
13.啟監聽和資料庫
14.通知客戶測試下應用在新庫臨時ip 192.168.1.2 下是否正常 測試透過
第二步 切換ip,生產正式啟用到新ip上
舊庫操作:
shutdown 資料庫
和關掉主機
新庫操作
停 lsnrctl 和資料庫
smitty tcp/ip 由192.168.1.2改為192.168.1.1
改完後 啟動資料庫和監聽
完成切換 正式啟用
繼續觀察應用看是否正常
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7199859/viewspace-476767/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle資料庫從 9.2.0.1 到 9.2.0.8升級步驟 for winOracle資料庫
- oracle 遷移資料庫到asmOracle資料庫ASM
- Oracle資料庫從 9.2.0.1 到 9.2.0.8升級步驟for linuxOracle資料庫Linux
- 資料從Oracle向Mysql資料遷移例項OracleMySql
- sqlldr 完成mysql到oracle的資料遷移MySqlOracle
- 從MySQL到Redis提升資料遷移的效率MySqlRedis
- ORACLE 資料遷移Oracle
- 1.0 ORACLE到MYSQL資料遷移方式選型OracleMySql
- 從Serv-U到vsftp的資料遷移FTP
- 遷移資料庫到ASM資料庫ASM
- 【資料遷移】RMAN遷移資料庫到ASM(二)切換資料檔案到ASM資料庫ASM
- ORACLE資料庫遷移Oracle資料庫
- 從 Oracle 到 TiDB,全鏈路資料遷移平臺核心能力和杭州銀行遷移實踐OracleTiDB
- 從Sql Server遷移資料到OracleSQLServerOracle
- 使用SQL Developer 遷移異構資料庫到OracleSQLDeveloper資料庫Oracle
- 從 SQL Server 到 MySQL (一):異構資料庫遷移ServerMySql資料庫
- Django應用資料庫從MySQL到PostgreSql的遷移Django資料庫MySql
- 【資料遷移】RMAN遷移資料庫到ASM(三)遷移onlinelog等到ASM資料庫ASM
- 遷移案例一: oracle 8i 檔案遷移Oracle
- 遷移資料庫到SQLonLinuxDocker資料庫SQLLinuxDocker
- 【資料遷移】RMAN遷移資料庫到ASM(一)建立ASM磁碟組資料庫ASM
- Oracle資料庫資料遷移流程Oracle資料庫
- AWS RDS Oracle資料遷移Oracle
- oracle 資料檔案遷移Oracle
- oracle遷移資料經驗Oracle
- oracle資料檔案遷移Oracle
- Oracle資料遷移參考Oracle
- MySQL 資料遷移Oracle工作MySqlOracle
- 藉助ogg完成oracle到mysql的資料遷移OracleMySql
- 用rman從檔案系統遷移資料庫到asm資料庫ASM
- [Sqlite] 資料遷移備份--從低版本到高版本SQLite
- ZT 遷移案例一: oracle 8i 檔案遷移Oracle
- 從MySQL到ORACLE程式遷移的注意事項(轉)MySqlOracle
- 利用Oracle Data Guard完成跨平臺的資料庫遷移案例Oracle資料庫
- 資料庫-oracle-資料庫遷移資料庫Oracle
- 遷移資料庫檔案到ASM資料庫ASM
- Oracle 資料遷移(從Oracle11G高版本遷移到Oracle10G低版本)Oracle
- Django資料從sqlite遷移資料到MySQLDjangoSQLiteMySql