windows下的库文件在linux的使用,oracle-将.dmp文件导入linux服务器下的oracle数据库中-方式二&&利用Windows自带的命令行导入(推荐)实例-亲测有效...

注意:这种方式需要用到oracle客户端,在cmd窗口执行代码,如果没有配置环境变量,需要进入oracle客户端的安装目录中执行,下面会介绍详细方式

1、以管理员方式登录plSQL

注意:oracle数据库的管理员账户一般为sys,忘记登录密码,不知道如何登录,的请查看下面这个链接有详细服务器端修改密码方式: https://blog.csdn.net/weixin_47055922/article/details/109047419

2、在管理员模式下新建“SQL窗口”用于执行sql语句

3、利用代码创建表空间及分配用户

注意:第一句是创建用户名和密码都是test01_200的数据库,test01_200可以自定义,下面的语句是对该数据库创建表空间以及给用户,进行赋权处理

Create user test01_200 identified by test01_200

Default tablespace users

Temporary tablespace temp

password expire;

grant dba  to test01_200;

grant resource to test01_200;

grant alter any procedure to test01_200;

grant create any procedure to test01_200;

grant create procedure to test01_200;

grant create session to test01_200;

grant create table to test01_200;

grant create view to test01_200;

grant debug any procedure to test01_200;

grant debug connect session to test01_200;

grant execute any procedure to test01_200;

grant unlimited tablespace to test01_200;

4、找到oracle客户端中的imp.exe执行文件

实例:D:\app\Admin\product\11.2.0\client_1\BIN\

5、进入cmd窗口

执行:windows+R ,输入 cmd 点击回车,输入 d: 回车,然后  cd app\Admin\product\11.2.0\client_1\BIN

C:\Users\Admin>D:

D:\>cd app\Admin\product\11.2.0\client_1\BIN

6、输入命令导入dmp文件,

命令格式:imp 用户名/密码@oracle服务器ip/数据库 fromuser=原来的用户名 touser=现在的用户名 file=存储文件目录.dmp full=y ignore=y statistics=none

实例:

imp test01_200/test01_200@192.168.200.200/HELOWIN fromuser=bda_elect_js touser=test01_200  file=D:\ bda_test111.dmp full=y ignore=y statistics=none

7、提示导入报错

IMP-00002: 无法打开 D:\.DMP 进行读取

导入文件: EXPDAT.DMP>

解决办法:网上查找资料发现,这个错误一般是路径错误,路径中存在中文居多,我这里检查了好久,“file=D:\”后面有个空格, 删除后,继续运行命令导入

8、再次导入

输入实例:

imp test01_200/test01_200@192.168.200.200/HELOWIN fromuser=bda_elect_js touser=test01_200  file=D:\bda_test111.dmp full=y ignore=y statistics=none

9、导入报错:

经由常规路径由 EXPORT:V11.02.00 创建的导出文件

IMP-00013: 只有 DBA 才能导入由其他 DBA 导出的文件

IMP-00000: 未成功终止导入

解决办法:该错误表示导出数据的用户拥有DBA权限,而我要导入的用户没有这个权限。要解决这个问题解决的办法有两个,一个是把导出的用户DBA权限去掉,重新导出;另一个就是给要导入的用户加上DBA权限啊。这里用第二种方

10、给要导入的用户加上dba权限

实例:我这里是给test01_200这个用户加dba权限,以管理员身份登录,新建sql窗口执行语句,

执行代码:grant dba  to test01_200;

注意:这个问题是我后面发现的,我将这句命令添加到了步骤3的代码中,如果未出现步骤9这个错误,可以忽略这个问题。

11、导入报错

警告: 这些对象由 BDA_ELECT_JS 导出, 而不是当前用户

已经完成 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集中的导入

导入服务器使用 AL32UTF8 字符集 (可能的字符集转换)

IMP-00024: 只能指定一种模式 (TABLES, FROMUSER 或 FULL)

IMP-00000: 未成功终止导入

解决方式:查阅资料发现,选择了fromuser 就不能选择full,我在代码中已经定义了fromuser=bda_elect_js,所以需要删除full=y

12、删除full=y之后再次输入命令导入

最终的导入命令:

imp test01_200/test01_200@192.168.200.200/HELOWIN fromuser=bda_elect_js touser=test01_200  file=D:\bda_test111.dmp ignore=y statistics=none

13、导入成功

提示:成功终止导入, 没有出现警告。

登录test01_200用户查看表中存在数据。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值