我是采用语句+计划任务的形式来实现每天自动备份的 语句如下d:\oracle\ora92\bin\EXP.EXE system/password@databasename BUFFER=1024000 FULL=Y INCTYPE=COMPLETE FILE="d:\databackup\new1.dmp" COMPRESS=Y GRANTS=Y INDEXES=Y ROWS=Y CONSISTENT=N DIRECT=N LOG='BACK_NEW1.LOG'但是这样写的话就会导出整个数据库的内容 而一个数据库可以有好几个用户去访问而我只想导出其中一个用户a表空间下的数据或者有什么软件能时间自动备份出某用户表空间下的数据的请问这个语句该怎么改写 谢谢
SQL>execute sys.dbms_tts.transport_set_check('表空间名', TRUE);
SQL>select * from sys.transport_set_violations;
no rows selected 这里没有结果的话,就是OK了。设定表空间readonly
SQL>alter tablespace testts01 read only;现在就可以导出了
d:\oracle\ora92\bin\EXP.EXE system/password@databasename transport_tablespace=y tablespaces=(TESTTS01) file=d:\databackup\new1.dmp注意这里如果查出这个表空间有包含别的表空间的对象,需要一起导出。
上面的exp是一个普通的脚步命令,所以你可以把这个脚本命令加上操作系统的计划任务里,如1楼所说的知识点。
导出某用户下只需在现有exp语名后将"full=y"变成"user=用户名"即可