oracle 数据库备份与恢复

备注:
数据库名:test 密码:test 表空间:test_data 创建用户test授权为dba
1、怎样完全备份数据库
2、怎样把备份的数据库还原到本机,并且以前的数据删除,以现在数据库的数据为准

[color=red]已经使用过的语句,但是一下语句必须数据库没有表的情况才能导入,如果有表及数据,导入后数据不会覆盖以前的,相当于导入前的数据+刚导入的数据=导入后的数据。
1、用户方式,将指定用户的所有对象及数据导出/导入。
导出:
$ exp test/test file=d:\test.dmp log=d:\test.log owner=(test,test)
导入:
$ imp test/test filed:\test.dmp log=d:\test.log fromuser=test touser=test
commit=y ignore=y
2、全库方式,将数据库中的所有对象导出/导入
导出:
$ exp test/test file=d:\test.dmp log=d:\test.log full=y commit=y ignore=y
导入:
$ imp test/test file=d:\test.dmp log=d:\test.log fromuser=test touser=test [/color]

建议最好将数据库实例及对应用户都drop掉之后,再进行导入,虽然这个方法有点笨,但是,经过5年实践,这个方法安全、可靠。

想把以前的数据删除,先删一下不就行了,不一定要导入时删除吧

上面说错了,应该是把表空间和用户drop掉之后,再导入dmp格式数据。
我对SQL语句不熟悉,通常是通过PL/SQL或者Oracle管理控制台进行可视化操作:直接通过右键,选择“Drop”即可。