數據庫移動到本地

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爲最高級權限,可以創建數據庫,表等。




=======================原始記錄==============
--使用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;
發佈了55 篇原創文章 · 獲贊 16 · 訪問量 12萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章