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 将数据库整体导出,包括表结构等。