(ps:电脑的oracle不是自己装的引发的各种问题啊啊啊啊)
在网上找了好多资料。然后加上一点自己的理解,在下面贴出:(以下博文参考自https://www.cnblogs.com/JackieADBM/p/5987091.html)
不能直接创建用户,然后就直接导入。要创建表空间,不然会报表或视图不存在的错。。
1.首先打开cmd进入到数据库的安装目录bin目录下,我的是在D:\app\product\11.2.0\dbhome_2\BIN
然后输入sqlplus system / system as sysdba进入管理员
然后
2.创建表空间 tablespace_name.dbf (这个表空间名称要注意,应该问公司的人会知道,要跟要导入的数据库中的表空间名字一致,否则就算你创建了表空间还是会报 表或视图不存在的错。。)
create tablespace tablespace_name datafile 'D:\work\app\admin\orcl\dpdump\tablespace_name.dbf' size 500m
reuse autoextend on next 10m maxsize unlimited extent management local autoallocate permanent online;
-- 指定表空间初始大小为500M,并且指定表空间满后每次增加的大小为10M。
3.创建用户
create user +用户名+ identified by +密码+ default tablespace +表空间名;
--用户、密码指定表空间
4.给用户授权
grant connect,resource,dba to user_name;
-- 给用户user_name 授权。
connect和resource是两个系统内置的角色,和dba是并列的关系。
DBA:拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。
RESOURCE:拥有Resource权限的用户只可以创建实体,不可以创建数据库结构。
CONNECT:拥有Connect权限的用户只可以登录Oracle,不可以创建实体,不可以创建数据库结构。
5.导入:以上都成功以后 exit退出sql环境,然后在当前路径下(D:\app\product\11.2.0\dbhome_2\BIN)输入命令imp 用户名/密码@@数据库名 file=d:\要导入的数据库名.dmp log=dible_db full=y ignore=y
完成!可以正常使用。