数据库移动到本地

exp sjqy/[email protected]:1521/orcl  file=D:\shixuefu\shujuku1\aaa.dmp full=y
exp sjqy/[email protected]:1521/orcl  file=D:\shujukudaochu\goodd.dmp full=y


127.0.0.1
192.168.15.101


C:\ProgramData\Oracle\Java\javapath;


原主机:DEVELOP-C-086.DEVVDI.YNRCC.COM
替换为127.0.0.1


========================================================


导出表:
exp sjqy/[email protected]:1521/orcl  file=D:\shixuefu\shujuku1\aaa.dmp full=y
导入表:

imp sjqy/sjqy@orcl full=y  file=D:\shixuefu\shujuku1\aaa.dmp ignore=y


注意点:

imp 命令是在dos提示符下执行的。 
直接cmd后执行而不是在sql下执行的






问题1:本地计算机上的OracleOraDb11g_home1TNSListener服务启动后停止,某些服务在未由其他服务或程序使用时将自动停止
解决:NETWORK\ADMIN】目录下的【tnsnames.ora】和【listener.ora
修改HOST:主机名(127.0.0.1) 、PORT = 1521


问题2:ORA-12541: TNS: 无监听程序
解决步骤:https://jingyan.baidu.com/article/03b2f78c7a0ab75ea237ae33.html


问题3:imp导入dmp时违反唯一约束条件(解决方法没试过)
解决步骤:谢谢了..已经解决了..通过约束找到表..然后trancate table就ok了..十分感谢..


==============================================


如果有空表空白哦不会被导出,所以导出前先解决
先查询一下当前用户下的所有空表
select table_name from user_tables where NUM_ROWS=0;
用以下这句查找空表
select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0
复制第二步运行后的结果,运行


==================导入数据前操作=======


--使用SYSTEM用户登录数据库

以下前4条语句执行的环境都需要进入oracle之后,

cmd下进入oracle的方式:

sqlplus SYSTEM/密码 回车即可 (我们是 SYSTEM/SYSTEM)


--1创建"临时表空间",
CREATE TEMPORARY TABLESPACE sjqy_temp
         TEMPFILE 'F:\app\Lenovo\sjqy\sjqy_temp.dbf'
         SIZE 50M
         AUTOEXTEND ON
         NEXT 50M MAXSIZE UNLIMITED
         EXTENT MANAGEMENT LOCAL;


--2、首先,我们可以先建立自己的一个用户表空间,创建表空间的格式如下:         
CREATE TABLESPACE sjqy(表空间的名字)
         LOGGING
         DATAFILE 'F:\app\Lenovo\sjqy\sjqy.dbf' (这边可以写成oracle的某个路径下)
         SIZE 50M(初始大小)
         AUTOEXTEND ON(自动扩展)
         NEXT 50M MAXSIZE UNLIMITED
         EXTENT MANAGEMENT LOCAL;
        
--3.创建用户:
CREATE USER sjqy IDENTIFIED BY sjqy(用户名)
         ACCOUNT UNLOCK(密码)
         DEFAULT TABLESPACE sjqy(上面创建的表空间) 
         TEMPORARY TABLESPACE sjqy_temp;(上面创建的临时表空间)
         
--4.授权给新建的用户
GRANT CONNECT,RESOURCE TO sjqy;
GRANT DBA TO sjqy;--dba为最高级权限,可以创建数据库,表等。



扫描二维码关注公众号,回复: 1100970 查看本文章

=======================原始记录==============
--使用system用户登录数据库
--1创建"临时表空间",【D:\sjqyDataBase\】该地址需要使用数据库服务器的实际地址
CREATE TEMPORARY TABLESPACE sjqy_temp
         TEMPFILE 'D:\sjqyDataBase\sjqy_temp.DBF'
         SIZE 50M
         AUTOEXTEND ON
         NEXT 50M MAXSIZE UNLIMITED
         EXTENT MANAGEMENT LOCAL;




--2.创建数据表空间,【D:\sjqyDataBase\】该地址需要使用数据库服务器的实际地址
CREATE TABLESPACE sjqy
         LOGGING
         DATAFILE 'D:\sjqyDataBase\sjqy.DBF'
         SIZE 50M
         AUTOEXTEND ON
         NEXT 50M MAXSIZE UNLIMITED
         EXTENT MANAGEMENT LOCAL;


--3.创建用户:
CREATE USER sjqy IDENTIFIED BY sjqy
         ACCOUNT UNLOCK
         DEFAULT TABLESPACE sjqy
         TEMPORARY TABLESPACE sjqy_temp;


--4.授权给新建的用户
GRANT CONNECT,RESOURCE TO sjqy;
GRANT DBA TO sjqy;

猜你喜欢

转载自blog.csdn.net/qq_38369069/article/details/80449459