1:首先创建表空间
create tablespace 表空间名
logging
datafile 'D:\oracle\product\10.2.0\oradata\orcl\XXXX.dmp --(表空间本地路径)
size 1024m
autoextend on
next 32m maxsize 2048m
extent management local;
2:创建用户
create user 用户名 identified by 密码;
3:给用户授权
GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW ,
DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,DBA,
CONNECT,RESOURCE,CREATE SESSION TO gold;--
4:给用户分配表空间
alter user 用户名 default tablespace 表空间名
-----------------------------以上命令都是在sqlplus下执行
删除有数据的表空间需要加 including contents
drop tablespace name including contents ;
导入dmp的时候命令是在cmd下执行的。
5:导入dmp
imp 用户名/密码@enfo full=y file=d:\???.dmp ignore=y
网上看了好多的帖子导入都是这样的写法。但是我导入本地oracle的时候一定要加IP地址
imp 用户名/密码@orcl full=y file=d:\???.dmp ignore=y
修改ORACLE 字符集
修改数据库字符集为:ZHS16GBK
查看服务器端字符集
SQL > select * from V$NLS_PARAMETERS;
修改:
$sqlplus /nolog
SQL>conn / as sysdba
若此时数据库服务器已启动,则先执行 SHUTDOWN IMMEDIATE 命
令关闭数据库服务器,然后执行以下命令:
SQL>shutdown immediate
SQL>STARTUP MOUNT
SQL>ALTER SYSTEM ENABLE RESTRICTED SESSION;
SQL>ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
SQL>ALTER SYSTEM SET AQ_TM_PROCESSES=0;
SQL>ALTER DATABASE OPEN;
SQL>ALTER DATABASE CHARACTER SET ZHS16GBK
*
ERROR at line 1:
ORA-12721: operation cannot execute when other sessions are active
若出现上面的错误,使用下面的办法进行修改,使用INTERNAL_USE可以跳过超集的检查:
SQL>ALTER DATABASE CHARACTER SET INTERNAL_USE ZHS16GBK;
SQL>SHUTDOWN IMMEDIATE
SQL>STARTUP