[發案] MYSQL 5.5.54轉移至8.0.20問題排除
發案人:邱先生
聯絡方式1:站內信/LINE/電話
聯絡方式2:
所在地區 :台南
有效時間:到問題解決為止
專案說明:目前將一套用php所寫的資料收集系統轉移至新主機上遇到一些問題,
原本的架構是mysql5.5.54 新主機是mysql 8.0.20 轉移過去之後發
現一些問題,在匯入資料時如果使用utf8格式則欄位會有偏移的狀況
如果不使用utf8編碼的方式匯入則正常,這個問題在mysql5的時候不
會發生,但是因為對資料庫很不熟,所以想上來徵求幫手解決問題。
預算:請報價
接案者要求:可以以時薪付費,或者了解一下問題之後用一筆費用來報價,主要
希望能解決問題,請來信討論。謝謝
附註:
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 218.161.109.137 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/CodeJob/M.1598023912.A.E09.html
推
08/21 23:55,
3年前
, 1F
08/21 23:55, 1F
→
08/26 13:42,
3年前
, 2F
08/26 13:42, 2F
感謝版上的各位來信,這幾天的測試後發現問題不是在mysql上 狀況說明如下
因為這兩天反覆確認問題發生的原因,目前確定造成偏移的原因不是MYSQL而是PHP7之後
的版本造成的,原本的使用的PHP版本是5.6.31 MYSQL是5.5.54在匯入資料時因為我們都
是使用中文作為某些欄位的紀錄,將檔案存成CSV的UTF8模式匯入資料都沒有問題,正常
的情況如下圖顯示,文字與欄位都正常。
https://imgur.com/6gilAmH
轉移到新的伺服器後發現了相同的匯入資料會發生欄位偏移的問題,
匯入後會變成下圖這樣的情況,
https://imgur.com/qIUQ1dN
在pharmacy_name會塞入兩個數值,原本後面的數值會往前偏移,但如果把CSV檔案存成
ANSI模式則匯入資料就正常,但是中文顯示的部分會變成亂碼,就像下圖一樣
https://imgur.com/61xdPPc
新的伺服器PHP是7.4.9 MYSQL是8.0.21,為了排除問題我做了一些測試,後來發現將PHP
降回5.6.31的時候就不會出現這樣的問題,所以是PHP7造成匯入資料會偏移的問題。
希望有類似經驗能處理相關問題的鄉民朋友們來信討論並告知費用,謝謝
※ 編輯: yumemi2001 (140.116.93.140 臺灣), 08/27/2020 13:31:07
→
09/16 22:12,
3年前
, 3F
09/16 22:12, 3F
→
09/16 22:13,
3年前
, 4F
09/16 22:13, 4F
推
09/22 01:16,
3年前
, 5F
09/22 01:16, 5F
→
09/22 01:18,
3年前
, 6F
09/22 01:18, 6F
→
09/22 01:19,
3年前
, 7F
09/22 01:19, 7F
→
09/24 02:41,
3年前
, 8F
09/24 02:41, 8F
→
09/24 02:41,
3年前
, 9F
09/24 02:41, 9F
→
09/24 02:42,
3年前
, 10F
09/24 02:42, 10F
→
09/24 02:42,
3年前
, 11F
09/24 02:42, 11F
→
09/24 02:43,
3年前
, 12F
09/24 02:43, 12F
→
09/24 02:43,
3年前
, 13F
09/24 02:43, 13F
CodeJob 近期熱門文章
PTT數位生活區 即時熱門文章