Oracle数据库创建表空间和用户以及备份数据的导入导出

Oracle数据库创建表空间和用户以及备份数据的导入导出

--oracle11g忘记密码,重置密码:
--1)进入cmd
--2)sqlplus / as sysdba
--3)alter user sys identified by 新密码;
 
--创建一个表空间
CREATE TABLESPACE dts DATAFILE 'D:\Workspace\DBF\data_ts.dbf' SIZE 50M EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;
--创建临时表空间
CREATE TEMPORARY TABLESPACE tts TEMPFILE 'D:\Workspace\DBF\temp_ts.dbf' SIZE 50M;
--表空间已用完继续分配
ALTER DATABASE DATAFILE 'D:\Workspace\DBF\data_ts.dbf' AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED
--查询表空间的使用情况
SELECT TABLESPACE_NAME 表空间名,EXTENT_MANAGEMENT 区管理,ALLOCATION_TYPE 分配方式,CONTENTS 是否永久 FROM DBA_TABLESPACES;
 
 
 
--创建用户时指定表空间和临时表空间
CREATE USER Cherish IDENTIFIED BY ********* DEFAULT TABLESPACE dts QUOTA 500M ON dts TEMPORARY TABLESPACE tts;
 --查询用户信息
SELECT username "用户名",user_id  "用户编号",account_status "用户状态",lock_date "锁定日期",expiry_date "过期日期" FROM dba_users;
 
 
 
 --将所有权限都分配给用户Cherish
grant all privileges to Cherish; 
--将管理员权限分配给Cherish
grant sysdba to Cherish;
--将导入数据的权限分配给Cherish
grant imp_full_database to Cherish;
 
 
Impdp Cherish/Precious@xe directory=expdir dumpfile=TDCB_ORCL2017_20180123.DMP logfile=ORCL2XE.log remap_schema=TDCB_ORCL2017:TDCB remap_tablespace=TDCB_ORCL1211:TDCB
 
--数据备份(用户表空间中的表)
exp Cherish/[email protected]:1521/orcl file = D:\Workspace\Do It Yourself\sc.dmp tables=(student,course,sc)
--数据恢复(表空间、用户)(注意:路径的中目录和文件名中不能包含中文和空格)
imp Cherish/[email protected]:1521/orcl file = D:\Workspace\Cherish\sc.dmp full=y ignore=y
 
 
--一、创建逻辑目录,该命令不会在操作系统创建真正的目录,最好以system等管理员创建。
create or replace directory expdir as 'D:\BackUpOracle';
drop directory expdir;
GRANT READ,WRITE ON DIRECTORY expdir TO Cherish;  
 
create or replace directory "expdir" as 'D:\BackUpOracle';
drop directory "expdir"
GRANT READ,WRITE ON DIRECTORY "expdir" TO Cherish;  
--二、查看管理理员目录(同时查看操作系统目录是否存在,因为Oracle并不关心该目录是否存在,如果不存在,则出错)
select * from dba_directories;
--三、给scott用户赋予在指定目录的操作权限,最好以system等管理员赋予。
--导出带有logfile的备份数据
expdp Cherish/[email protected]:1521/orcl DIRECTORY=expdir DUMPFILE=student.dmp TABLES=Student logfile=CherishExpdp.log
 
 
1)按用户导
expdp scott/tiger@orcl schemas=scott dumpfile=expdp.dmp DIRECTORY=dpdata1;
3)按表名导
expdp scott/tiger@orcl TABLES=emp,dept dumpfile=expdp.dmp DIRECTORY=dpdata1;
4)按查询条件导
expdp scott/tiger@orcl directory=dpdata1 dumpfile=expdp.dmp Tables=emp query='WHERE deptno=20';
5)按表空间导
expdp system/manager DIRECTORY=dpdata1 DUMPFILE=tablespace.dmp TABLESPACES=temp,example;
6)导整个数据库
expdp system/manager DIRECTORY=dpdata1 DUMPFILE=full.dmp FULL=y;
 
--删除用户
DROP USER Cherish CASCADE;
 
--移除表空间和表空间中的内容,并且移除数据文件
DROP TABLESPACE dts INCLUDING CONTENTS AND DATAFILES;
DROP TABLESPACE tts INCLUDING CONTENTS AND DATAFILES;
 
commit;

猜你喜欢

转载自blog.csdn.net/CherishPrecious/article/details/81323977