表空间的创建、删除、备份、还原

创建:

[oracle@Server root]$ sqlplus / as sysdba
SQL> CREATE TABLESPACE test DATAFILE '/data/oracle/oradata/test.dbf' SIZE 500M AUTOEXTEND ON NEXT 50M MAXSIZE UNLIMITED; 
Tablespace created.
SQL> ALTER tablespace test ADD datafile '/data/oracle/oradata/test02.dbf' SIZE 1G AUTOEXTEND ON NEXT 200M MAXSIZE 8G; 
Tablespace altered.
SQL> CREATE user test identified by test default tablespace test temporary tablespace TEMP profile DEFAULT; 
User created.
SQL> Grant dba to test;
Grant succeeded.
SQL>

修改用户表空间:

SQL> alter user user2space default tablespace user2space2;

删除:

--删除表空间。
SQL> drop tablespace test;
SQL> drop tablespace test including contents;
SQL> drop tablespace test including contents and datafiles;
SQL> drop user user2space cascade;
加上and datafiles 参数时,oracle会自动删除datafiles。

备份、还原

创建dump_dir目录,给表空间对应的用户赋上读写权限,如果不创建数据文件将导出到默认的实例下面有个 dpdump 目录中,导入同样在放到这目录下面。

SQL> create directory dump_dir as '/data/oracle';

Directory created.

SQL> grant read,write on directory dump_dir to user1;

备份【导出】

[oracle@SERVER oracle]$ expdp user1/pwd@orcl schemas=user1 directory=dump_dir dumpfile=user1stschema.dmp compression=all logfile=user1.dmp.log 

还原【导入】

[oracle@SERVER oracle]$ impdp user2/pwd@orcl DIRECTORY=dump_dir DUMPFILE=user1stschema.dmp  REMAP_SCHEMA=user1:user2 REMAP_TABLESPACE=user1:user2  table_exists_action=replace logfile=user2.dmp.log

使用sql语句验证刚才创建的表及表空间:

SELECT username,default_tablespace FROM dba_users;

参数说明:

后续补充

Oracle查看用户、用户权限、用户表空间、用户默认表空间

原文地址:https://www.cnblogs.com/vipsoft/p/2537291.html