orcl 之 导入和导出
dmp文件导入
//1 oracle的数据模式是:用户建在表空间上,表建在用户上
//2 一个用户的表就象自己的私有财产一样,没有自己或管理员授权别的用户是不能查询或修改的;
//3 对于不同用户下的同名表,都是独立的数据对象,如user1.table1和user2.table1是相互独立的,用户分别操作自己的表是不影响其他用户的;
//4 对于同一用户下的同一个表,所有有权限的用户对其进行数据操作时,是会相互影响的,如对user1.table1来说,user1修改了它的一行,
//user2又对该表的该行进行了修改,那么该表的该行的实际内容是在user1修改后基础上user2修改的结果
//(注意,所有修改以最后成功提交修改请求的用户的内容为准), 多个用户对同一个用户下的同一个表的同时修改和锁定会造成锁等待
--创建表空间 create tablespace TS_YYGL logging datafile 'D:\联众信息\HRP项目信息\OracleDataBase\oracleData变动文件/daochu20170621.dmp' --首先保证这个地址不存在该文件 size 50m autoextend on next 50m maxsize 20480m extent management local; --创建用户并指定表空间 create user ehospitalii identified by yygl default tablespace TS_YYGL --temporary tablespace medicinecm_temp; --赋予用户权限 grant connect,resource,dba to ehospitalii;
--删除存在的表空间及数据
DROP TABLESPACE TS_WW INCLUDING CONTENTS AND DATAFILES;
drop user 用户名 cascade
--查找当前用户的表空间
select default_tablespace from user_user
以上处理 后,然后开始下面操作
//1,打开“开始”-->输入cmd—> sqlplus /nolog;
///2,输入 conn / as sysdba管理员账户登录;
//3,需要创建表空间,如果我们知道需要导入的数据库的表空间直接创建就可以,如果不不知道,也没有关系,我们可以用txt打开dmp文件,使用快捷键ctrl+F,查找tablespace,就可以找到这个dmp文件所对应数据库的表空间,然后创建我们找到的表空间就可以;
步,不创建的表空间,创建用户,并分配权限;
//5,打开“开始”-->输入cmd(注意:这里是cmd窗口,不是sqlplus窗口!!!),输入以下语句:“imp kang/123456@localhost/ORACLEfile="C:\daochu.dmp"full=y ignore=y”
上述语句说明如下:
//kang是创建的登录数据库用户名;
//123456是登录数据库的密码;
//localhost:代表当前数据库的地址是本机,如果是远程导入,替换成对应的ip地址就行
//ORACLE:是实例名称)
//file:后面的是你当前dmp文件存放的路径
//full=y,这个貌似是全部
//ignore=y,忽略一些错误
注意点:若是不修改参数,那么空表不会被导出
最近,要在其他地方重新复制一套数据库,数据库是Oracle11G的,先用exp full=y导出备份文件后,在另外的数据库上导入后,发现有一些表没有导入
这些表都有一些共同的特征,全部都是空表,百度发现原因,是因为一个参数的原因:
//show parameter deferred_segment_creation
当这个参数是true时,空表就不会分配segment空间,也不能被导出,将它改成false
alter system set deferred_segment_creation=false
就可以导出了。
不过,这只适用于修改参数之后创建的对象,对于之前创建的对象,只能通过其他方式来确保能导出:
//1.编辑对象中的数据,比如新增一条数据再删除。
//2.执行alter table tablename allocate extent手动为表分配空间。
不同用户之间的导入 a用户导入到b用户
找了很多资料,其中一个是只能在服务端操作的empdb的操作,具体没有用过。
另外一种就是通过我们熟悉的imp 导入
具体的案例:imp b用户名/密码@服务名 fromuser=a用户名 touser=b用户名 ignore=y file="导入的文件路径+文件名.dmp"
作为对比你会发现少了一个full=y,尝试过,提示不能同时存在fromuser 与full两种导入模式
不同的用户可以使用同一个表空间
--创建用户并指定表空间
create user ehospitaljx identified by yygl
default tablespace TS_YYGLjx
--temporary tablespace medicinecm_temp;
--赋予用户权限
grant connect,resource,dba to ehospitaljx;
grant connect,resource,dba to zhcx;
grant connect,resource,dba to zjhisro;
drop user ehospitaljx cascade
drop user zhcx cascade
//通过命令窗口写入导入数据语句执行时,提示打不开dmp文件,可以将语句放到bat文件中执行
//导出语法:
//exp 账户/密码@服务名 file=地址 owner=账户
删除用户表,表数据等内容
drop user username cascade
无法为表空间 spancename 中的段创建INITAL区处理办法
找到表空间存储的地方文件
select file_name from dba_data_files where tablespace_name = 'TS_YYGL'
//为此表空间再添加一个数据文件存储
ALTER TABLESPACE TS_YYGL ADD DATAFILE 'D:\联众信息\HRP项目信息\ORACLEDATABASE\ORACLEDATA变动文件\DAOCHU201706213.DMP' SIZE 10240M; 导入时若出现tmp00002的错误,文件无法打开
原因:文件路径太长导致的,这时候把文件放到根目录下再导入
文件导入导出还可以通过pl/sql来操作
1/若是Export无反应,或者一闪而过
解决方法:需要配置 ORACLE_HOME=D:\app\product\11.2.0\dbhome_1
后面的路径是exp.exe的文件路径
无法删除当前链接用户处理方法:
//查到到当前用户进程
select username,sid,serial# from v$session
//关闭进程
alter system kill session '10,257'
//删除用户和数据
drop user ehospitalze cascade
安装oracle时提示path的值大于1023,此时可以用管理员运行安装即可。
安装后运行pl/sql时,database一直没有选项,这是配置tools-preferences--oracle_home=OraDb11g_home,然后重启电脑
安装后登陆时一直提示ORA-12154: TNS: 无法解析指定的连接标识符
遇到这个问题真的很头痛,不明白真正的原因,在检查的时候发现客户端路径中tnsnames.ora文件不存在,就把服务端的来过来放进去了
同时查资料,说是patn指定不清楚,因为path中有客户端和服务端两个的路径,然后将客户端删除后重启,再次使用pl/sql就好了
--创建用户并指定表空间
create user ehospitaljx identified by yygl
default tablespace TS_YYGLjx
--temporary tablespace medicinecm_temp;
--赋予用户权限
grant connect,resource,dba to ehospitaljx; --表空间大小
Select Tablespace_Name,Sum(bytes)/1024/1024 From Dba_Segments Group By Tablespace_Name
--剩余表空间大小
SELECT tablespace_name 表空间,sum(blocks*8192/1000000) 剩余空间M FROM dba_free_space GROUP BY tablespace_name
oracle10g 导出到 oracle11g遇到的一些问题和总结
知道impdp命令只可导入expdp导出的dmp文件。expdp导出的时候,需要创建 DIRECTORY 导出什么表空间,导入也要什么表空间。 导出什么用户,导入也要什么用户。 如果没有要新建。 创建directory //导入的文件也应该放入该文件夹下
create or replace directory wsj_obj_name as 'E:\联众科技项目文档\LocalData/home/dir';
删除directory
drop directory dir;
说明:1/在创建的时候,wsj_obj_name这里的名字随便取得,
2/'E:\.....'这里得路径也是随便写,这里得路径指得是文件夹,即使对应得文件夹,也会创建成功,但是导入时是会报错的
给用户赋予权限
dgrant CREATE ANY DIRECTORY,create session,create table,create view,unlimited tablespace to ehospitalii
//分析:remap_schema 类似于: fromuser touser
impdp ehospitalii/yygl@ORCL directory=dir_dp dumpfile=ncsy_0429.dmp logfile=ncsy_0429(imp).log remap_schema=ehospitalii:ehospitalii
各种错误汇总
ora-01653,提示表空间溢出,若是登录不了,试着删除电脑多余的文件
orcl 之 导入和导出的更多相关文章
- orcl 之 导入和导出(2)
删除用户表,表数据等内容 drop user username cascade 无法为表空间 spancename 中的段创建INITAL区处理办法 找到表空间存储的地方文件 select file_ ...
- ORACLE导入、导出命令使用方法
oracle导入.导出命令使用方法: 给用户增加导入数据权限的操作 第一,启动sql*puls 第二,以system/manager登陆 第三,create user 用户名 IDENTIFIED B ...
- 一、导入、导出远程Oracle数据库
一.导入.导出远程Oracle数据库 其语法实示例如下: imp/exp [username[/password[@service]]] 其中service是服务实例名,关于如何创建服务实 ...
- Oracle 导入、导出DMP(备份)文件
首先说明dmp文件: Oracle备份文件是以dmp结尾,这种文件是oracle的逻辑备份文件,常用于数据库逻辑备份,数据库迁移等操作. 一.Oracle导入备份文件步骤:我用的是Oracle 11g ...
- expdp和impdp导入和导出数据
一 关于expdp和impdp 使用EXPDP和IMPDP时应该注意的事项:EXP和IMP是客户端工具程序,它们既可以在客户端使用,也可以在服务端使用.EXPDP和IMPDP是服务端的工具程 ...
- 案例导入和导出Scott用户
ylbtech-Oracle:案例导入和导出Scott用户 导入和导出Scott用户 1. 导出Scott用户下的所有对象返回顶部 1.1, Microsoft Windows [版本 ] 版权所有 ...
- [独孤九剑]Oracle知识点梳理(三)导入、导出
本系列链接导航: [独孤九剑]Oracle知识点梳理(一)表空间.用户 [独孤九剑]Oracle知识点梳理(二)数据库的连接 [独孤九剑]Oracle知识点梳理(三)导入.导出 [独孤九剑]Oracl ...
- oracle 数据导入、导出
导入导出 --数据导出备份和导入 ------注意 导出和导入 必须是CMD 命令行下操作,而不是SQL编辑器中 --1.导出表 . --exp:导出关键字 ,userid:用户权限 ,file:保存 ...
- Oracle数据库的导入和导出
Oracle数据库的导入和导出,是一项重要的的技术活,不但解决了数据库的导入导出,更方便快捷的获得数据. 使用imp和exp导入导出数据 使用exp导出数据 存放目录为\ORACLE_HOME\BIN ...
随机推荐
- java三大工厂结果总览
2018-11-02 21:27:18 开始写 谢谢.Thank you.Salamat Do(撒拉玛特朵).あリがCám o*n(嘉蒙)とゥ(阿里嘎都).감사합니다 (勘三哈咪瘩).terima K ...
- 转:Http下载文件类 支技断点续传功能
using System; using System.Collections.Generic; using System.Text; using System.IO; using System.Net ...
- bzoj1606
题目链接 反着循环就是每个东西只能选一次 #include<iostream> #include<cstdio> #include<cstdlib> #includ ...
- Step6:SQL Server 数据变更时间戳(timestamp)在复制中的运用
一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 方案(Solution) 方案一(Solution One) 方案二(Solution Two ...
- SQL SERVER镜像配置(包含见证服务器)
镜像简介 重要说明:保持数据库镜像运行.如果您关闭数据库镜像,则必须执行完全备份并还原数据库以重建数据库镜像. 一. 简介 SQL SERVER 2005镜像基于日志同步,可良好实现故障转移. ...
- Object.defineProperty的理解
一.Object.defineProperty:给一个对象定义一个新的属性或修改一个对象现有的属性,并且返回这个对象 1.语法:Object.defineProperty(参数1,参数2,参数3) 参 ...
- 怎样从外网访问内网Jetty?
本地安装了一个Jetty,只能在局域网内访问,怎样从外网也能访问到本地的Jetty呢?本文将介绍具体的实现步骤. 准备工作 安装并启动Jetty 默认安装的Jetty端口是8080. 实现步骤 下载并 ...
- pyqt5 界面切换
QStackedWidget 只需要关联好对应的信号和槽,调用setCurrentIndex函数,想切哪个界面就切到哪个界面
- Kafka学习笔记之Kafka三款监控工具
0x00 概述 在之前的博客中,介绍了Kafka Web Console这 个监控工具,在生产环境中使用,运行一段时间后,发现该工具会和Kafka生产者.消费者.ZooKeeper建立大量连接,从而导 ...
- Prometheus监控学习笔记之在 HTTP API 中使用 PromQL
0x00 概述 Prometheus 当前稳定的 HTTP API 可以通过 /api/v1 访问. 0x01 API 响应格式 Prometheus API 使用了 JSON 格式的响应内容. 当 ...