本篇文章給大家分享的是有關MySQL轉移到PostgreSQL的經歷是怎樣的,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
MySQL轉移到PostgreSQL的經歷
五一了,加班,閑著沒事,打算把自己放在MySQL(5.0.17)上的數據轉到PostgreSQL(8.0.0)上,參照網上的文章導入,結果陷入了一場麻煩之中。最后終于成功了,現在將步驟說一下,以免有其他的朋友誤入歧途。
數據:做電信業務話單分析使用的兩張表,每張都在200萬條記錄左右
步驟:
1.用mysqldump將文件導了出來,生成了兩個文件bill01.sql,bill02.sql(400M左右一個文件),如果你的數據量也不較大,最好不要整庫導出,否則編輯導出文件回讓你的機器爽死的,俺的機器P42.8,1G內存都吃不消。
2.由于數據庫服務器在遠程,編輯很不方便,下載回本機。用UltraEdit32打開,將導出文件的前面的創建表的部分、文件最后的LOCK之類的都刪除,僅保留數據。將數據前面Insert xxxx values(刪除,文件中`號等MySQL用的符號刪除??傊纬梢粋€只有數據的文件,每行一個記錄,每字段間用,號分隔。
3.在PostgreSQL上建立相應的表結構,上傳數據文件到服務器。
4.用psql登陸數據庫,COPY bill01 FROM '/data/bill02.txt' WITH DELIMITER AS ','
基本上就OK了。
用這個辦法比導出來的SQL命令執行要快多了,俺的機器跑了10個小時才導了200多萬條記錄,而且導出的SQL命令需要修改才能在PostgreSQL上用,用這個辦法,10分鐘搞定。
要注意的問題:
如果字段為Integer且允許為NULL的話,導入之前將NULL替換成數字,否則會報錯的。
一定要將`符號去掉,這個是MySQL支持的,PostgreSQL導入時可不認這個
以上就是MySQL轉移到PostgreSQL的經歷是怎樣的,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。