国内最全IT社区平台 联系我们 | 收藏本站
华晨云阿里云优惠2
您当前位置:首页 > 数据库 > Oracle > Oracle创建/删除、导入/导出等命令总结

Oracle创建/删除、导入/导出等命令总结

来源:程序员人生   发布时间:2013-11-15 00:42:24 阅读次数:5226次

建站学院文档 本文就Oracle创建、删除用户和角色一一写出实例,包括数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可以把数据从远程数据库服务器导出到本地的dmp文件, imp命令可以把dmp文件从本地导入到远处的数据库服务器中。 利用这个功能可以构建两个相同的数据库,一个用来测试,一个用来正式使用。

//创建临时表空间

create temporary tablespace zfmi_temp
tempfile 'D:oracleoradatazfmizfmi_temp.dbf'
size 32m
autoextend on
next 32m maxsize 2048m
extent management local;

//tempfile参数必须有

//创建数据表空间

create tablespace zfmi
logging
datafile 'D:oracleoradatazfmizfmi.dbf'
size 100m
autoextend on
next 32m maxsize 2048m
extent management local;

//datafile参数必须有

//删除用户以及用户所有的对象

drop user zfmi cascade;

//cascade参数是级联删除该用户所有对象,经常遇到如用户有对象而未加此参数则用户删不了的问题,所以习惯性的加此参数

//删除表空间
前提:删除表空间之前要确认该表空间没有被其他用户使用之后再做删除

drop tablespace zfmi including contents and datafiles cascade onstraints;

//including contents 删除表空间中的内容,如果删除表空间之前表空间中有内容,而未加此参数,表空间删不掉,所以习惯性的加此参数
//including datafiles 删除表空间中的数据文件
//cascade constraints 同时删除tablespace中表的外键参照

如果删除表空间之前删除了表空间文件,解决办法:

如果在清除表空间之前,先删除了表空间对应的数据文件,会造成数据库无法正常启动和关闭。
可使用如下方法恢复(此方法已经在oracle9i中验证通过):
下面的过程中,filename是已经被删除的数据文件,如果有多个,则需要多次执行;tablespace_name是相应的表空间的名称。
$ sqlplus /nolog
SQL> conn / as sysdba;
如果数据库已经启动,则需要先执行下面这行:
SQL> shutdown abort
SQL> startup mount
SQL> alter database datafile 'filename' offline drop;
SQL> alter database open;
SQL> drop tablespace tablespace_name including contents;

//创建用户并指定表空间

create user zfmi identified by zfmi
default tablespace zfmi temporary tablespace zfmi_temp;

//identified by 参数必须有

//授予message用户DBA角色的所有权限

GRANT DBA TO zfmi;

//给用户授予权限

grant connect,resource to zfmi; (db2:指定所有权限)

生活不易,码农辛苦
如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠
程序员人生
------分隔线----------------------------
分享到:
------分隔线----------------------------
关闭
程序员人生