最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySql存儲(chǔ)表情報(bào)錯(cuò)的排查解決

 更新時(shí)間:2022年07月08日 08:26:17   作者:風(fēng)繼續(xù)吹1943  
隨著互聯(lián)網(wǎng)的發(fā)展,產(chǎn)生了許多新類型的字符,例如emoji這種類型的符號(hào),也就是我們通常在聊天時(shí)發(fā)的小黃臉表情,下面這篇文章主要給大家介紹了關(guān)于MySql存儲(chǔ)表情報(bào)錯(cuò)的排查解決,需要的朋友可以參考下

前言 

  • 操作系統(tǒng):linux
  • 數(shù)據(jù)庫(kù)版本: 8.0.27
  • 查看版本命令:mysql -uroot -p 登錄成功后就可以看到

問(wèn)題

個(gè)人博客markdown插入標(biāo)簽后報(bào)以下錯(cuò)誤

報(bào)錯(cuò)信息:Incorrect string value: '\\xF0\\x9F\\x98\\x82' for column 'content' at row 1

在網(wǎng)上查詢得知:在用mysql進(jìn)行表情符號(hào)存儲(chǔ)時(shí),會(huì)報(bào)錯(cuò),這是由于Emoji表情是4個(gè)字節(jié),而mysql的utf-8編碼最多是3個(gè)字節(jié),所以在進(jìn)行表情符號(hào)插入的時(shí)候會(huì)插入不進(jìn)去。那么此時(shí)應(yīng)該通過(guò)修改mysql編碼為utf8mb4來(lái)解決該問(wèn)題。

但是我在sql表創(chuàng)建時(shí)已經(jīng)想到了這一點(diǎn)并且相關(guān)字段也是utf8mb4,為什么還會(huì)報(bào)錯(cuò)

排查解決

通過(guò)多方查詢和嘗試,發(fā)現(xiàn)只要修改mysql配置信息就可以解決問(wèn)題

1.在linux下找到mysql的配置文件my.cnf (window為my.ini),如果找不到可以直接查詢

$ find / -name my.cnf

2.在my.cnf修改編輯

[client]
default-character-set = utf8mb4
[mysql]
default-character-set = utf8mb4
[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'

3.重啟mysql服務(wù)

$ service mysqld restart

mysql變量配置擴(kuò)展

1.character_set_client主要用來(lái)設(shè)置客戶端使用的字符集。

2.character_set_connection主要用來(lái)設(shè)置連接數(shù)據(jù)庫(kù)時(shí)的字符集,如果程序中沒(méi)有指明連接數(shù)據(jù)庫(kù)使用的字符集類型則按照這個(gè)字符集設(shè)置。

3.character_set_database主要用來(lái)設(shè)置默認(rèn)創(chuàng)建數(shù)據(jù)庫(kù)的編碼格式,如果在創(chuàng)建數(shù)據(jù)庫(kù)時(shí)沒(méi)有設(shè)置編碼格式,就按照這個(gè)格式設(shè)置。

4.character_set_filesystem文件系統(tǒng)的編碼格式,把操作系統(tǒng)上的文件名轉(zhuǎn)化成此字符集,即把 character_set_client轉(zhuǎn)換character_set_filesystem, 默認(rèn)binary是不做任何轉(zhuǎn)換的。

5.character_set_results數(shù)據(jù)庫(kù)給客戶端返回時(shí)使用的編碼格式,如果沒(méi)有指明,使用服務(wù)器默認(rèn)的編碼格式。

6.character_set_server服務(wù)器安裝時(shí)指定的默認(rèn)編碼格式,這個(gè)變量建議由系統(tǒng)自己管理,不要人為定義。

7.character_set_system數(shù)據(jù)庫(kù)系統(tǒng)使用的編碼格式,這個(gè)值一直是utf8,不需要設(shè)置,它是為存儲(chǔ)系統(tǒng)元數(shù)據(jù)的編碼格式。

8.character_sets_dir這個(gè)變量是字符集安裝的目錄。

補(bǔ)充

在實(shí)際開(kāi)發(fā)中,我們應(yīng)該提前約定好字符集,而不是后面隨意更改,隨意更改可能會(huì)影響到原有數(shù)據(jù)顯示問(wèn)題;可以更改mysql默認(rèn)配置,將其設(shè)為utf8mb4具體操作如下:

1、修改mysql配置文件(windows:my.ini;linux:my.cnf)

[client]
default-character-set = utf8mb4
[mysql]
default-character-set = utf8mb4
[mysqld]
#character-set-server=utf8 這行注釋掉
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_general_ci
init_connect = 'SET NAMES utf8mb4'

2、重啟mysql

service mysql restart

3、查看是否修改成功

SHOW VARIABLES WHERE Variable_name LIKE 'character%' OR Variable_name LIKE 'collation%';

下圖紅框內(nèi)為utf8mb4信息即為修改成功

總結(jié)

到此這篇關(guān)于MySql存儲(chǔ)表情報(bào)錯(cuò)排查解決的文章就介紹到這了,更多相關(guān)MySql存儲(chǔ)表情報(bào)錯(cuò)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • mysql數(shù)據(jù)庫(kù)密碼忘記解決方法

    mysql數(shù)據(jù)庫(kù)密碼忘記解決方法

    大家好,本篇文章主要講的是mysql數(shù)據(jù)庫(kù)密碼忘記解決方法,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • MySQL中一些鮮為人知的排序方式

    MySQL中一些鮮為人知的排序方式

    這篇文章主要給大家介紹了關(guān)于MySQL中一些鮮為人知的排序方式,文中介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • MySQL 如何查詢當(dāng)前最新事務(wù)ID

    MySQL 如何查詢當(dāng)前最新事務(wù)ID

    這篇文章主要介紹了MySQL 如何查詢當(dāng)前最新事務(wù)ID,幫助大家更好的理解和學(xué)習(xí)MySQL,感興趣的朋友可以了解下
    2020-08-08
  • mysql 5.7.10 winx64安裝配置方法圖文教程(win10)

    mysql 5.7.10 winx64安裝配置方法圖文教程(win10)

    這篇文章主要為大家分享了mysql 5.7.10 winx64安裝配置方法圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-01-01
  • 運(yùn)用mysqldump 工具時(shí)需要注意的問(wèn)題

    運(yùn)用mysqldump 工具時(shí)需要注意的問(wèn)題

    用mysqldump 導(dǎo)出 Trigger 的時(shí)候遇到一個(gè)問(wèn)題,貼出來(lái),以免大家犯錯(cuò)。
    2009-07-07
  • MySQL計(jì)算連續(xù)3天登陸的用戶

    MySQL計(jì)算連續(xù)3天登陸的用戶

    本文主要介紹了MySQL計(jì)算連續(xù)3天登陸的用戶,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05
  • MySQL的左連接、右連接、內(nèi)連接用法解讀

    MySQL的左連接、右連接、內(nèi)連接用法解讀

    這篇文章主要介紹了MySQL的左連接、右連接、內(nèi)連接用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • MySql設(shè)置指定用戶數(shù)據(jù)庫(kù)查看查詢權(quán)限

    MySql設(shè)置指定用戶數(shù)據(jù)庫(kù)查看查詢權(quán)限

    這篇文章主要介紹了MySql設(shè)置指定用戶數(shù)據(jù)庫(kù)查看查詢權(quán)限,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10
  • mysql中如何按分組添加序號(hào)

    mysql中如何按分組添加序號(hào)

    這篇文章主要介紹了mysql中如何按分組添加序號(hào)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • Linux安裝mysql并配置外網(wǎng)訪問(wèn)的實(shí)例

    Linux安裝mysql并配置外網(wǎng)訪問(wèn)的實(shí)例

    今天小編就為大家分享一篇Linux安裝mysql并配置外網(wǎng)訪問(wèn)的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05

最新評(píng)論

九寨沟县| 大渡口区| 仁怀市| 偏关县| 大连市| 榕江县| 新津县| 巨鹿县| 文登市| 日喀则市| 奉节县| 虹口区| 云梦县| 金塔县| 灵宝市| 夏河县| 方山县| 车致| 虹口区| 汶上县| 湖州市| 江永县| 长兴县| 沁水县| 苏尼特左旗| 福海县| 城步| 正宁县| 襄城县| 赤峰市| 广西| 商南县| 吉隆县| 嘉善县| 布尔津县| 玉树县| 济南市| 穆棱市| 绵竹市| 望奎县| 黄冈市|