MySQL轉(zhuǎn)移到PostgreSQL的經(jīng)歷是怎樣的-創(chuàng)新互聯(lián)

本篇文章給大家分享的是有關(guān)MySQL轉(zhuǎn)移到PostgreSQL的經(jīng)歷是怎樣的,小編覺得挺實用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比成華網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式成華網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋成華地區(qū)。費用合理售后完善,10多年實體公司更值得信賴。

MySQL轉(zhuǎn)移到PostgreSQL的經(jīng)歷

 五一了,加班,閑著沒事,打算把自己放在MySQL(5.0.17)上的數(shù)據(jù)轉(zhuǎn)到PostgreSQL(8.0.0)上,參照網(wǎng)上的文章導(dǎo)入,結(jié)果陷入了一場麻煩之中。最后終于成功了,現(xiàn)在將步驟說一下,以免有其他的朋友誤入歧途。

數(shù)據(jù):做電信業(yè)務(wù)話單分析使用的兩張表,每張都在200萬條記錄左右

步驟:
1.用mysqldump將文件導(dǎo)了出來,生成了兩個文件bill01.sql,bill02.sql(400M左右一個文件),如果你的數(shù)據(jù)量也不較大,最好不要整庫導(dǎo)出,否則編輯導(dǎo)出文件回讓你的機(jī)器爽死的,俺的機(jī)器P42.8,1G內(nèi)存都吃不消。


2.由于數(shù)據(jù)庫服務(wù)器在遠(yuǎn)程,編輯很不方便,下載回本機(jī)。用UltraEdit32打開,將導(dǎo)出文件的前面的創(chuàng)建表的部分、文件最后的LOCK之類的都刪除,僅保留數(shù)據(jù)。將數(shù)據(jù)前面Insert xxxx values(刪除,文件中`號等MySQL用的符號刪除。總之形成一個只有數(shù)據(jù)的文件,每行一個記錄,每字段間用,號分隔。

3.在PostgreSQL上建立相應(yīng)的表結(jié)構(gòu),上傳數(shù)據(jù)文件到服務(wù)器。

4.用psql登陸數(shù)據(jù)庫,COPY bill01 FROM '/data/bill02.txt' WITH DELIMITER AS ','

基本上就OK了。

用這個辦法比導(dǎo)出來的SQL命令執(zhí)行要快多了,俺的機(jī)器跑了10個小時才導(dǎo)了200多萬條記錄,而且導(dǎo)出的SQL命令需要修改才能在PostgreSQL上用,用這個辦法,10分鐘搞定。

要注意的問題:

如果字段為Integer且允許為NULL的話,導(dǎo)入之前將NULL替換成數(shù)字,否則會報錯的。

一定要將`符號去掉,這個是MySQL支持的,PostgreSQL導(dǎo)入時可不認(rèn)這個

以上就是MySQL轉(zhuǎn)移到PostgreSQL的經(jīng)歷是怎樣的,小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降?。希望你能通過這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道。

分享文章:MySQL轉(zhuǎn)移到PostgreSQL的經(jīng)歷是怎樣的-創(chuàng)新互聯(lián)
文章出自:http://muchs.cn/article14/psoge.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗、網(wǎng)站建設(shè)微信公眾號、網(wǎng)站收錄服務(wù)器托管、ChatGPT

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化