现在大型企业一般都用Oracle数据库,Oracle数据库在一般采用expdp,impdp 导出导入数据,但是在操作中经常会遇到一些问题。下面来浅析这些问题。

1. 导出数据

一般导出数据的时候需要建立一个目录地址

select * from dba_directories; --查询所有目录地址
create or replace directory winqt_dump as '/home/front/dmpfile'; --创建目录地址
grant read,write on directory winqt_dump to qtdb; --给目录地址赋读写权限

drop directory dumpwinqt; --删除目录地址

select username,default_tablespace from dba_users; -- 查询用户下面的表空间
select * from user_indexes; --查询用户下所有索引

select table_name from user_tables where NUM_ROWS > 0; --查询有数据的表

注意在 数据库赋值权限的时候需要用oracle用户登录。

expdp qtdb/qtdb dumpfile=20150907test.dmp directory=dumpwinqt schemas=qtdb logfile=export.log; --导出数据库

expdp winqtdb/winqtdb directory=dumpwinqt compression=ALL dumpfile=20160321qtdb.dmp logfile=export.log reuse_dumpfiles=y;

impdp hsqtdb/hsqtdb  dumpfile=20160321qtdb.dmp DIRECTORY=dumpwinqt remap_schema=winqtdb:hsqtdb TABLE_EXISTS_ACTION=REPLACE;

select 'alter system kill session '''||sid||','||serial#||''';' from v$session where username = 'db'; -- 查询所有的数据库连接
如果有连接 先查询,后再oracle 中查询 复制,在环境sqlplus中删除。
删除数据库必须用oracle权限, 先根据root —》 oracle .
sqlplus / as sysdba
drop user db cascade;
create user db identified by c3front default tablespace USERS temporary tablespace TEMP ;
grant connect , resource , dba to db ;

touch export.log ; --导出日志路径

chomd 777 export.log; --给日志赋权限

注意给目录dmpfile赋权限;

chmod 777 dmpfile;

如下图所有

问题1:

上图这个问题是用于环境下的空间不足引起的。

2. 导入数据

impdp hsqtdb/hsqtdb dumpfile=20150217qtdb.dmp directory=dumpwinqt remap_schema=hnqtdb:hsqtdb nologfile=true; --导入数据

导出用expdp 对应的导入就用impdp 否则会报如下错误:

如果用空表存在 最好用expdp 导出 因为oracle11g中有个新特性,当表无数据时,不分配segment,以节省空间,所以exp导不出空表。解决的办法是用expdp

3. 创建数据库实例

sqlplus / as sysdba
drop user qtdb cascade;
create user qtdb identified by qtdb default tablespace USERS temporary tablespace TEMP ;
grant connect , resource , dba to qtdb;

 总结

在操作数据库的时候,经常会遇到一些疑难问题,后续如果遇到新问题,再讨论。

Oracle 数据库简单操作的更多相关文章

  1. oracle数据库简单操作

    导入某用户所有表和数据:imp sgp/sgp@192.168.0.99:1521/orcl file=sgp20161025.dmp full=y 导出指定表及数据:exp sgp/sgp@192. ...

  2. linux/windows系统oracle数据库简单冷备同步

    linux/windows系统oracle数据库简单冷备同步 我们有一个财务系统比较看重财务数据的安全性,同时我们拥有两套系统,一个生产环境(linux),一个应急备份环境(windows).备份环境 ...

  3. ORACLE数据库误操作执行了DELETE,该如何恢复数据?

    ORACLE数据库误操作执行了DELETE,该如何恢复数据? 原创 2016年08月11日 17:23:04 10517 作为一个程序员,数据库操作是必须的,但是如果操作失误,一般都会造成比较严重的后 ...

  4. ORACLE 数据库简单测试

    ORACLE 数据库简单测试 操作系统:Windows 7 – ORACLE:oracle database 10.2.0.4 一.目的 测试 启动监听程序.数据库  非同一个用户的情况,用户是否可以 ...

  5. eclipse利用sql语句对Oracle数据库进行操作

    对Oracle数据库执行操作的sql语句中表名和列名都需用英文双引号("")括起来. 注(\为转义符) 1.插入数据 sql = "insert into \" ...

  6. ADO.Net对Oracle数据库的操作【转载】

    一 ADO.Net简介 访问数据库的技术有许多,常见的有一下几种:开放数据库互联(ODBC).数据访问对象(DAO).远程数据对象 (RDO). ActiveX数据对象(ADO).我们今天主要要学习A ...

  7. 【转】ADO.Net对Oracle数据库的操作

    一 ADO.Net简介 [转自网络,收藏学习] 访问数据库的技术有许多,常见的有一下几种:开放数据库互联(ODBC). 数据访问对象(DAO).远程数据对象(RDO). ActiveX数据对象(ADO ...

  8. Oracle数据库基础操作语法

    转载自:https://www.cnblogs.com/fallen-seraph/p/10685997.html 一.登录Oracle数据库 首先运行Oracle数据库: 默认的有两个账号: 管理员 ...

  9. oracle数据库误操作把表删除了,怎样恢复

    一:表的恢复 对误删的表,只要没有使用PURGE永久删除选项,那么从flash back区恢复回来希望是挺大的.一般步骤有:1.从flash back里查询被删除的表 select * from re ...

随机推荐

  1. ip相关

    查看ip ifconfig -a 查看端口占用 ps -aux | grep tomcat

  2. Navicat for MySQL安装之后不知道登录密码

    1,关闭你现在正在运行的mysql数据库,关闭mysql服务器. 2,关闭数据库后,运行点击开始运行,输入cmd进入命令行窗口,在这个命令行中操作进入到你数据库所在的安装路径,一般默认安装的话都会在e ...

  3. tomcat作为服务器的配置

    tomcat在启动时,会读取环境变量的信息,需要一个CATALINA_HOME 与JAVA_HOME的信息,CATALINA_HOME即tomcat的主目录,JAVA_HOME即java安装的主目录, ...

  4. 不用git将项目push到码云上

    1.在码云上创建一个项目: 2.打开STS(spring Tool Suite)   新建一个Maven(webapp)项目: 3.打开你的码云账号,把码云上的工程的URL复制: 4.重新在另一个目录 ...

  5. Mybatis-Spring集成

    MyBatis-Spring用来将MyBatis无缝整合到Spring中.使用这个类库中的类, Spring将会加载必要的MyBatis工厂类和Session类. 这个类库也提供一个简单的方式来注入 ...

  6. java正则表达式【大全】

    [正则表达式]文本框输入内容控制整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$只能输入数字:"^[0-9]*$".只能输入n位的数字:"^\d{n}$& ...

  7. 类型转换bin()、chr()、ord() 、int()、float()、str()、repr()、bytes()、tuple(s )、 list(s )   、unichr(x ) 、 ord(x )  、 hex(x )  、          type()数据类型查询

    1.bin() 将整数x转换为二进制字符串,如果x不为Python中int类型,x必须包含方法__index__()并且返回值为integer: 参数x:整数或者包含__index__()方法切返回值 ...

  8. VirtualBox 共享文件夾

    説明:host為window10,guest為centos7 一.安装VBoxLinuxAdditions 1. 在guest上挂载virtualbox安装目录下的VBoxGuestAdditions ...

  9. pull 解析XML 文件

    pull解析的特点 事件驱动机制来解析 当解析到一个节点,会自动停止,不会往下继续解析,好处 :很好能够控制流程 android默认采用pull解析 pull解析的事件类型 start_documen ...

  10. kali Linux添加add-apt-repository

    Debian让用户可以通过一个名为add-apt-repository的应用程序,添加和使用PPA软件库,不过Kali Linux在其默认的程序包列表中并不含有该应用程序.就Kali而言,由于这是个特 ...