想把一台旧数据库服务器中的数据库全部内容导入到新数据库服务器中的数据库中,
请问如何实现?
请问如何实现?
解决方案 »
- 有个更新操作问题
- oracle先决条件检查的问题,在线等帮忙撒···
- oracle9+sunSolaris10 报错:WARNING: aiowait timed out!!!!!在线等待!!!!!
- 这个SqlServer语句如何转换为SQL语句
- 一个另我想了两个星期的oracle难题
- 我开发的pdmreader数据字典阅读器,大家看看好用不
- Oracle数据库里面怎么增加关联多个表的外键
- ORACLE 9i 的標準版或個人版能安裝在WINDOWS XP SP2上嗎?
- oracle 10g 自动远程备份问题
- 高难度动作,请高手指点有什么办法可以实现?
- SQL语句包括哪些?create database 是SQL语句吗?
- ORACLE透明网关问题请教
10G可以用EXPDP,IMPDP
还可以用RMAN
exp "sys/pass@xxx as sysdba" full=y file=d:\full.dmpcopy the d:\full.dmp from the old server to the new server
then,import into the new server:
imp "sys/pass@xxx as sysdba" full=y file=d:\full.dmp
补充一下自己的exp和imp时的小经验
exp时如果有使用blob,long等大对象数据类型的话,最好在exp 加上compress=n
imp时,如果数据量比较大的话,最好设置比较合适的buffer 而且 commit=y, imp时关闭归档,
Oracle在恢复数据的过程中,当恢复某个表时,该表已经存在,就要根据ignore参数的设置来决定如何操作。若ignore=y,Oracle不执行CREATE TABLE语句,直接将数据插入到表中,如果插入的记录违背了约束条件,比如主键约束,则出错的记录不会插入,但合法的记录会添加到表中。
若ignore=n,Oracle不执行CREATE TABLE语句,同时也不会将数据插入到表中,而是忽略该表的错误,继续恢复下一个表。 2. indexes参数
在恢复数据的过程中,若indexes=n,则表上的索引不会被恢复,但是主键对应的唯一索引将无条件恢复,这是为了保证数据的完整性。 如果内存足够,buffer尽量设大点,这样导入导出都快点。 如果有大的表,最好加上commit=y
以sys用户应该可以导出全部的东西(表空间也许需要先手工建好)
那exp的时候是不是要导出整个数据库?
那旧数据库中的system等用户和新数据库中的这些自带用户的数据会不会冲突
如果数据已经存在的话,很多表都是有primary key constraint的,再import也会报错的。