本次将两台服务器采用直连方式通信(不占用交易网IP),原测试机器配置IP为11.11.11.1,新测试机器配置IP为11.11.11.2。
迁移前后OS版本及数据库版本完全一致。
原测试环境信息如下:[root@lktest ~]# ifconfig
em1 Link encap:Ethernet HWaddr 14:18:77:63:B4:4F
inet addr:**.**.**.** Bcast:**.**.**.** Mask:255.255.255.0
inet6 addr: fe80::1618:77ff:fe63:b44f/64 Scope:Link
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:4213 errors:0 dropped:0 overruns:0 frame:0
TX packets:7 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:386816 (377.7 KiB) TX bytes:596 (596.0 b)
Interrupt:40
em4 Link encap:Ethernet HWaddr 14:18:77:63:B4:4E
inet addr:11.11.11.1 Bcast:11.11.11.255 Mask:255.255.255.0
inet6 addr: fe80::1618:77ff:fe63:b44e/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:286 errors:0 dropped:0 overruns:0 frame:0
TX packets:177 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:27959 (27.3 KiB) TX bytes:33913 (33.1 KiB)
Interrupt:45
[root@lktest ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_lktest-lv_root 50G 3.1G 44G 7% /
tmpfs 63G 460K 63G 1% /dev/shm
/dev/sda1 485M 41M 419M 9% /boot
/dev/mapper/vg_lktest-lv_oradata 1.2T 705G 447G 62% /oradata
/dev/mapper/vg_lktest-lv_u01 79G 5.0G 70G 7% /u01
[root@lktest ~]# free -m
total used free shared buffers cached
Mem: 129013 74301 54711 0 188 7037
-/+ buffers/cache: 67074 61938
Swap: 32767 92 32675
SQL> show parameter spfile
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string /u01/app/oracle/product/11.2.0
/dbhome_1/dbs/spfiletest.ora
SQL> show parameter contr
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
control_file_record_keep_time integer 7
control_files string /oradata/test/control01.ctl, /
oradata/test/control02.ctl, /o
radata/test/control03.ctl
control_management_pack_access string DIAGNOSTIC+TUNING
SQL> select name from v$datafile;
NAME
--------------------------------------------------------------------------------
/oradata/test/system01.dbf
/oradata/test/sysaux01.dbf
/oradata/test/undotbs01.dbf
/oradata/test/users01.dbf
/oradata/test/USERS.ORA
5 rows selected.
新测试环境信息如下:
[root@lktest1 ~]# cat /etc/issue
Red Hat Enterprise Linux Server release 6.5 (Santiago)
Kernel \r on an \m
[root@lktest1 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda5 99G 2.9G 91G 4% /
tmpfs 32G 228K 32G 1% /dev/shm
/dev/sda3 485M 39M 421M 9% /boot
/dev/sda6 79G 7.4G 68G 10% /u01
/dev/sda8 1.2T 199M 1.1T 1% /oradata
[root@lktest1 ~]# free -m
total used free shared buffers cached
Mem: 64307 8941 55365 0 67 7923
-/+ buffers/cache: 950 63356
Swap: 32767 0 32767
使用oracle用户将原测试服务器oracle安装目录拷贝至新测试服务器:
[oracle@lktest u01]# scp -r app/ 11.11.11.2:/u01/
在新测试服务器上使用oracle用户relink:
[oracle@lktest1 ~]$ relink all
writing relink log to: /u01/app/oracle/product/11.2.0/dbhome_1/install/relink.log
[oracle@lktest1 ~]$
修改新测试服务器上的listener.ora tnsnames.ora中的主机名
配置原测试服务器和目标端oracle用户的等效性(以便后台拷贝数据文件使用):
sshUserSetup.sh -user oracle -hosts "11.11.11.1 11.11.11.2" -advanced –PromptPassphrase
编辑cp.sh脚本,内容如下:
scp -r test oracle@11.11.11.2:/oradata/
因数据量较大,后台执行拷贝命令:
[oracle@lktest oradata]$ nohup ./cp.sh &
[1] 39074
[oracle@lktest oradata]$ nohup: ignoring input and appending output to `nohup.out'
添加开机启动脚本:
[root@lktest ~]# cat /etc/rc.local
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.
touch /var/lock/subsys/local
su - oracle -c '/bin/bash /home/oracle/scripts/startupdb.sh'
[oracle@lktest ~]$ scp -r scripts/ oracle@11.11.11.2:/home/oracle/
startupdb.sh 100% 348 0.3KB/s 00:00
startupdb.sql 100% 13 0.0KB/s 00:00
因源端内存128GB,sga_target=64GB;迁移至新机器内存64GB,修改sga_max_size=30g,sgz_target=30g:
alter system set sga_max_size=30g scope=spfile;
alter system set sga_target=30g scope=spfile;
重启测试后正常:
[root@lktest1 ~]# reboot
Broadcast message from root@lktest1
(/dev/pts/2) at 15:04 ...
The system is going down for reboot NOW!
[root@lktest1 ~]#
Session is closed
Disconnected from server
Last login: Fri Jun 17 14:58:45 2016 from 11.11.11.1
[root@lktest1 ~]#
[root@lktest1 ~]# su - oracle
oracle@lktest1 ~]$ lsnrctl start
LSNRCTL for Linux: Version 11.2.0.4.0 - Production on 17-JUN-2016 15:08:49
Copyright (c) 1991, 2013, Oracle. All rights reserved.
TNS-01106: Listener using listener name LISTENER has already been started
[oracle@lktest1 ~]$ ps -ef |grep ora_
oracle 3151 1 0 15:07 ? 00:00:00 ora_pmon_test
oracle 3153 1 0 15:07 ? 00:00:00 ora_psp0_test
oracle 3155 1 0 15:07 ? 00:00:00 ora_vktm_test
oracle 3159 1 0 15:07 ? 00:00:00 ora_gen0_test
oracle 3161 1 0 15:07 ? 00:00:00 ora_diag_test
oracle 3163 1 0 15:07 ? 00:00:00 ora_dbrm_test
oracle 3165 1 0 15:07 ? 00:00:00 ora_dia0_test
oracle 3167 1 4 15:07 ? 00:00:04 ora_mman_test
oracle 3169 1 0 15:07 ? 00:00:00 ora_dbw0_test
oracle 3171 1 0 15:07 ? 00:00:00 ora_dbw1_test
oracle 3173 1 0 15:07 ? 00:00:00 ora_dbw2_test
oracle 3175 1 0 15:07 ? 00:00:00 ora_dbw3_test
oracle 3177 1 0 15:07 ? 00:00:00 ora_lgwr_test
oracle 3179 1 0 15:07 ? 00:00:00 ora_ckpt_test
oracle 3181 1 0 15:07 ? 00:00:00 ora_smon_test
oracle 3183 1 0 15:07 ? 00:00:00 ora_reco_test
oracle 3185 1 0 15:07 ? 00:00:00 ora_mmon_test
oracle 3187 1 0 15:07 ? 00:00:00 ora_mmnl_test
oracle 3189 1 0 15:07 ? 00:00:00 ora_d000_test
oracle 3191 1 0 15:07 ? 00:00:00 ora_s000_test
oracle 3201 1 0 15:07 ? 00:00:00 ora_qmnc_test
oracle 3251 1 0 15:07 ? 00:00:00 ora_cjq0_test
oracle 3401 1 0 15:07 ? 00:00:00 ora_q000_test
oracle 3403 1 0 15:07 ? 00:00:00 ora_q001_test
oracle 3451 3426 0 15:08 pts/0 00:00:00 grep ora_
SQL> select open_mode from v$database;
OPEN_MODE
--------------------
READ WRITE