十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
简单步骤:
成都网站设计、做网站,成都做网站公司-创新互联建站已向1000多家企业提供了,网站设计,网站制作,网络营销等服务!设计与技术结合,多年网站推广经验,合理的价格为您打造企业品质网站。
1、正常关闭数据库;
2、迁移所有数据文件到新的盘;
3、启动实例到mount阶段,修改数据文件的路径;
4、启动实例到open阶段,正常使用数据库。
5、另外,如果想要迁移日志文件,比较好办,在新盘新目录下创建新的redo,删除原来盘上的redo。
6、如果想要迁移控制文件,那么:
6.1、正常关闭数据库;
6.2、迁移控制文件到新盘新目录;
6.3、启动实例到nomount阶段;
6.4、修改实例参数control_files指向新的目录;
6.4、alter database mount;
6.5、alter databse open;
如果要迁移数据库软件,那就另说了,可以先安装一套DB软件到新盘新目录,然后修改环境变量指向新的环境,重要的变量包括ORACLE_BASE、ORACLE_HOME、PATH等。
如果:原库的system表空间和undo表空间的数据文件、及归档日志 都在的话,是没有多大问题的。 这个恢复过程,就是恢复过程有点复杂,就类似:数据库复制过程 (与data guard 不是一回事的)。一般出现这样的问题都会找专门的数据恢复公司或数据库维护工作了(因为这个恢复过程,本来就不简单,不是直接把以前的离线文件,直接拷过去,就行了的)。下面给一个简易的方法:你试试
方法如下:
1、在新服务器上,安装安装数据库软件,不建立数据库!(你要使用以前的数据文件等,所以不能建立库)。
2、在操作系统中,建立相应的操作系统目录。
(若你仍使用原库中参数文件(spfile),那么你可以按照参数文件的标注,建立相应的目录。你要重新建立新的文件存放目录的话,你还得修改参数文件呢,如果你对spfile文件修改不熟悉,就采用原来的spfile,根据参数文件建立相应的目录)你根据你的参数文件进行建立,下面只是为了说明进行举例。
一般建立(假设实例名为:standby1):
c:\ mkdir F:\oracle\product\10.2.0\oradata\standby1 (用于存放数据文件、控制文件等)
c:\ mkdir F:\oracle\product\10.2.0\admin\standby1\bdump (跟踪文件)
c:\ mkdir F:\oracle\product\10.2.0\admin\standby1\udump (用户文件)
c:\ mkdir F:\oracle\product\10.2.0\admin\standby1\cdump
c:\ mkdir F:\oracle\product\10.2.0\admin\standby1\adump
3、建立例程服务
c:\ oradim -new -sid standby1 -intpwd cs -startmode a
4、将你的参数文件(spfile) 复制到目录: x:\oracle\product\10.2.0\db_1\database 下
提示:在新服务器上存放数据文件、控制文件、跟踪文件等的位置与源库的位置相同的话,就可以直接复制到database目录下,不用修改参数文件的。不同的话,你得修改参数文件的。
5、将你原库的:数据文件、归档日志 复制到新服务器中.(具体位置,你参考Spfile文件中,所标注的,不用弄错了,不然会报错的)
6、 配置 standby1 的监听和网络服务
提示:监听配置好后,需要重启!对了:你可以将原来的:x:\oracle\product\10.2.0\db_1\NETWORK\ADMIN 中的:listener.ora 和 tnsnames.ora 直接拷贝到新服务中的:x:\oracle\product\10.2.0\db_1\NETWORK\ADMIN 目录下。替换的话:你需要修改 listener.ora 和 tnsnames.ora 这两个文件中的 IP 地址或主机名称,因为新服务器,有不同的名称和不同的IP。如果IP和主机名称和原来一样,就可以不用修改。
记得:重新启动监听啊 方法:
c:\lsnrctl stop
c:\lnsrctl start
7、启动例程,并建立控制文件 (控制文件必须重新建立,原来的控制文件记载的当前日志序列号、检查点信息、日志历史信息等,与新库的都不一样的,原来的用不了)
c:\sqlplussys/oracle@standby1 as sysdba;
sql startup nomount spfile='x:\oracle\product\10.2.0\db_1\database\spfileSTANDBY1'
sql CREATE CONTROLFILE REUSE DATABASE "standby1" NORESETLOGS FORCE LOGGING ARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 292
LOGFILE
GROUP 1 'F:\ORACLE\PRODUCT\10.2.0\ORADATA\standby1\REDO01.LOG' SIZE 50M,
GROUP 2 'F:\ORACLE\PRODUCT\10.2.0\ORADATA\standby1\REDO02.LOG' SIZE 50M,
GROUP 3 'F:\ORACLE\PRODUCT\10.2.0\ORADATA\standby1\REDO03.LOG' SIZE 50M
DATAFILE
'F:\ORACLE\PRODUCT\10.2.0\ORADATA\standby1\SYSTEM01.DBF',
'F:\ORACLE\PRODUCT\10.2.0\ORADATA\standby1\UNDOTBS01.DBF',
'F:\ORACLE\PRODUCT\10.2.0\ORADATA\standby1\SYSAUX01.DBF',
'F:\ORACLE\PRODUCT\10.2.0\ORADATA\standby1\USERS01.DBF'
CHARACTER SET ZHS16GBK;
提醒:上面的SQL语句中,相应参数文件的位置,你需要根据实际情况进行修改,实例名称你也需要根据实际情况进行修改。
8、恢复原库
假如你将原库的归档日志存放在新库:f:\archive 中
sql set logsource 'f:\archive'
sql recover database using backup controlfile until cancel
根据提示输入:canel
9、打开数据库:
sql alter database open resetlogs;
10、新增临时文件(不然排序操作时,会报错)
sql alter tablespace temp add tempfile 'f:\standby1\temp.dbf' size 5M reuse;
其他:如果你对原库进行了全库备份,不管是通过RMAN还是用户管理等,那么恢复的方法可以不采用此方法的。有全库的备份及归档日志, 恢复起来要简单些。
;
简单到不能再简单。
1先弄个DBLINK
2.通关select into from 直接创建并写入表到要迁移的数据库中
1、安装 Oracle Solaris 操作系统
新的 SPARC 服务器上预先安装了 Oracle Solaris。对于这些系统,应确保安装了相应的 Oracle Solaris 版本,并验证打了所需的补丁。
2、安装 Oracle VM Server for SPARC 软件
新的 SPARC 服务器上也预先安装了 Oracle VM Server for SPARC 软件。对于这些系统,应确保安装了相应的 Oracle VM Server for SPARC 版本,并验证打了所有需要的补丁。
3、配置存储阵列
Sun Storage 2540-M2 存储阵列连接到控制域,控制域将两个 LUN(LUN 0 和 LUN 1)作为虚拟磁盘导出到来宾域。
4、配置控制域
安装 Oracle VM Server for SPARC 软件之后,重新配置当前系统使其成为控制域。
5、配置来宾域
配置控制域之后,创建来宾域以用作 Oracle 数据库节点。在作为源计算机的物理服务器上,仅创建一个来宾域。另一台物理服务器最终将成为目标计算机。
6、准备目标服务器
按如下方式准备目标服务器。
执行以下各节中所述的步骤来准备目标计算机:
安装 Oracle VM Server for SPARC 软件
配置控制域
确保在目标服务器上提供了供待迁移域使用的所有虚拟 I/O 服务。
确保目标服务器有权访问同一存储中的 LUN 0 和 LUN 1。
确保待迁移域中的每个虚拟网络设备在目标计算机上都有一个对应的虚拟网络交换机。
迁移的话,直接导出一个库的dmp文件,之后导入到另外一个库里面就可以了(导出和导入数据库版本必须一直,否则导入可能会报错)。
迁移数据导出:
1 将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp中
exp system/manager@TEST file=d:\daochu.dmp full=y
2 将数据库中system用户与sys用户的表导出
exp system/manager@TEST file=d:\daochu.dmp owner=(system,sys)
3 将数据库中的表table1 、table2导出
exp system/manager@TEST file=d:\daochu.dmp tables=(table1,table2)
4 将数据库中的表table1中的字段filed1以"00"打头的数据导出
数据量小的话一般直接用数据泵或者exp/imp就ok了,也可以用rman备份,这些都是比较常规的,偏门点的可以用传输表空间,dblink直接复制等,反正看情况。