如:在/oracle下创建一个backup目录
mkdir backup
注意目录权限和所有者、所有组
更改读写权限命令
chmod –R 755 backup/
更改所有组命令
chown –R oracle:oinstall/backup
–查询所有目录信息(查看有无指定mydir目录,创建之后再查看成功与否)
SELECT * FROM DBA_DIRECTORIES;
–创建目录
CREATE DIRECTORY MYDIR AS ‘/oracle/backup’;
GRANT READ,WRITE ON DIRECTORY MYDIR TO TEST;(使用sys 用户时无需操作)
(必要的话删除mydir目录,命令:drop directory mydir)
给mydir文件对象授权
grant read,write on directory mydir to public;
用户授权数据文件导出
grant exp_full_database to esb;
操作完成收回权限;
revoke exp_full_database to esb;
用户授权数据文件导入
Grant imp_full_database to esb;
export ORACLE_SID=cbsdb;
export NLS_LANG=American_America.AL32UTF8;
expdp sys/sys directory=mydir full=y dumpfile=cbsdb_1011.dmp logfile=cbsdb_1011.log;
export ORACLE_SID=cbsdb
export NLS_LANG=American_America.AL32UTF8
impdp sys/sys directory=mydir dumpfile=cbsdb_1011.dmp
数据库单用户导出
expdp ‘/ as sysdba’ directory=mydir dumpfile=sch_1024.dmp logfile=sch_1024.log schemas=fin,sch,ensemble,teller9;
导出数据用户自己后边定义
expdp ‘/ as sysdba’ directory=MYDIR dumpfile= rb_tran_hist.dmp logfile= rb_tran_hist.log tables =ENSEMBLE.RB_TRAN_HIST:RB_TRAN_HIST_P01 ;
导入新用户: REMAP_SCHEMA=原先用户:新用户
impdp sys/sys directory=mydir dumpfile=NL_UPRIGHT20180815.dmp REMAP_SCHEMA=NL_UPRIGHT:SN_UPRIGHT;
在数据库服务器上新建test.par文件 ,需要导出PROCEDURE FUNCTION PACKAGE 根据需要自行修改
vi test.par
INCLUDE=PROCEDURE:"IN ('P_TEST_LAST_DDL')"
INCLUDE=FUNCTION:"IN ('F_GET_DATE')"
INCLUDE=PACKAGE:"IN ('PKG_TEST_DEMO')"
SCHEMAS=CORE
导出命令:
expdp sys/sys directory=mydir full=y dumpfile=cbsdb_1011.dmp logfile=cbsdb_1011.log parfile=test.par
导入命令: PROCEDURE FUNCTION PACKAGE 根据需要自行修改
impdp “’/ as sysdba’” directory=home_dir logfile=impdp.log dumpfile=test.dmp schemas=hdd include=procedure:"=‘TEST’" TABLE_EXISTS_ACTION=replace
目前尝试多次oracle数据库不支持已经存在的存储过程导入,导入之前需要在导入用户下先删除本次导入的存储过程。
DROP package 过程名;
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
Sga_targer 自动管理内存时使用,sga_target 是当前已分配的最大sga
alter system set sga_target=6G scope=spfile;
文档在逐次的尝试中不断总结更新而来,对自己工作技能的一定总结,不喜勿喷!