欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MySQL命令無法輸入中文問題的解決方式

 更新時(shí)間:2021年08月27日 12:47:55   作者:arstercz  
這篇文章主要給大家介紹了關(guān)于MySQL命令無法輸入中文問題的解決方式,文中給出了詳細(xì)的解決方案,對遇到這個(gè)問題的同學(xué)有很大的幫助,需要的朋友可以參考下

發(fā)現(xiàn)問題

近期通過 mysql 命令連接 mysql server 的時(shí)候, 出現(xiàn)了不能輸入中文的現(xiàn)象, 如下所示:

mysql> SELECT 'Chinese characters <> are stripped';
+------------------------------------+
| Chinese characters <> are stripped |
+------------------------------------+
| Chinese characters <> are stripped |
+------------------------------------+
1 row in set (0.00 sec)

輸入的所有中文都會被替換為空. 上述測試為官方的 mysql-5.7.32 版本.

遍歷官方 mysql 的 changelog-5.7.34 發(fā)現(xiàn)了 oracle 官方的 mysql-5.7.34 和 mysql-8.0.24 分別修復(fù)了以下 bug

For builds compiled using the libedit library, if the mysql client was invoked
with the --default-character-set=utf8 option, libedit rejected input of
multibyte characters. (Bug #32329078, Bug #32583436, Bug #102806)

參考bug-102806 , 出現(xiàn)和描述中類似的事情, mysql 命令行的交互模式不支持所有寬字符的輸入.

不能輸入中文會出現(xiàn)什么問題?

從測試來看, 該 bug 只影響通過 mysql 命令以交互模式連接 mysql server 的會話操作 . 如果線上有使用此 bug 的版本, 操作表的時(shí)候可能會出現(xiàn)丟失中文的問題.

以下方式不受影響:

1. 各程序通過相關(guān)驅(qū)動連接數(shù)據(jù)庫;
2. mysql 命令以非交互模式操作, 比如 mysql -h ... -p.... < /tmp/t.sql

哪些版本受影響

該 bug 在 5.7.34 和 8.0.24 中修復(fù), 見 github-mysql-patch-117fb2 . 從修復(fù)的補(bǔ)丁來看, bug 與 libedit 版本沒有關(guān)系, 不管是 rpm, deb 還是官方的 build 版本都受此影響.

從我們的測試來看, 以下版本都會受到影響:

5.7.31 ~ 5.7.33
8.0.21 ~ 8.0.23

備注: 其它發(fā)行版暫不明確, 大概率也會出同樣的問題, 不過發(fā)行版通常比官方的慢一拍, 其低版本可能會提前修復(fù)該問題.

如何處理

線上的版本的選擇可以集中在使用過的一些版本, 比如筆者常用的:

- percona 分支
percona-5.6.45
percona-5.7.28
percona-8.0.22

- 官方版本
mysql-5.6.29
mysql-5.7.28
mysql-8.0.19

如果線上已經(jīng)使用了上述受影響的版本, 可以采用以下方式處理:

臨時(shí)處理

不方便升級的話, 可以先使用 5.7.30 以下或 5.7.34 及以上版本的 mysql client 命令;

小版本升級

如果方便進(jìn)行小版本升級, 建議升級到以下版本:

5.7.35
8.0.26

總結(jié)

到此這篇關(guān)于MySQL命令無法輸入中文問題的文章就介紹到這了,更多相關(guān)MySQL命令無法輸入中文內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Mysql查看版本號的幾種方式

    Mysql查看版本號的幾種方式

    這篇文章主要介紹了Mysql查看版本號的五種方式介紹,需要的朋友可以參考下
    2013-05-05
  • mysql查詢獲得兩個(gè)時(shí)間的時(shí)間差方式

    mysql查詢獲得兩個(gè)時(shí)間的時(shí)間差方式

    這篇文章主要介紹了mysql查詢獲得兩個(gè)時(shí)間的時(shí)間差方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • MYSQL使用inner join 進(jìn)行 查詢/刪除/修改示例

    MYSQL使用inner join 進(jìn)行 查詢/刪除/修改示例

    本文為大家介紹下使用inner join 進(jìn)行查詢/刪除/修改,具體實(shí)現(xiàn)如下,學(xué)習(xí)mysql的朋也可以學(xué)習(xí)下,希望對大家有所幫助
    2013-07-07
  • MySQL借助DB實(shí)現(xiàn)分布式鎖思路詳解

    MySQL借助DB實(shí)現(xiàn)分布式鎖思路詳解

    這篇文章主要給大家介紹了關(guān)于MySQL借助DB實(shí)現(xiàn)分布式鎖思路的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用MySQL具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • mysql踩坑之limit與sum函數(shù)混合使用問題詳解

    mysql踩坑之limit與sum函數(shù)混合使用問題詳解

    這篇文章主要給大家介紹了關(guān)于mysql踩坑之limit與sum函數(shù)混合使用問題的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用mysql具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • 基于MySQL游標(biāo)的具體使用詳解

    基于MySQL游標(biāo)的具體使用詳解

    本篇文章是對MySQL游標(biāo)的具體使用進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • Mysql注入中的outfile、dumpfile、load_file函數(shù)詳解

    Mysql注入中的outfile、dumpfile、load_file函數(shù)詳解

    這篇文章主要介紹了Mysql注入中的outfile、dumpfile、load_file,需要的朋友可以參考下
    2018-05-05
  • MySQL存儲過程的查看與刪除實(shí)例講解

    MySQL存儲過程的查看與刪除實(shí)例講解

    存儲過程存儲過程在創(chuàng)建之后,被保存在服務(wù)器上以供使用,直至被刪除,下面這篇文章主要給大家介紹了關(guān)于MySQL存儲過程的查看與刪除的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-03-03
  • MySql二進(jìn)制連接方式詳解

    MySql二進(jìn)制連接方式詳解

    這篇文章主要介紹了MySql二進(jìn)制連接方式詳解的相關(guān)資料,需要的朋友可以參考下
    2016-05-05
  • MySQL 十大常用字符串函數(shù)詳解

    MySQL 十大常用字符串函數(shù)詳解

    數(shù)據(jù)庫函數(shù)是一種具有某種功能的模塊,可以接收零個(gè)或多個(gè)輸入值,并且返回一個(gè)輸出值,這篇文章給大家介紹MySQL 十大常用字符串函數(shù),感興趣的朋友跟隨小編一起看看吧
    2021-06-06

最新評論