Oracle数据库导入、导出(远程、10g、11g)
1 查看oracle的版本信息
(1)用客户端连接到数据库,执行select * from v$instance
查看version项
(2)select * from product_component_version
(3)或查询V$VERSION查看组件级信息
1.1. oracle参数设置 11g数据泵导出、导入
进入CMD操作界面,使用sqlplus连接数据库,
图例 1 数据库连接操作
连接语法:sqlplus system/Oracle2013@orcl
参数说明
参数 |
说明 |
备注 |
sqlplus |
语法命令 |
|
system |
数据库管理员用户名 |
|
Oracle2013 |
system用户密码 |
|
orcl |
数据库连接标示符 |
数据库安装目录的tnsnames.ora文件中可以找到 Oracle11G目录:C:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN |
一、在客户端创建和服务端对应的服务名
方法1:
修改tnsnames.ora文件
加入远程服务器的命名:
Sql代码
TEST_ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.110)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)
方法2:
在oracle客户端,打开net manager。
创建一个服务命名TEST_ORCL,主机IP为:192.168.1.110,服务名orcl,端口1521
图例 2 成功连接数据库
环境变量设置(在Sqlplus中执行)
首先使用DBA权限的用户创建directory,我使用system ,可以在服务器本地创建,也可以远程连接sqlplus进行创建,使用的将是服务器上面的路径。要确保创建directory时,操作系统层面的路径已经存在。如果不存在,可以删除directory后,再重新建立directory。
create or replace directory file_path as ‘c:\tmpdir’;
参数说明
参数 |
说明 |
备注 |
file_path |
路径名称 |
|
c:\tmpdir |
文件路径 |
也可以是另外的随意目录,用单引号括起来。 |
图例 3 环境变量设置
SQL> grantread,write on directory file_path to scott;
授权成功。
查询创建了那些子目录:
SELECT * FROM dba_directories;
1.2. 数据备份
备份脚本:expdp system/Oracle2013@orcl directory=file_path dumpfile=ARADMIN.dat logfile=ARADMIN.log schemas=ARADMIN
参数说明
参数 |
说明 |
备注 |
expdp |
语法命令 |
|
system |
数据库管理员用户名 |
|
Oracle2013 |
system用户密码 |
|
orcl |
数据库连接标示符 |
数据库安装目录的tnsnames.ora文件中可以找到 Oracle11G目录:C:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN |
directory |
文件目录名称 |
导出数据库文件的存放目录 |
dumpfile |
数据库文件名称 |
导出数据库文件的文件名 |
logfile |
数据库日志文件名称 |
导出数据库的日志文件名称 |
schemas |
数据库用户 |
操作:
图例 4 数据库备份操作
成功导出。
图例 5 成功导出
1.3. 数据恢复
1.3.1. 删除ARADMIN用户
1. 连接数据库
sqlplus system/Oracle2013@orcl
图例 6 连接数据库
2. 删除目标数据库中的ARADMIN用户
drop user ARADMIN cascade;
图例 7 成功删除目标数据库中的ARADMIN用户
1.3.2. 重新创建ARADMIN用户
1. 连接数据库
sqlplus system/Oracle2013@orcl
图例 8 连接数据库
2. 创建ARADMIN用户
create user ARAdmin identified by AR#Admin# default tablespace ARSYSTEM temporary tablespace ARTMPSPC quota unlimited on arsystem;
图例 9创建ARADMIN用户
3. 赋予数据库权限
grant alter session,create cluster,create database link,create sequence,create session,create synonym,create table,create view,create procedure,create trigger,query rewrite to ARAdmin;
图例 10 赋予数据库权限
1.3.3. 数据库导入
导入命令:impdp system/Oracle2013@orcl directory=file_path dumpfile= ARADMIN20130606.DAT logfile= ARADMIN20130614.log schemas=ARADMIN
图例 11 数据库导入
导入完成
2.exp导出与imp本地导入 10g
exp命令:
1 exp username/psw@TEST file=d:test.dmp full=y
2 exp username/psw@TEST file=d:test.dmp owner=(ly)
3 exp username/psw@TEST file= d:test.dmp tables=(grid1,grid2)
1其中一是将Test(与某一数据库对应的oracle服务名)数据库进行整体导出
2将属于用户ly的所有表导出
3将表grid1,与grid2导出
d:test.dmp是导出的文件地址
imp命令:
1 imp system/psw@TEST file=d:test.dmp
2 imp system/psw@TEST full=y file=d:test.dmp ignore=y
3 imp system/psw@TEST file=d:test.dmp tables=(grid1)ignore=y表示如果被导入的数据库中某个表已经存在就忽略不导入那个表
3表示只导入grid1这个表
在导入导出前要先测试下对应的数据库是否是通的:tnsping test来测试,同样test是服务名
所有命令可在cmd下执行
用exp/imp远程操作数据库
对ORACLE数据库进行远程操作,假设数据库在192.168.1.110上,具体方法如下:
一、在客户端创建和服务端对应的服务名
方法1:
修改tnsnames.ora文件
加入远程服务器的命名:
Sql代码
TEST_ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.110)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)
方法2:
在oracle客户端,打开net manager。
创建一个服务命名TEST_ORCL,主机IP为:192.168.1.110,服务名orcl,端口1521
二、测试远程服务器是否畅通
进入到cmd后,执行命令:tnsping TEST_ORCL。
三、远程操作数据库
导出:
Sql代码
1:exp username/password@TEST_ORCL file=bak_filepath
2:exp username/password@TEST_ORCL full=y file=bak_filepath
username 用户名,password 密码,TEST_ORCL 客服端服务名,bak_filepath 备份文件存放的路径
=============================================================
1 将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp中
exp system/manager@TEST file=d:\daochu.dmp full=y
2 将数据库中system用户与sys用户的表导出
exp system/manager@TEST file=d:\daochu.dmp owner=(system,sys)
3 将数据库中的表table1 、table2导出
exp system/manager@TEST file=d:\daochu.dmp tables=(table1,table2)
4 将数据库中的表table1中的字段filed1以"00"打头的数据导出
exp system/manager@TEST file=d:\daochu.dmp tables=(table1) query=\" where filed1 like '00%'\"
导入:
Sql代码
1:imp username/password@TEST_ORCL file=bak_filepath full=y
2:imp username/password@TEST_ORCL/database_name file=bak_filepath full=y
3:imp username/password@TEST_ORCL file=bak_filepath fromuser=fromadmin touser=toadmin
username 用户名,password 密码,TEST_ORCL 客服端服务名,bak_filepath 备份文件存放的路径
fromadmin 备份数据的用户名,toadmin 还原数据库的用户名。database_name 还原到那个数据库上
full=y 将数据库整体导出,包括表结构等。
最新文章
- 一个很全的VTK实例网址
- bzoj4358: permu
- java杂记——数组拷贝
- oracle行转列(连接字符串函数)
- 怎样破解邮箱password
- highcharts 根据表格转化为不同的图表
- 《RESTful Web Services》第二章 识别资源
- bzoj 2251: [2010Beijing Wc]外星联络 后缀数组
- Java多线程之释放对象的锁
- Core Foundation框架介绍
- 文本框按键事件onkeydown、onkeypress、onkeyup区别
- 火狐Firefox 浏览器 onblur() 并且alert()时文本被选中问题
- javaSE_06Java中的数组(array)-思维导图
- ajax执行顺序问题
- puppeteer 填充基础表单
- 内联元素于与块元素的转换 相对定位、绝对定位以及fixed定位 Z轴覆盖
- es6 语法 (Decorator)
- 根据JavaBean创建数据库的操作SQL
- MongoDB-增删改
- [LOJ 2146][BZOJ 4873][Shoi2017]寿司餐厅
热门文章
- a标签javascript传参不正确的解决办法!
- cocos2d-x 下使用加密 sqlite3
- python 基础 6.0 异常的常用形式
- 3.11 T-SQL语句
- LR中select next row和update value on的设置
- mysql双机热备+heartbeat集群+自动故障转移
- 宿舍更换的新淋浴喷头";水温vs旋钮角度";关系的研究(曲线)
- win7下搭建nginx+php的开发环境(转)
- ul和li 基本用法分析(这里主要想学习怎么用在导航栏中)
- Java for LeetCode 126 Word Ladder II 【HARD】