oracle数据库导入需要的详细操作
1:检查数据库一致性:
1.1 查询oracle server端的字符集:
select userenv('language') from dual;
1.2 查询DMP文件的字符集:
如果dmp文件不大,比如只有几M或几十M,可以用UltraEdit打开(16进制方式),看第2第3个字节的内容,如0354,然后用以下SQL查出它对应的字符集:
select nls_charset_name(to_number('0354','xxxx')) from dual;
1.3
查询本地client:
在windows平台下,就是注册表里面相应OracleHome的NLS_LANG;
DOS>set nls_lang=AMERICAN_AMERICA.ZHS16GBK
这样就只影响这个窗口里面的环境变量。
在unix平台下,就是环境变量NLS_LANG。
$echo $NLS_LANG
AMERICAN_AMERICA.ZHS16GBK
$echo $NLS_LANG
AMERICAN_AMERICA.ZHS16GBK
2:导入准备:
2.1
创建表空间:
CREATE TABLESPACE 表空间
DATAFILE '路径\*.dbf'
SIZE 50M
AUTOEXTEND ON NEXT 10M MAXSIZE 500M;
2.2
创建用户:
CREATE USER 用户名 IDENTIFIED BY '密码'
DEFAULT TABLESPACE 表空间;
2.3
用户授权:
GRANT CONNECT,RESOURCE TO 用户;
GRANT dba TO 用户;
3:导入DMP文件:
3.1
导入DMP:
IMP 用户名/密码@服务 FILE=路径/*.DMP LOG=路径/*.DMP FULL=Y [IGNORE=Y /FROMUSER=用户 /TOUSER=新用户]
待续......