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

MySQL字符集utf8修改為utf8mb4的方法步驟

 更新時間:2019年07月12日 14:55:31   作者:茅十八  
這篇文章主要給大家介紹了關(guān)于MySQL字符集utf8修改為utf8mb4的方法步驟,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用MySQL具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧

對于mysql 5.5 而言,如果不設(shè)定字符集,mysql默認的字符集是 latin1 拉丁文字符集;

但隨著各種業(yè)務(wù)的進一步發(fā)展,除了各個國家的本身語言字符,經(jīng)常也會有一些表情符號出現(xiàn)在應(yīng)用程序中,而在mysql 5.5 之前,UTF-8編碼只支持1-3個字節(jié),支持BMP這部分的Unicode編碼區(qū);從MySQL 5.5開始,可以支持4個字節(jié)UTF編碼 utf8mb4 ,一個字符能夠支持更多的字符集,也能夠支持更多表情符號。

utf8mb4兼容utf8,且比utf8能表示更多的字符,是utf8字符集的超集。所以現(xiàn)在一些新的業(yè)務(wù),比如ISO等,會將MySQL數(shù)據(jù)庫的字符集設(shè)置為utf8mb4。

今天在處理一個應(yīng)用需求的時候,就遇到這樣一個問題:

當(dāng)然調(diào)整的最好方法是客戶端,mysql數(shù)據(jù)庫的字符集都修改為utf8mb4,但這樣修改量比較大,而且如果客戶端一部分修改為utf8,一部分為utf8mb4的話,容易發(fā)生混亂。

經(jīng)過幾次測試后,MySQL數(shù)據(jù)庫的my.cnf中關(guān)于字符集的配置修改為下面的配置了:

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

使用MySQL字符集時的建議

• 建立數(shù)據(jù)庫/表和進行數(shù)據(jù)庫操作時盡量顯式指出使用的字符集,而不是依賴于MySQL的默認設(shè)置,否則MySQL升級時可能帶來很大困擾;

• 數(shù)據(jù)庫和連接字符集都使用latin1時雖然大部分情況下都可以解決亂碼問題,但缺點是無法以字符為單位來進行SQL操作,一般情況下將數(shù)據(jù)庫和連接字符集都置為utf8是較好的選擇;

• 使用mysql C API時,初始化數(shù)據(jù)庫句柄后馬上用mysql_options設(shè)定MYSQL_SET_CHARSET_NAME屬性為utf8,這樣就不用顯式地用 SET NAMES語句指定連接字符集,且用mysql_ping重連斷開的長連接時也會把連接字符集重置為utf8;

• 對于mysql PHP API,一般頁面級的PHP程序總運行時間較短,在連接到數(shù)據(jù)庫以后顯式用SET NAMES語句設(shè)置一次連接字符集即可;但當(dāng)使用長連接時,請注意保持連接通暢并在斷開重連后用SET NAMES語句顯式重置連接字符集。

全面了解mysql中utf8和utf8mb4的區(qū)別:http://m.fzitv.net/article/90037.htm

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。

相關(guān)文章

  • 解決Mysql建表時報錯invalid?ON?UPDATE?clause?for?'create_date'?column

    解決Mysql建表時報錯invalid?ON?UPDATE?clause?for?'create_d

    這篇文章主要介紹了解決Mysql建表時報錯invalid?ON?UPDATE?clause?for?'create_date'?column問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • Mysql中的單表最大記錄是多少

    Mysql中的單表最大記錄是多少

    這篇文章主要介紹了Mysql中的單表最大記錄是多少問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • SQL替換字符串值的5種常用方法

    SQL替換字符串值的5種常用方法

    這篇文章主要給大家介紹了關(guān)于SQL替換字符串值的5種常用方法,常用SQL的朋友應(yīng)該知道,SQL中一般都會提供一些字符串處理函數(shù),需要的朋友可以參考下
    2023-08-08
  • MySQL與PHP的基礎(chǔ)與應(yīng)用專題之?dāng)?shù)據(jù)查詢

    MySQL與PHP的基礎(chǔ)與應(yīng)用專題之?dāng)?shù)據(jù)查詢

    MySQL是一個關(guān)系型數(shù)據(jù)庫管理系統(tǒng),由瑞典MySQL?AB?公司開發(fā),屬于?Oracle?旗下產(chǎn)品。MySQL?是最流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)之一,本系列將帶你掌握php與mysql的基礎(chǔ)應(yīng)用,本篇從數(shù)據(jù)的查詢開始
    2022-02-02
  • mysql插入帶emoji表情的數(shù)據(jù)報錯問題

    mysql插入帶emoji表情的數(shù)據(jù)報錯問題

    在處理MySQL數(shù)據(jù)庫插入表情時出現(xiàn)錯誤,主要可能是由三個因素引起的:1、數(shù)據(jù)庫版本號是否大于5.5.3;2、數(shù)據(jù)庫表及字段的字符集是否為utf8mb4;3、項目中MySQL驅(qū)動的版本是否大于5.1.13,本文詳細講解了如何針對這三個關(guān)鍵點進行排查和解決
    2024-11-11
  • MySQL存儲引擎基礎(chǔ)知識

    MySQL存儲引擎基礎(chǔ)知識

    本篇文章主要給大家講述了MySQL存儲引擎相關(guān)基礎(chǔ)知識,有助于大家對MySQL存儲引擎有更好的理解,學(xué)習(xí)下吧。
    2017-12-12
  • mysql累積聚合原理與用法實例分析

    mysql累積聚合原理與用法實例分析

    這篇文章主要介紹了mysql累積聚合原理與用法,結(jié)合實例形式分析了mysql累積聚合原理、用法及相關(guān)操作注意事項,需要的朋友可以參考下
    2019-12-12
  • MySQL中的常用樹形結(jié)構(gòu)設(shè)計總結(jié)

    MySQL中的常用樹形結(jié)構(gòu)設(shè)計總結(jié)

    這篇文章主要介紹了MySQL中的常用樹形結(jié)構(gòu)設(shè)計總結(jié),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • 解決Java程序使用MySQL時返回參數(shù)為亂碼的示例教程

    解決Java程序使用MySQL時返回參數(shù)為亂碼的示例教程

    這篇文章主要介紹了解決Java程序使用MySQL返回參數(shù)為亂碼的問題的教程,通過示例來講解utf-8編碼在MySQL中的相關(guān)配置,示例需要的朋友可以參考下
    2015-12-12
  • 淺談mysql增加索引不生效的幾種情況

    淺談mysql增加索引不生效的幾種情況

    增加索引就是增加一個索引文件,但是在使用過程中哪些情況增加索引無法達到預(yù)期的效果呢?感興趣的小伙伴們可以參考一下
    2021-06-06

最新評論

秦皇岛市| 兴和县| 休宁县| 伊金霍洛旗| 枝江市| 盈江县| 梧州市| 鲁甸县| 丽水市| 昆山市| 绿春县| 阿拉善盟| 广灵县| 金华市| 洛川县| 土默特左旗| 宁明县| 朝阳县| 金塔县| 卓资县| 华池县| 余干县| 宁南县| 阿拉善左旗| 佛学| 平原县| 博白县| 沁阳市| 登封市| 兰坪| 且末县| 高尔夫| 峨边| 石家庄市| 扎鲁特旗| 叙永县| 内江市| 霍城县| 新密市| 海林市| 原阳县|