一種大數(shù)據(jù)文件快速導入關系型數(shù)據(jù)庫的方法【
技術領域:
】[0001]本發(fā)明涉及數(shù)據(jù)庫
技術領域:
,具體涉及一種大數(shù)據(jù)文件快速導入關系型數(shù)據(jù)庫的方法?!?br>背景技術:
】[0002]企業(yè)生存靠的是利潤,如果沒有了利潤,一個企業(yè)是無法存活下來的。提高企業(yè)利潤的方法多種多樣,總結(jié)為一句話就是“提高工作效率”,只有工作效率上去了,企業(yè)才能以最小的投入獲取最大的產(chǎn)生,既實現(xiàn)利潤最大化。[0003]在企業(yè)中,數(shù)據(jù)庫管理人員,遇到系統(tǒng)升級等情況,需要把大量大數(shù)據(jù)文本的內(nèi)容數(shù)據(jù)導入到關系型數(shù)據(jù)庫中。傳統(tǒng)的方法費事費力,數(shù)據(jù)準確率低,在漫長的導入過程中,如果遇到網(wǎng)絡原因等中斷連接問題,需要重頭再導,效率極低?!?br/>發(fā)明內(nèi)容】[0004]本發(fā)明解決的技術問題在于提供一種大數(shù)據(jù)文件快速導入關系型數(shù)據(jù)庫的方法;為數(shù)據(jù)庫開發(fā)、維護人員提供一種更快捷、高效的文本文件導入方法;同時也可以盡量減輕了開發(fā)人員的工作量、提高了工作效率。[0005]本發(fā)明解決上述技術問題的技術方案是:[0006]所述的方法是在安裝了oracle關系型數(shù)據(jù)庫的Iinux服務器中,在shell的oracle用戶下執(zhí)行腳本命令,將存有大量數(shù)據(jù)的文本文件的內(nèi)容,導入到oracle數(shù)據(jù)庫事先創(chuàng)建好的表中。[0007]所述的方法包括如下步驟:[0008]第I步、將文本文件主要按照列與列之間的分隔符進行特定格處理,;[0009]第2步、在oracle用戶下創(chuàng)建一張表,這張表的字段與文本文件內(nèi)容中的字段一致;[0010]第3步、刪除文本文件中標題字段,即非數(shù)據(jù)的第一行;[0011]第4步、在LINUX中,使用oracle用戶創(chuàng)建一個ctl后綴的文件;[0012]第5步、在該ctl后綴文件中編寫導入語句;[0013]第6步、將windows上文本文件上傳到Iinux中,放在/home/oracle下;[0014]第7步、在Iinux的root用戶下,修改文本文件的權限及所屬組;[0015]第8步、在Iinux的oracle用戶下執(zhí)行腳本命令,開始導入數(shù)據(jù);[0016]第9步、導入成功后,通過oracle的sql語句查詢結(jié)果。[0017]本發(fā)明的有益效果是:傳統(tǒng)的導入方法是通過oracle關系型數(shù)據(jù)庫的客戶端工具toad或者plsql,到文本文件的內(nèi)容達到10萬行以上時,導入需要花費大半天的時間,這個是速度是無法忍受的。使用本發(fā)明的方法,可以把導入所需要的時間減少90%;實現(xiàn)大數(shù)據(jù)文本快速導入到關系型數(shù)據(jù)庫,可以讓數(shù)據(jù)庫開發(fā)、維護人員大大減少數(shù)據(jù)處理過程中的等待時間,提高工作效率?!靖綀D說明】[0018]下面結(jié)合附圖對本發(fā)明進一步說明:[0019]圖1為本發(fā)明的業(yè)務流程圖?!揪唧w實施方式】[0020]本發(fā)明系統(tǒng)通過在安裝了oracle關系型數(shù)據(jù)庫的Iinux服務器中,在shell的oracle用戶下執(zhí)行腳本命令,把存有大量數(shù)據(jù)的文本文件的內(nèi)容,快速、高效導入到oracle數(shù)據(jù)庫事先創(chuàng)建好的表中。[0021]下面具體以把Excel文件數(shù)據(jù)導入到oracle數(shù)據(jù)庫為例:[0022]如附圖1所示,是大數(shù)據(jù)文件快速導入關系型數(shù)據(jù)庫的方法流程圖;大數(shù)據(jù)文件快速導入關系型數(shù)據(jù)庫的方法包括如下步驟:[0023]第I步、把import,xls文件另存為import,csv文件;[0024]第2步、在oracle用戶user下創(chuàng)建一張表,這張表的字段與import,xls文件中的字段一致;[0025]Createtableimport[0026]([0027]Idnumber.[0028]Namevarcha2(50)[0029]);[0030]第3步、將import,csv文件中的標題字段刪除,即非數(shù)據(jù)的第一行;[0031]第4步、在LINUX中,使用oracle用戶創(chuàng)建一個import,ctl文件,存放在/home/oracle目錄下;[0032]第5步、在import,ctl文件中編寫以下語句:[0033]loaddata[0034]infileimport,csv[0035]intotableimport[0036]fieldsterminatedby‘,’[0037](id,name);[0038]第6步、講windows上import,csv文件上傳到linux中,放在/home/oracle下;[0039]第7步、在Iinux的root用戶下,修改import,csv文件的權限及所屬組:[0040]chmod-Roracle:oinstall/home/oracle/import,csv;[0041]第8步、在Iinux的oracle用戶下執(zhí)行腳本命令,開始導入數(shù)據(jù):[0042]sqlldruser/tigercontrol=import.ctl;[0043]第9步、導入成功后,通過oracle的sql語句查詢結(jié)果:[0044]selectid,namefromimporto【主權項】1.一種大數(shù)據(jù)文件快速導入關系型數(shù)據(jù)庫的方法,其特征在于:所述的方法是在安裝了oracle關系型數(shù)據(jù)庫的Iinux服務器中,在shell的oracle用戶下執(zhí)行腳本命令,將存有大量數(shù)據(jù)的文本文件的內(nèi)容,導入到oracle數(shù)據(jù)庫事先創(chuàng)建好的表中。2.根據(jù)權利要求1所述的大數(shù)據(jù)文件快速導入關系型數(shù)據(jù)庫的方法,其特征在于:所述的方法包括如下步驟:第I步、將文本文件主要按照列與列之間的分隔符進行特定格處理,;第2步、在oracle用戶下創(chuàng)建一張表,這張表的字段與文本文件內(nèi)容中的字段一致;第3步、刪除文本文件中標題字段,即非數(shù)據(jù)的第一行;第4步、在LINUX中,使用oracle用戶創(chuàng)建一個ctl后綴的文件;第5步、在該ctl后綴文件中編寫導入語句;第6步、將windows上文本文件上傳到Iinux中,放在/home/oracle下;第7步、在Iinux的root用戶下,修改文本文件的權限及所屬組;第8步、在Iinux的oracle用戶下執(zhí)行腳本命令,開始導入數(shù)據(jù);第9步、導入成功后,通過oracle的sql語句查詢結(jié)果?!緦@勘景l(fā)明涉及數(shù)據(jù)庫
技術領域:
,具體涉及一種大數(shù)據(jù)文件快速導入關系型數(shù)據(jù)庫的方法。本發(fā)明所述的方法是在安裝了oracle關系型數(shù)據(jù)庫的linux服務器中,在shell的oracle用戶下執(zhí)行腳本命令,將存有大量數(shù)據(jù)的文本文件的內(nèi)容,導入到oracle數(shù)據(jù)庫事先創(chuàng)建好的表中。本發(fā)明的方法能快速、高效的將這些大數(shù)據(jù)的文本文件導入到oracle關系型數(shù)據(jù)庫中,大大的減輕了數(shù)據(jù)庫開發(fā)、維護人員的工作量;可以廣泛應用于數(shù)據(jù)庫管理員導入大數(shù)據(jù)的文本文件到oracle關系型數(shù)據(jù)?!綢PC分類】G06F17-30【公開號】CN104866568【申請?zhí)枴緾N201510266576【發(fā)明人】龐毅,季統(tǒng)凱,孫傲冰,徐震宇,關班記【申請人】國云科技股份有限公司【公開日】2015年8月26日【申請日】2015年5月22日