导入、导出oracle数据库

来源:互联网 发布:神经网络数据融合 编辑:程序博客网 时间:2024/06/02 07:13

--登陆wcb数据库

--wcb数据库   查看当前用户表空间:User

select username,default_tablespace from user_users; 


--登陆A数据库服务器

--进入dpdump文件夹

cd /home/oracle/admin/ora11/dpdump


--执行导出数据库命令

expdp userid=wcb/wcb  dumpfile=wcb%U.dmp LOGFILE=Expdp_wcb.log PARALLEL=4 SCHEMAS=wcb COMPRESSION=ALL CONTENT=ALL


--若执行报错

ORA-39145: directory object parameter must be specified and non-null


--登陆数据库,查询

sqplus /"as sysdba"


--查询data_pump_dir文件目录是否存在

select * from dba_directories;


--若不存在则创建,并赋予wcb用户权限

CREATE DIRECTORY data_pump_dir AS '/opt/oracle/admin/orcl/dpdump'
grant read,write on  directory data_pump_dir to chgdb;


--若存在,则赋予wcb用户导出权限

grant exp_full_database to wcb;


--再执行导出命令

expdp userid=wcb/wcb  dumpfile=wcb%U.dmp LOGFILE=Expdp_wcb.log PARALLEL=4 SCHEMAS=wcb COMPRESSION=ALL CONTENT=ALL


--导出成功,在另一个数据,创建wcb用户

--若wcb用户存在,则变当前数据名

--更改用户名 名称
--查询oracle数据用户名队员序列
select user#, name from user$ where name = 'WCB';


--更新oracle用户名称
update user$ set name = 'WCB1' where user# = 173;  


--刷新数据库
alter system checkpoint;
alter system flush shared_pool;


--不存在用户,创建

--创建oracle用户
create user wcb identified by wcb;



--error  user CHGDB lacks CREATE SESSION privilege; logon denied
grant connect to wcb;
grant resource to wcb; 
grant create session to wcb;



--若不存在User表空间,创建

--创建用户表空间
create tablespace USER
datafile '/home/oracle/admin/ora11/SALES_DATA01.dbf' size 10m autoextend on next 10m maxsize 100m,
'/home/oracle/admin/ora11//SALES_DATA02.dbf' size 10m autoextend on next 10m maxsize
unlimited,'/home/oracle/admin/ora11//SALES_DATA03.dbf' size 10m;



--导入:

cd /home/oracle/admin/ora11/dpdump


impdp userid=wcb/wcbdumpfile=wcb%U.dmp LOGFILE=Expdp_wcb.log PARALLEL=4 SCHEMAS=wcb


--若报错:

select * from dba_directories;
CREATE DIRECTORY data_pump_dir AS '/opt/oracle/admin/orcl/dpdump'
grant read,write on  directory data_pump_dir to wcb;
grant imp_full_database to wcb;


--再导入成功