mysql udf函数怎么调用

网上有关“mysql udf函数怎么调用”话题很是火热,小编也是针对mysql udf函数怎么调用寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。

背景

在上一篇推文中,我们介绍了 MySQL Group Replication 8.0.16 支持信息碎片化功能来增强大型事务处理能力。

如果您想在组复制中使用该功能,则任何组成员的版本都不能低于 8.0.16!

简单地说就是由于低版本协议上不支持。MySQL 8.0.16 的组通讯开始支持新协议,简称“分段协议”,之前的版本中只有一种“压缩协议”。

如果多个成员想加入复制组,那么在协议匹配上遵循以下原则:

现有复制组成员和新加入成员版本相同,加入成功。

低版本成员想加入高版本的组会被驱逐,加入失败。

高版本的成员想加入低版本的组,单独加入成功,多个加入失败。

例如:

一个 MySQL Server 8.0.16 实例可以成功加入使用通信协议版本 5.7.24 的组。

一个 MySQL Server 5.7.24 实例无法成功加入使用通信协议版本 8.0.16 的组。

两个 MySQL Server 8.0.16 实例无法同时加入使用通信协议版本 5.7.24 的组。

两个 MySQL Server 8.0.16 实例可以同时加入使用通信协议版本 8.0.16 的组。

新增 UDF

为了能让高版本的复制组更便于加入低版本的成员,MySQL 8.0.16 新增两个 UDF。

您可以使用两个新的 UDF 命令去管理组通信协议:

1. group_replication_set_communication_protocol(new_protocol)

设置组复制通讯协议版本

SELECT group_replication_set_communication_protocol("8.0.15");

填入一个所有成员都支持的版本号,即:new_protocol ≤ 所有成员的 MySQL版本。

new_protocol 格式:major.minor.patch (主版本号.次版本号.发布版本号)例如:8.0.15。

2. group_replication_get_communication_protocol()

获取复制中最旧成员的 MySQL 版本号

SELECT group_replication_get_communication_protocol(); +------------------------------------------------+ | group_replication_get_communication_protocol() | +------------------------------------------------+ | 5.7.14 | +------------------------------------------------+

获取的版本号可能与设置的值不一致,但不一致的版本之间组复制协议是一样的。

返回结果格式:major.minor.patch (主版本号.次版本号.发布版本号)例如:8.0.15。

以上两个 UDF 对全部组成员有效,主机或从机上均可执行。

结论

若想使用信息碎片功能。建议将组复制成员全部升级为 8.0.16。

若组内成员版本仅有部分为 8.0.16,可以用两个新的函数来让高版本的成员保持与其它成员组协议一致。

请点击输入描述

CREATE?FUNCTION?`fristPinyin`(P_NAME?VARCHAR(255))?RETURNS?varchar(255)?CHARSET?utf8

BEGIN

DECLARE?V_RETURN?VARCHAR(255);

SET?V_RETURN?=?ELT(INTERVAL(CONV(HEX(left(CONVERT(P_NAME?USING?gbk),1)),16,10),?

0xB0A1,0xB0C5,0xB2C1,0xB4EE,0xB6EA,0xB7A2,0xB8C1,0xB9FE,0xBBF7,?

0xBFA6,0xC0AC,0xC2E8,0xC4C3,0xC5B6,0xC5BE,0xC6DA,0xC8BB,

0xC8F6,0xCBFA,0xCDDA,0xCEF4,0xD1B9,0xD4D1),

'A','B','C','D','E','F','G','H','J','K','L','M','N','O','P','Q','R','S','T','W','X','Y','Z');

RETURN?V_RETURN;

END

pinyin?:此函数是将一个中文字符串对应拼音母的每个相连?(例如:"中国人"->ZGR)

复制代码?代码如下:

CREATE?FUNCTION?`pinyin`(P_NAME?VARCHAR(255))?RETURNS?varchar(255)?CHARSET?utf8

BEGIN

DECLARE?V_COMPARE?VARCHAR(255);

DECLARE?V_RETURN?VARCHAR(255);

DECLARE?I?INT;

SET?I?=?1;

SET?V_RETURN?=?'';

while?I?<?LENGTH(P_NAME)?do

SET?V_COMPARE?=?SUBSTR(P_NAME,?I,?1);

IF?(V_COMPARE?!=?'')?THEN

#SET?V_RETURN?=?CONCAT(V_RETURN,?',',?V_COMPARE);

SET?V_RETURN?=?CONCAT(V_RETURN,?fristPinyin(V_COMPARE));

#SET?V_RETURN?=?fristPinyin(V_COMPARE);

END?IF;

SET?I?=?I?+?1;

end?while;

IF?(ISNULL(V_RETURN)?or?V_RETURN?=?'')?THEN

SET?V_RETURN?=?P_NAME;

END?IF;

RETURN?V_RETURN;

END

示例:

复制代码?代码如下:

mysql>?select?p.province,?fristPinyin(p.province),?pinyin(p.province)?from?province?p;

+------------------+-------------------------+--------------------+

|?province?|?fristPinyin(p.province)?|?pinyin(p.province)?|

+------------------+-------------------------+--------------------+

|?北京市|?B|?BJS|

|?天津市|?T|?TJS|

|?河北省|?H|?HBS|

|?山西省|?S|?SXS|

|?内蒙古自治区?|?N|?NMGZZQ?|

+------------------+-------------------------+--------------------+

5?rows?in?set

关于“mysql udf函数怎么调用”这个话题的介绍,今天小编就给大家分享完了,如果对你有所帮助请保持对本站的关注!

本文来自作者[东郭光正]投稿,不代表臻昂号立场,如若转载,请注明出处:https://anzhentang.com/angzhen/395.html

(10)

文章推荐

  • 美白补水护肤品哪个好

    美白补水护肤品哪个好很多人为了美白皮肤,都尝试过各种各样的美白护肤品,就算是使用贵的美白护肤品,但效果也不怎么明显。其实护肤品不在于贵,而在于适合自己的才是最好的,下面给大家介绍几款美白补水护肤品!1、兰蔻精准臻白精华乳这款护肤品质地滋润,保湿度很好,吸收度也不错,其pH值层弱酸性,相当温和,即使是

    2025年09月13日
    0
  • 雅漾粉底液好用吗?

    很多人对雅漾这个品牌是比较熟悉的,雅漾的护肤产品是专门针对敏感肌肤的,很多人都在用雅漾的护肤产品,它们家其实除了护肤产品以外,也有很多化妆品也是很受欢迎的,比如说雅漾粉底液,那雅漾粉底液好用吗?雅漾粉底液怎么样?1、雅漾粉底液好用吗外观质地:白色的牙膏管状设计能密封粉底液,尖头的挤压式出口可调控使用

    2025年09月13日
    0
  • 脸上外油内干怎么办 外油内干的皮肤这样护理

    我们每个人的肤质都是不一样的,现在越来越多人都开始正视自己的皮肤,我们在使用护肤品的时候都要挑选适合自己肤质的护肤产品,那么脸上外油内干怎么办?外油内干的皮肤这样护理。脸上外油内干怎么办脸上出现外油内干的状况时,很多美眉都开始盲目控油,得到的结果往往不如人意,接下来就和大家来看看脸上外油内干

    2025年09月13日
    1
  • 资生堂131粉底刷怎么用?

    资生堂家最好用的一款粉刷——资生堂131粉底刷,斜面的设计超级贴合肌肤,是由专业化妆师监修,美肌专家研究、开发并制作的刷子。下面为大家介绍资生堂131粉底刷用法资生堂131粉底刷怎么用推荐理由它结合了粉刷与海绵粉扑的优点,毛质、密度和长度均达到极致平衡。①毛质:天然羊毛材质与人工制造的直毛混

    2025年09月13日
    0
  • 英文品牌名

    英文品牌名Head&Shoul2ders(海飞丝)Pantene(潘婷)Safeguard(舒肤佳)Olay(玉兰油)Mcdonald’s麦当劳Kodak柯达Audi奥迪Coca-cola可口可乐Mcick味可美

    2025年09月13日
    1
  • 芙海妮冻膜怎么样好用吗

    好用。1、适合面部:芙海妮冻膜适用于面部肌肤,可以提供深层的补水保湿效果。面部肌肤容易受到环境因素、日常护理不足等影响,导致肌肤干燥、缺水。使用芙海妮冻膜可以补充肌肤所需的水分,增强肌肤的保湿能力,使肌肤更加柔软、光滑。2、适合干燥部位:除了面部,芙海妮冻膜也适用于干燥的部位,如手部、脖子等。这些部

    2025年09月13日
    1
  • 计算机病毒的六大特征是什么-

    网上有关“计算机病毒的六大特征是什么?”话题很是火热,小编也是针对计算机病毒的六大特征是什么?寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。计算机病毒的六大特征是:1、繁殖性:计算机病毒可以像生物病毒一样进行繁殖,当正常程序运行时,它也进行运行自身复制,是否

    2025年09月13日
    1
  • 哪个牌子沐浴露好用

    本人系美容师,深知洗澡不只是一个清洁的过程,也是一个放松的时刻,一瓶好的沐浴露不仅能够让我们干干干净净的,还能够让我们更加放松心情更加愉悦,沐浴露选对,更是能让我们在洗澡的时候幸福加倍!下面推荐5款亲测好用的沐浴露:1、TTouchMe沐浴露这款沐浴露是一款香水沐浴露,包装极简风,金属质感的泵头简约

    2025年09月13日
    1
  • 夏天用什么样的美容方法美白效果好?

    美白小秘方美丽大收集1、牛奶美白:准备一小杯鲜奶,(夏天的时候,也可以把鲜奶到放到冰箱里,敷上凉凉的,会更舒服)。用蒸气蒸脸,将化妆棉吸满鲜奶,敷在脸上十五分钟左右,取下,用清水将脸上的牛奶洗净。长期坚持,可以使肤色白净均匀。2、准备三指宽二指长的面带斑点的芦荟叶去刺洗干净,然后是一块三厘米长

    2025年09月13日
    1
  • 地下珠中草药是什么形状

    网上有关“地下珠中草药是什么形状”话题很是火热,小编也是针对地下珠中草药是什么形状寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。拼音名DìXiàMínɡZhū别名落地珍珠、铁秤锤、土地子、一粒金丹、陈伤子、铁钮子、山砒霜、泥里珠、寸金黄、一滴金丹、地

    2025年09月13日
    1

发表回复

本站作者后才能评论

评论列表(4条)

  • 东郭光正
    东郭光正 2025年09月06日

    我是臻昂号的签约作者“东郭光正”!

  • 东郭光正
    东郭光正 2025年09月06日

    希望本篇文章《mysql udf函数怎么调用》能对你有所帮助!

  • 东郭光正
    东郭光正 2025年09月06日

    本站[臻昂号]内容主要涵盖:生活百科,小常识,生活小窍门,知识分享

  • 东郭光正
    东郭光正 2025年09月06日

    本文概览:网上有关“mysql udf函数怎么调用”话题很是火热,小编也是针对mysql udf函数怎么调用寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够...

    联系我们

    邮件:臻昂号@sina.com

    工作时间:周一至周五,9:30-18:30,节假日休息

    关注我们