Oracle数据库的备份与还原
oracle数据库的备份(导出exp)与还原(导入imp)后缀名为dmp的文件
1.方式有两种:利用图形化界面(连接工具PLSQL Dev)或黑白命令行。
2.这里先用plsql导出:
3.以ludy用户密码登录,点击Tools-Export Tables这里导出的是ludy.dmp文件其名称与数据库用户名相同,其所属的表空间名也是ludy,表空间文件名是某路径下的LUDY.DBF。

PLSQL中的exp操作
4.命令行导入:
5.以system Connect as SYSDBA用户密码登录,用命令创建的表空间ludy,用户ludy(名字最好与原来相同),再对该用户授权。
6.按win+R输入cmd打开命令行窗口输以下命令:imp ludy/123@orcl file=F:\DBF-dmp\dmp\ludy.dmp fromuser=ludy touser=ludy 回车导入成功。
7.用创建的用户和密码登录,ludy,密码。在tables中Quary date。
8.若第6步导入错误,提示只有DBA才能导入由其他DBA导出的文件。
解决:grant dba to ludy;
再不行就 alter user ludy default role dba;
附相关命令:
在system as SYSDBA用户下登录plsql
--创建表空间
create tablespace icity datafile 'F:\LinRanWork\icity.dbf' size 10m autoextend on;
--查看表空间
select * from dba_data_files;
--删除表空间
drop tablespace icity including contents and datafiles cascade constraint;
--删除用户
drop user hy12345 cascade;
--查看用户
select * from all_users;
--创建用户及指定表空间,并授权
create user hy12345 identified by 123 default tablespace icity quota 50m on users;
grant all privileges to hy12345;
--查看表空间的使用情况
SELECT a.tablespace_name "表空间名称",
total / (1024 * 1024) "表空间大小(M)",
free / (1024 * 1024) "表空间剩余大小(M)",
(total - free) / (1024 * 1024 ) "表空间使用大小(M)",
total / (1024 * 1024 * 1024) "表空间大小(G)",
free / (1024 * 1024 * 1024) "表空间剩余大小(G)",
(total - free) / (1024 * 1024 * 1024) "表空间使用大小(G)",
round((total - free) / total, 4) * 100 "使用率 %"
FROM (SELECT tablespace_name, SUM(bytes) free
FROM dba_free_space
GROUP BY tablespace_name) a,
(SELECT tablespace_name, SUM(bytes) total
FROM dba_data_files
GROUP BY tablespace_name) b
WHERE a.tablespace_name = b.tablespace_name;