1、前期工作

具体参考该博文

  • Windows操作系统安装Oracle数据库

  • 下载安装Oracle数据库图形管理工具

2、连接和调整数据库环境

2.1、以数据库管理员身份登录数据库

++++++++++++++++++++++分割线++++++++++++++++++++++

2.2、查询当前会话是否为CDB

注意:Oracle 12C以及更高版本中引入了CDB(Container Database)与PDB(Pluggable Database)的新特性;

CDB相当于操作系统,调用并管理各个PDB,PDB相当于真正提供业务需求的数据库实例。

show con_name;

因为Oracle从12c开始引入了容器的概念,所以直接以sysdba用户创建新用户时,会默认在CDB中创建公有用户;

公有用户名需要以“C##”或“c##”开头,违反该规则时,会遇到下面的报错信息:

ORA-65096: 公用用户名或角色名无效
65096. 00000 - "invalid common user or role name"
*Cause: An attempt was made to create a common user or role with a name
that was not valid for common users or roles. In addition to the
usual rules for user and role names, common user and role names
must consist only of ASCII characters, and must contain the prefix
specified in common_user_prefix parameter.
*Action: Specify a valid common user or role name

2.3、使用PDB

如果用户名开头不想使用“C##”或“c##”,则需要做如下操作:

2.3.1、查询PDB列表

show pdbs;

2.3.2、开启PDB

alter pluggable database pdb名称 open;

2.3.3、修改会话的容器

alter session set container=pdb名称;

3、创建新数据库用户

3.1、在其他用户目录中选择创建用户

3.2、为新用户设置名称和密码

注意:用户名为大写字母;如果为小写字母,则在登录和修改密码等操作时,会提示该用户不存在(ORA-01017)

3.3、为新用户授予角色

全部设置为管理员

++++++++++++++++++++++分割线++++++++++++++++++++++

全部采用默认值

3.4、为新用户授予系统权限

可以全部设置为管理员,但SYSRAC除外,否则会报错。

3.5、新用户登录

注意:服务名要填该用户的容器

4、导入dmp文件

4.1、imp导入命令

格式说明: imp 用户名/密码@IP:端口/服务名 file=dmp文件路径 full=y

imp HTEST/HTEST@1ocalhost/XEPDB1 file=C:\kkk\数据库备份文件名.dmp fu11=y

4.2、IMP-00037错误

执行imp命令导入dmp文件时,可能会出现IMP-00037错误,错误原因主要有以下两种:

  • 数据库字符集不一致

  • dmp文件在传输过程中损坏

4.2.1、查询数据库字符集

select * from nls_database_parameters where parameter='NLS_CHARACTERSET';

4.2.2、校验dmp文件md5

certutil -hashfile dmp文件路径 MD5

4.3、ORA-12899错误

这个错误是因为Oracle字符集不同,汉字占的长度不同造成的。

中文在ZHS16GBK中占2个字节,在UTF-8中却占3个字节,所以汉字导入UTF-8字符集的数据库就很容易出现字段长度不够。

解决办法有两种:

  • 增加字段长度(推荐)

  • 修改字符集

Oracle-21C导入dmp文件的更多相关文章

  1. oracle数据库导入dmp文件

    最近在自己的机子上安装了oracle11g,今天把项目的测试数据库给导入进来了,方便在本地跑起来调试.下面记录一下过程: 1,导出测试数据库的文件; 这个是在公司三楼的一台机子上,用plsql中的工具 ...

  2. Oracle导出导入dmp文件(exp.imp命令行)

    1.说明 使用Oracle命令行导出导入dmp文件, 从而在两个数据库之间快速转移数据, 也可以用来作为数据库的备份, 将来可以快速恢复数据. 命令:导出exp.导入imp 步骤: 使用Oracle的 ...

  3. oracle img 导入dmp文件

    1.新建表空间 因为我们导出的数据表的表空间不一定是USERS, 假如说是:FQDB 新建表空间SQL语句 create tablespace FQDB datafile 'c:\FQDB.dbf' ...

  4. 如何在Oracle中导入dmp文件

    Oracle数据导入导出imp/exp就相当于oracle数据还原与备份.exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中. 利 ...

  5. Oracle:imp导入dmp文件

    oracle命令行登录 sqlplus / as sysdba 创建用户 create user 用户 identified by 密码 ; 创建表空间 create tablespace 表空间名 ...

  6. Oracle数据库导入dmp文件报错处理方法

    在向oracle数据库执行导入命令的时候报错,错误如下,大概意思是TNS中找不到服务名 下面说一下解决步骤 1:进入oracle用户,使用cat查看.bash_profile文件,找到ORACLE_H ...

  7. oracle导入.dmp文件

    在日常开发中,经常需要往一个数据库里导入.dmp文件,下面简单介绍下如何通过命令导入 1.创建一个awsbpm用户create user 用户名 identified by 密码; 如:create ...

  8. Oracle----SQL语句积累 (Oracle 导入 dmp文件)

    Oracle----SQL语句积累 (Oracle 导入 dmp文件) Oracle SQL PL  导入dum文件 1.数据库DBA权限: 注意:这个是在cmd命令行中直接输入,不需要进入Oracl ...

  9. 导入dmp文件时,需要删除原有ORACLE数据库实例

    导入dmp文件时,对于已存在的数据库实例及表处理方式:删除实例. 1.以管理员身份登录 sqlplus / as sysdba 2.停止实例 shutdown abort; 执行结果:ORACLE i ...

  10. Oracle新建数据库,并导入dmp文件

    1:安装Oracle及新建数据库 Oracle 11g安装图解 http://www.cnblogs.com/qianyaoyuan/archive/2013/05/05/3060471.html h ...

随机推荐

  1. 常用设计模式之.Net示例代码合集

    每一次初学者粉丝朋友,在后台向我咨询编程问题,我除了给他们指导学习路线,我都会建议他们学完基础知识后,一定要要注重编程规范,学习设计模式,修炼内功. 虽然说很多程序员,他们日常主要工作是CRUD,但是 ...

  2. 7-8 估值一亿的AI核心代码

    题目描述: 以上图片来自新浪微博. 本题要求你实现一个稍微更值钱一点的 AI 英文问答程序,规则是: 无论用户说什么,首先把对方说的话在一行中原样打印出来: 消除原文中多余空格:把相邻单词间的多个空格 ...

  3. linux 账户和权限

    目录 一.用户账户管理 二.组账号管理 三.用户账户文件和组账户文件 四.查询账户命令 五.设置目录与文件权限 六.设置命令与文件归属 七.默认文件属性umask 八.修改主机名 一.用户账户管理 u ...

  4. flutter apk启动闪退问题

    今发布一个flutter apk 安装后启动时老是闪退,经过一遍又一遍查找,发现是指定了so的问题 看多次点击启动 一.比对打包后的apk 在出现该问题后也搜索了不少资料,参考过 https://bl ...

  5. 驱动开发:内核扫描SSDT挂钩状态

    在笔者上一篇文章<驱动开发:内核实现SSDT挂钩与摘钩>中介绍了如何对SSDT函数进行Hook挂钩与摘钩的,本章将继续实现一个新功能,如何检测SSDT函数是否挂钩,要实现检测挂钩状态有两种 ...

  6. Hyperledger Fabric系统链码介绍

    在Hyperledger Fabric中,LSCC(Lifecycle System Chaincode).CSCC(Chaincode System Chaincode).QSCC(Query Sy ...

  7. 体验了一把 MiniGPT-4,一言难尽

    最近看到一个好玩的开源项目:MiniGPT-4. 看名字像 GPT-4 的小老弟,其实没啥关系. 简单说,它可以识别图像,基于图像你可以和它对话,它能生成图片描述.网站.诗歌. 先看看官方给出的例子截 ...

  8. java利用jni调用dll方法

    准备工作: 需要用到的插件jni4net:这个需要去官网下载:https://sourceforge.net/projects/jni4net/files/ (1)     jni4net 是一个开源 ...

  9. Rust的语句与表达式

    Rust 语句与表达式 Rust 中的语法分为两大类: 语句 (statement) 和表达式 (Expression). 语句:指的是要执行的一些操作和产生副作用的表达式. 表达式:主要用于计算求值 ...

  10. 5步带你玩转SpringBoot自定义自动配置那些知识点

    目前SpringBoot框架真的深受广大开发者喜爱,毕竟它最大的特点就是:快速构建基于Spring的应用程序的框架,而且它提供了各种默认的功能和配置,可以让开发者快速搭建应用程序的基础结构. 但是,当 ...