linuxoracle導入資料庫
『壹』 linux oracle 怎麼導入.dmp文件
對於本機安裝了oracle 客戶端,下述命令都可以在 dos 執行,當然 dmp 文件導出在本地。
但在實際研發時,沒人願意在本機上安裝龐大的 oracle 軟體,這時你需要使用 Xshell/puTTY..
遠程工具連接到 Linux 進行操作,進行 Linux 上 dmp 文件的導入導出。
a. 將用戶 system 用戶表導出到指定路徑 D 盤
exp system/password@SID file=d:/chu.dmp full=y
b. 將用戶 system 與 sys 用戶的表導出到指定路徑 D 盤
exp system/password@SID file=d:/chu.dmp owner=(system,sys)
c. 將用戶 system 中的表 table_A、table_B 導出到指定路徑 D 盤
exp system/password@SID file= d:/chu.dmp tables=(table_A,table_B)
d. 將用戶 system 中的表 table1 中的欄位 filed1 以"00"打頭的數據導出
exp system/passwor@SID filed=d:/chu.dmp tables=(table1) query=/" where filed1 like '00%'/"
對於壓縮可以用 winzip 將 dmp 文件進行壓縮,也可以在上面命令後面 加上 compress=y 來實現。
導出 DMP文件適用於大型資料庫完整遷移,對遷移前後兩者伺服器資料庫字元集要求一致,且對CLOB欄位支持不太友好。
對於小數據的導出其實用 PLsql 能做的更好,更快,導出的SQL也很直觀。
e. 將 D:/chu.dmp 中的數據導入 TEST 資料庫中。
imp system/password@SID file=d:/chu.dmp
imp system/password@HUST full=y file=d:/data/newsmgnt.dmp ignore=y
上面命令如果出現問題,假設有的表已存在,對該表可以不進行導入,後面添加 ignore=y。
f. 將 d:/chu.dmp中的表table1 導入
imp system/passord@SID file=d:/chu.dmp tables=(table1)
『貳』 怎麼用linux命令連接racle資料庫
可以通過SSH或者SecureCRTPortable等可以直接連接Linux操作系統的軟體,連接到Linux系統。下面具體介紹一下:
1、登錄到Linux後,就可以在命令窗口直接對Linux進行操作了。先將用戶切換到Oracle。當顯示為[oracle@db ~]$ 時,說明切換成功。命令:su - oracle;
2、切換到Oracle用戶之後,我們登錄到到sqlplus,使用dba許可權登錄到sqlplus。在sqlplus中,我們使用conn連接一下我們具體想要操作的資料庫用戶。命令:conn username/password,示connected表示連接成功;
3、在SQL>中輸入想要進行操作的sql語句,這里我們舉個簡單的例子,以一個單表查詢為例進行演示:sql語句:select * from tablename。
(2)linuxoracle導入資料庫擴展閱讀:
Linux是一套免費使用和自由傳播的類Unix操作系統,是一個基於POSIX和UNIX的多用戶、多任務、支持多線程和多CPU的操作系統。它能運行主要的UNIX工具軟體、應用程序和網路協議。它支持32位和64位硬體。Linux繼承了Unix以網路為核心的設計思想,是一個性能穩定的多用戶網路操作系統。
Linux操作系統誕生於1991 年10 月5 日(這是第一次正式向外公布時間)。Linux存在著許多不同的Linux版本,但它們都使用了Linux內核。Linux可安裝在各種計算機硬體設備中,比如手機、平板電腦、路由器、視頻游戲控制台、台式計算機、大型機和超級計算機。
參考資料:Linux-網路
『叄』 在linux系統下導入oracle數據文件。
首先oracle版本要對應,或者向下兼容
然後,建立相應的表空間,如果導出文件中有表空間,要在linux下建立相應的,大小你得自己看自己導出來的dmp多大
然後最好建立相應的用戶,比如導出時用的user1,linux下你也要建同一個user1,並賦予相應許可權
然後imp user/password@sid file='路徑\文件名.dmp' full=y
然後等執行完了就完了
『肆』 如何將Oracle Linux下的資料庫完整的導入windows下
最簡單的方法:
1、在Windows上建一個和linux一模一樣的資料庫,資料庫版本和實例名等都要一模一樣。
2、停止oracle上的所有oracle相關的服務。
3、將linux上的資料庫文件,就是【ora實例名】那個文件夾里的東西(包括控制文件、日誌文件、數據文件)全部出來,覆蓋到windows上的相應文件上。
4、重新啟動Windows上的oracle相應服務。
5、一模一樣的資料庫就建好了。
---
以上,希望對你有所幫助。
『伍』 linux下怎麼用exp和imp導出和導入指定的oracle資料庫表
導入導出與歸不歸檔沒有關系
用oracle用戶命令行下輸入
exp
scott/tiger
file='保存路徑'
full=y
這樣就可以全庫導出
還有一個問題是scott用戶不定要解鎖,否則會無法連接資料庫
解鎖命令是sqlplus
下的輸入alter
user
scott
account
unlock;
『陸』 我想在linux下的oracle11g資料庫實行導入導出,具體應該怎麼做,用戶有syst
一、設置Linux電腦字元集,使其跟電腦上的Oracle資料庫字元集一致;
在Linux命令行界面,
查詢Oracle資料庫字元集:
select * from nls_database_parameters t where t.parameter=』NLS_CHARACTERSET』;
查詢結果:ZHS16CGB231280
然後vi /home/oracle/.bash_profile
export NLS_LANG=american_america.ZHS16CGB231280
source /home/oracle/.bash_profile
二、導出屬於wcall用戶的Oracle資料庫
exp wcall/wcall@eoss file=wcall.dmp owner=wcall; //導出資料庫
三、在Windows中安裝Oracle.10g.for.Windows,(示例中資料庫安裝在D盤,如果按照在其他磁碟,下面創建表空間的時候,需要做相應的修改)然後創建資料庫eoss,注意安裝的資料庫字元集要跟原來資料庫的相同。然後打開SQLPLUS,用system帳戶登陸後創建用戶wcall。
create user wcall identified by wcall; //創建用戶
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 wcall; //授予許可權
create tablespace CC_CALL
logging
datafile 'D:\oracle\proct\10.1.0\Db_1\cc.dbf'
size 32m
autoextend on
next 32m maxsize 2048m
extent management local; //創建表空間CC_CALL
create tablespace CC_CALL_HIS
logging
datafile 'D:\oracle\proct\10.1.0\Db_1\cc_his.dbf'
size 32m
autoextend on
next 32m maxsize 2048m
extent management local; //創建表空間CC_CALL_HIS
四、導入資料庫
IMP wcall/wcall@eoss fromuser=wcall touser=wcall file=wcall.dmp STATISTICS =none;
『柒』 如何把數據導入linux下的Oracle
我們要通過microsoft的excel導進數據,在這里我們還需要你要導入的數據源,比如說你要把sybase的導進oracle你就要擁有sybase的數據源。1,通過數據源把數據導入excel新建一個excel的文件然後打開excel點擊 數據——導入外部數據——導入數據 然後點擊「新建源」 選中ODBC 「下一步」 在這個框裡面就可以就可以選上你要導的數據源了,在下一個界面你就可以選擇你要導出的表了,然後再輸入你的資料庫的用戶和密碼等等。2,把excel打開然後另存成文本文件。3,在通過sqlldr(oracle自帶工具)導進去創建SQL*Loader輸入數據所需要的文件,均保存到C:\,用記事本編輯:控制文件:input.ctl,內容如下:
load data --1、控制文件標識
infile 'test.txt' --2、要輸入的數據文件名為test.txt
append into table test --3、向表test中追加記錄
fields terminated by X'09' --4、欄位終止於X'09',是一個製表符(TAB)
(dept_id,name) -----定義列對應順序其中的append可以換成a、insert,為預設方式,在數據裝載開始時要求表為空
b、append,在表中追加新記錄
c、replace,刪除舊記錄,替換成新裝載的記錄
d、truncate,同上4,在DOS窗口下使用SQL*Loader命令實現數據的輸入
C:\>sqlldr userid=system/manager@test control=input.ctl
然後就可以導入了。
體驗新版博客 閱讀(?
『捌』 linux中怎麼實現導入導出oracle資料庫中
exp和imp
1. 獲取幫助
imp help=y
2. 導入一個完整資料庫
imp system/manager file=bible_db log=dible_db full=y ignore=y
3. 導入一個或一組指定用戶所屬的全部表、索引和其他對象
imp system/manager file=seapark log=seapark fromuser=seapark
imp system/manager file=seapark log=seapark fromuser=(seapark,amy,amyc,harold)
4. 將一個用戶所屬的數據導入另一個用戶
imp system/manager file=tank log=tank fromuser=seapark touser=seapark_
imp system/manager file=tank log=tank fromuser=(seapark,amy)
touser=(seapark1, amy1)
5. 導入一個表
imp system/manager file=tank log=tank fromuser=seapark TABLES=(a,b)
6. 從多個文件導入
imp system/manager file=(paycheck_1,paycheck_2,paycheck_3,paycheck_4)
log=paycheck, filesize=1G full=y
7. 使用參數文件
imp system/manager parfile=bible_tables.par
bible_tables.par參數文件:
#Import the sample tables used for the Oracle8i Database Administrator's
Bible. fromuser=seapark touser=seapark_ file=seapark log=seapark_import
8. 增量導入
imp system./manager inctype= RECTORE FULL=Y FILE=A
-------------------------------------------------------------------------------------------------------------------------------------------
1. 獲取幫助
exp help=y
2. 導出一個完整資料庫
exp system/manager file=bible_db log=dible_db full=y
3. 導出資料庫定義而不導出數據
exp system/manager file=bible_db log=dible_db full=y rows=n
4. 導出一個或一組指定用戶所屬的全部表、索引和其他對象
exp system/manager file=seapark log=seapark owner=seapark
exp system/manager file=seapark log=seapark owner=(seapark,amy,amyc,harold)
注意:在導出用戶時,盡管已經得到了這個用戶的所有對象,但是還是不能得到這些對象引用的任何同義詞。解決方法是用以下的SQL*Plus命令創建一個腳本文件,運行這個腳本文件可以獲得一個重建seapark所屬對象的全部公共同義詞的可執行腳本,然後在目標資料庫上運行該腳本就可重建同義詞了。
SET LINESIZE 132
SET PAGESIZE 0
SET TRIMSPOOL ON
SPOOL c:\seapark.syn
SELECT 'Create public synonym '||synonym_name
||' for '||table_owner||'.'||table_name||';'
FROM dba_synonyms
WHERE table_owner = 'SEAPARK' AND owner = 'PUBLIC';
SPOOL OFF
5. 導出一個或多個指定表
exp seapark/seapark file=tank log=tank tables=tank
exp system/manager file=tank log=tank tables=seapark.tank
exp system/manager file=tank log=tank tables=(seapark.tank,amy.artist)
6. 估計導出文件的大小
全部表總位元組數:
SELECT sum(bytes)
FROM dba_segments
WHERE segment_type = 'TABLE';
seapark用戶所屬表的總位元組數:
SELECT sum(bytes)
FROM dba_segments
WHERE owner = 'SEAPARK'
AND segment_type = 'TABLE';
seapark用戶下的aquatic_animal表的位元組數:
SELECT sum(bytes)
FROM dba_segments
WHERE owner = 'SEAPARK'
AND segment_type = 'TABLE'
AND segment_name = 'AQUATIC_ANIMAL';
7. 導出表數據的子集(oracle8i以上)
NT系統:
exp system/manager query='Where salad_type='FRUIT'' tables=amy.salad_type
file=fruit log=fruit
UNIX系統:
exp system/manager query=\"Where salad_type=\'FRUIT\'\" tables=amy.salad_type
file=fruit log=fruit
8. 用多個文件分割一個導出文件
exp system/manager
file=(paycheck_1,paycheck_2,paycheck_3,paycheck_4)
log=paycheck, filesize=1G tables=hr.paycheck
9. 使用參數文件
exp system/manager parfile=bible_tables.par
bible_tables.par參數文件:
#Export the sample tables used for the Oracle8i Database Administrator's Bible.
file=bible_tables
log=bible_tables
tables=(
amy.artist
amy.books
seapark.checkup
seapark.items
)
10. 增量導出
「完全」增量導出(complete),即備份整個資料庫
exp system/manager inctype=complete file=990702.dmp
「增量型」增量導出(incremental),即備份上一次備份後改變的數據
exp system/manager inctype=incremental file=990702.dmp
「累計型」增量導出(cumulative),即備份上一次「完全」導出之後改變的數據
exp system/manager inctype=cumulative file=990702.dmp