一、.sqlplus连接数据库
$sqlplus /nolog
1)本地数据库:
1.1、以管理员身份进入数据库
conn sys as sysdba
password:xxxxxxxx
2)远程数据库:
2.1、以管理员身份进入数据库
conn (用户名/密码)sys/sysdba@172.12.35.14:1521/orcl as sysdba
2.2、以管理员身份进入数据库
conn (用户名/密码)crjdata/crjdata123@172.12.35.14:1521/orcl
二、oracle修改数据库字符集编码
2.1.立刻停止oracle实例并修改编码
SHUTDOWN IMMEDIATE;
STARTUP MOUNT;
ALTER SYSTEM ENABLE RESTRICTED SESSION;
ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
ALTER SYSTEM SET AQ_TM_PROCESSES=0;
ALTER DATABASE OPEN;
ALTER DATABASE CHARACTER SET ZHS32GB18030;
当字符集小于当前字符集的时候,这里会出现一个错误。
(!!!!cORA-12712: new character set must be a superset of old character set )
继续用下面指令,照样可以正常替换。只是有些表中的中文字符没法用了。
ALTER DATABASE character set INTERNAL_USE ZHS32GB18030;
2.2. 重新启动数据库
SHUTDOWN;
STARTUP;
2.3.设置环境变量
Windows:set NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS32GB18030
Linux: export NLS_LANG='SIMPLIFIED CHINESE_CHINA.ZHS32GB18030'
根据实际情况,设置:AMERICAN_AMERICA.ZHS32GB18030或者SIMPLIFIED CHINESE_CHINA.ZHS32GB18030
三、oracle创建用户并指定表空间
1)创建临时表空间--cmd--sqlplus命令--通过sys as sysdba(系统最高管理员权限)连接SQL
执行以下命令行:
create temporary tablespace crjdatatablespace1_temp (临时表空间名)
tempfile 'D:oradataorclcrjdatatablespace1_temp.dbf' (表空间的路径)
size 50m (初始大小)
autoextend on (自动扩展)
next 50m maxsize 20480m (自动扩展每次增加50M,最大可到20480M)
extent management local;
2)创建数据表空间--SQL下执行以下命令行
create tablespace crjdatatablespace1
logging
datafile 'D:appadministratororadataorclcrjdatatablespace1.dbf'
size 50m
autoextend on
next 50m maxsize 20480m
extent management local;
3)创建用户并指定表空间 --SQL下执行以下命令行
create user crjdata identified by crjdata123 (创建用户pdmis,设置密码pdmis)
default tablespace crjdatatablespace1 (为用户指定表空间)
temporary tablespace crjdatatablespace1_temp; (为用户指定临时表空间)
4)给用户授予权限 --SQL下执行以下命令
grant connect,resource,dba to pdmis;
5)远程导入dmp文件
cd /d D:oraclexeapporacleproduct11.2.0serverin(一般环境变量已经设置好)
imp crjdata/crjdata123@172.12.35.14:1521/orcl file=C:oracledata.dmp fromuser=crjdata,crjasj touser=crjdata,crjasj data_only=y
6)远程导出dmp文件
exp crjdata/crjdata123@172.12.35.14:1521/orcl file=C:oracledata.dmp tables=USER_INFO,POLICY_INFO