Oracle 数据库的导入与导出
1.导入
- 打开cmd,用管理员登录:
sqlplus
sys as sysdba
密码不用输; - 创建表空间:create tablespace tablespaceName datafile ‘E:\tablespaceName.dbf’ size 800m autoextend on next 50m maxsize 20480m extent management local;
- 创建用户:create user userName identified by passWord default tablespace tablespaceName ;
- 修改用户权限:grant dba, connect,create session to userName;
- 重新打开cmd,导入dmp数据库文件:
imp userName/passWord@orcl file=要导入数据库文件路径 full=“y”;
2.导出
<1>只导出表结构
exp userName/passWord@127.0.0.1:1521/orcl owner=userName file=导出的文件路径/data.dmp rows=n log=日志的路径\log.txt
注意
为防止空表遗漏,先执行
select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0 or num_rows is null
再将结果执行一遍既可以避免漏掉空表的问题。
<2>导出表结构和数据
exp userName/passWord@127.0.0.1:1521/orcl owner=userName file=导出的文件路径/data.dmp log=日志的路径\log.txt
注意
为防止空表遗漏,先执行
select ‘alter table ‘||table_name||’ allocate extent;’ from user_tables where num_rows=0 or num_rows is null
再将结果执行一遍既可以避免漏掉空表的问题。