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

MySQL 加密/壓縮函數(shù)

 更新時間:2009年12月18日 23:38:51   作者:  
在MySQL中,加密和壓縮函數(shù)返回二進(jìn)制串。對其中的許多函數(shù)而言,結(jié)果可能包含任意的字節(jié)值,如果想存儲這些結(jié)果,你應(yīng)該使用一個具有varbinary或者blob二進(jìn)制串?dāng)?shù)據(jù)類型的列,這可避免潛在的刪除尾部空白問題或者字符集轉(zhuǎn)換問題。

這些問題可能導(dǎo)致數(shù)據(jù)值的改變。一般而言,上述問題可能在你使用非二進(jìn)制串?dāng)?shù)據(jù)類型(如char,varchar,text等數(shù)據(jù)類型)的情況下發(fā)生。

  • AES_ENCRYPT()和AES_DECRYPT()

AES_ENCRYPT()和AES_DECRYPT()可以加密/解密使用官方AES算法的數(shù)據(jù)。該算法使用128位密鑰來編碼,但用戶可以將其擴(kuò)展到256位。MySQL選用128位密鑰,因為這樣算法實現(xiàn)更快,而且對大多數(shù)用戶而言它也足夠安全了。


AES_ENCRYPT(str,key_str)函數(shù)加密一個字符串并返回一個二進(jìn)制串。AES_DECRYPT(crypt_str, key_str) 函數(shù)可以解密使用官方AES(Advanced Encryption Standard)算法加密的數(shù)據(jù)并返回原有字符串,輸入變量可以是任意長度。如果輸入變量為NULL,那么該函數(shù)返回結(jié)果也為NULL。


因為AES是一個塊級算法,需要使用補(bǔ)白來編碼非偶數(shù)長度的字符串。

  • ENCODE()和DECODE()

ENCODE(str, pass_str):該函數(shù)使用pass_str作為密碼來加密字符串str,其加密的結(jié)果可以通過DECODE()函數(shù)來解密。該函數(shù)返回的結(jié)果是一個同str等長。 DECODE(crypt_str, pass_str):該函數(shù)使用pass_str作為密碼來解密使用ENCODE()加密后的字符串crypt_str。

  • DES_ENCRYPT()和DES_ENCRYPT()

DES_ENCRYPT(str[, {key_num|key_str}]):該函數(shù)使用三重DES算法連同給定的密鑰來加密加密字符串。
DES_DECRYPT(crypt_str[, key_str]):該函數(shù)解密一個通過DES_ENCRYPT()加密的字符串,如果出現(xiàn)錯誤,該函數(shù)返回NULL。

  • COMPRESS()和UNCOMPRESS()

COMPRESS(string_to_compress):該函數(shù)壓縮一個字符串并且返回一個二進(jìn)制串。該函數(shù)需要MySQL已連同一個壓縮庫一塊編譯,比如zlib,否則該函數(shù)的返回值總為NULL。壓縮后的字符串可以通過 UNCOMPRESS()函數(shù)來解壓縮。UNCOMPRESS(string_to_uncompress):該函數(shù)解壓縮一個通過COMPRESS() 函數(shù)壓縮的字符串。如果變量不是一個壓縮值,則結(jié)果返回為NULL。

  • PASSWORD()

PASSWORD(str):該函數(shù)用來加密存儲在user表中 password列的MySQL密碼。PASSWORD()函數(shù)由MySQL服務(wù)器中的認(rèn)證系統(tǒng)使用,用戶不應(yīng)該在自己的應(yīng)用中使用該函數(shù)。如果需要使用加密函數(shù),可以考慮使用MD5()或者SHA1()來代替。

其加密結(jié)果示例如下:


在MySQL的系統(tǒng)數(shù)據(jù)庫mysql的user表中,有一個名為Password的列,其中保存由password函數(shù)加密后的user的密碼數(shù)據(jù)。如下所示:


  • ENCRYPT()

ENCRYPT(str[, salt]):該函數(shù)通過使用Unix crypt()系統(tǒng)調(diào)用來加密str,并返回一個二進(jìn)制串。其中,salt變量應(yīng)該是一個包含多于兩個字符的字符串。如果salt沒有給定,則使用一個隨機(jī)值。如果crypt()系統(tǒng)調(diào)用在用戶的操作系統(tǒng)上不可用(Windows操作系統(tǒng)便如此),該函數(shù)返回為NULL。

  • MD5()

MD5(str):該函數(shù)計算一個字符串的128位MD5校驗和,返回的結(jié)果是由32個十六進(jìn)制數(shù)字組成的二進(jìn)制串。如果變量為NULL,則返回為NULL。

其加密結(jié)果示例如下:

  • SHA1()/SHA():

SHA1(str)/SHA(str)函數(shù)計算字符串str的160位SHA-1校驗和。返回值是一個由40個十六進(jìn)制數(shù)字組成的二進(jìn)制串。如果變量為NULL,則返回NULL。

其加密結(jié)果示例如下:

相關(guān)文章

  • 解析MySQL索引的作用

    解析MySQL索引的作用

    這篇文章主要為大家詳細(xì)介紹了MySQL索引的作用,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • mysql通過文檔讀取并執(zhí)行命令之快速為mysql添加多用戶和數(shù)據(jù)庫技巧

    mysql通過文檔讀取并執(zhí)行命令之快速為mysql添加多用戶和數(shù)據(jù)庫技巧

    這篇文章主要介紹了mysql通過文檔讀取并執(zhí)行命令之快速為mysql添加多用戶和數(shù)據(jù)庫技巧的相關(guān)資料,需要的朋友可以參考下
    2015-09-09
  • 如何解決MySQL?this?is?incompatible?with?sql_mode=only_full_group_by問題

    如何解決MySQL?this?is?incompatible?with?sql_mode=only_full_

    MySQL的ONLY_FULL_GROUP_BY模式要求在使用GROUP?BY時,SELECT語句中引用的所有列必須在GROUP?BY子句中明確指定,或者是聚合函數(shù)的一部分,本文提供了修改SQL語句、使用聚合函數(shù)、禁用ONLY_FULL_GROUP_BY等解決方法,并強(qiáng)調(diào)了在禁用該模式時應(yīng)評估其影響
    2024-11-11
  • 總結(jié)MySQL修改最大連接數(shù)的兩個方式

    總結(jié)MySQL修改最大連接數(shù)的兩個方式

    最大連接數(shù)是可以通過mysql進(jìn)行修改的,mysql數(shù)據(jù)庫修改最大連接數(shù)常用有兩種方法,今天我們分析一下這兩種方法之間的特點和區(qū)別,以便我們能更好的去維護(hù)mysql。下面我們來看一下mysql修改最大連接數(shù)的方法,希望文章能夠幫助到各位朋友。
    2016-08-08
  • MySQL 8.0.19安裝詳細(xì)教程(windows 64位)

    MySQL 8.0.19安裝詳細(xì)教程(windows 64位)

    這篇文章主要介紹了MySQL 8.0.19安裝詳細(xì)教程(windows 64位),本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-10-10
  • MySQL讀寫分離原理詳細(xì)解析

    MySQL讀寫分離原理詳細(xì)解析

    這篇文章主要介紹了MySQL讀寫分離原理詳細(xì)解析,讀寫分離是基于主從復(fù)制來實現(xiàn)的,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-07-07
  • mysql數(shù)據(jù)表規(guī)模九千萬條記錄?如何優(yōu)化查詢?

    mysql數(shù)據(jù)表規(guī)模九千萬條記錄?如何優(yōu)化查詢?

    這里的優(yōu)化維度有四個:硬件配置、參數(shù)配置、表結(jié)構(gòu)設(shè)計和SQL語句及索引,需要的朋友可以參考下
    2023-12-12
  • MySQL查詢緩存的小知識

    MySQL查詢緩存的小知識

    這篇文章主要介紹了MySQL查詢緩存的的相關(guān)資料,幫助大家更好的理解和使用MySQL數(shù)據(jù)庫,感興趣的朋友可以了解下
    2020-12-12
  • mysql中刪除數(shù)據(jù)的四種方法小結(jié)

    mysql中刪除數(shù)據(jù)的四種方法小結(jié)

    在MySQL數(shù)據(jù)庫中,刪除數(shù)據(jù)是一個常見的操作,它允許從表中移除不再需要的數(shù)據(jù),本文就來介紹一下四種方法,具有一定的參考價值,感興趣的可以了解一下
    2023-10-10
  • MySQL使用mysqldump實現(xiàn)數(shù)據(jù)完全備份

    MySQL使用mysqldump實現(xiàn)數(shù)據(jù)完全備份

    mysqldump是MySQL自帶的備份工具,可方便實現(xiàn)對MySQL的備份,也可以將指定的庫、表導(dǎo)出為SQL腳本,下面小編就來教大家如何使用mysqldump實現(xiàn)數(shù)據(jù)完全備份吧
    2023-07-07

最新評論

丹阳市| 临安市| 台前县| 武隆县| 陆川县| 西青区| 明水县| 运城市| 安远县| 桃江县| 犍为县| 贵港市| 隆回县| 民权县| 乐平市| 清徐县| 化隆| 白玉县| 宜宾县| 青岛市| 沾益县| 瓮安县| 揭东县| 富锦市| 阜平县| 翁源县| 延长县| 宜春市| 宜兰县| 阜南县| 福鼎市| 静宁县| 唐河县| 尖扎县| 陈巴尔虎旗| 贵溪市| 汶上县| 花垣县| 河西区| 兴安盟| 略阳县|