MySQL 8.0中新增的功能(十)

XA语句的复制过滤

以前,在使用--replicate-do-db或--replicate-ignore-db时,无论binlog_format的值如何,XA START、XA END、XA COMMIT和XA ROLLBACK语句都会由默认数据库进行过滤,这可能会导致事务被忽略。从MySQL 8.0.31开始,在这种情况下不再对这些语句进行过滤。

复制过滤和权限检查

从MySQL 8.0.31开始,在使用复制过滤时,副本不再因为权限检查或对被过滤事件进行require_row_format验证而引发复制错误,这使得可以过滤掉任何未通过验证的事务。

由于对被过滤行进行的权限检查不再会导致复制停止,因此副本现在可以仅接受特定用户被授权访问的数据库部分;只要对数据库的这部分更新仅以行级格式进行复制,这一点是成立的。

当从使用表进行管理或其他用途的本地部署或云服务迁移到MySQL Database Service时,这种功能也可能非常有用,因为传入的复制用户无法访问这些表。

INTERSECT和EXCEPT是表操作符

MySQL 8.0.31增加了对SQL的INTERSECT和EXCEPT表操作符的支持。其中a和b代表查询的结果集,这些操作符的行为如下:
- a INTERSECT b 只包括同时出现在结果集a和b中的行。
- a EXCEPT b 返回仅在结果集a中出现但不在b中出现的行。

INTERSECT DISTINCT、INTERSECT ALL、EXCEPT DISTINCT和EXCEPT ALL都得到支持;DISTINCT是INTERSECT和EXCEPT的默认选项(与UNION相同)。

用户定义的直方图

从MySQL 8.0.31开始,可以将列的直方图设置为用户指定的JSON值。可以使用以下SQL语法来实现:

ANALYZE TABLE tbl_nameUPDATE HISTOGRAM ON col_nameUSING DATA 'json_data'

该语句使用直方图的JSON表示形式json_data为表tbl_name的列col_name创建或覆盖直方图。执行该语句后,可以通过查询Information Schema COLUMN_STATISTICS表来验证直方图是否已创建或更新,例如:

SELECT HISTOGRAM FROM INFORMATION_SCHEMA.COLUMN_STATISTICSWHERE TABLE_NAME='tbl_name' AND COLUMN_NAME='col_name';

返回的列值应该是之前ANALYZE TABLE语句中使用的相同的json_data。

在直方图采样过程中,如果错过了被认为是重要的值,这时候可以使用用户定义的直方图。当出现这种情况时,您可能希望修改直方图或基于完整数据集设置自己的直方图。另外,从大型用户数据集进行采样并构建直方图是资源密集型操作,可能会影响用户查询。有了这个增强功能,直方图生成可以移至(主)服务器之外的副本进行,并且可以将生成的直方图分配给源服务器上的适当表列。

服务器构建标识符(Linux)

MySQL 8.0.31为Linux系统添加了只读的build_id系统变量,在编译时生成一个160位的SHA1签名;build_id的值是将生成的值转换为十六进制字符串后的结果,为构建提供了唯一标识符。每次MySQL启动时,build_id都会写入服务器日志。如果您从源代码构建MySQL,您会注意到此值在每次重新编译服务器时都会发生变化。

该变量仅在Linux平台上受支持,其他平台不支持该变量。

默认的EXPLAIN输出格式

MySQL 8.0.32 添加了一个名为explain_format的系统变量,该变量决定在没有指定任何FORMAT选项的情况下,用于获取查询执行计划的EXPLAIN语句的输出格式。例如,如果explain_format的值为TREE,则使用任何这样的EXPLAIN语句的输出将使用树形格式,就像语句指定了FORMAT=TREE一样。

这个行为可以被FORMAT选项中设置的值所覆盖。假设explain_format被设置为TREE,即使如此,EXPLAIN FORMAT=JSON stmt仍然会使用JSON输出格式显示结果。

ST_TRANSFORM()函数中添加了笛卡尔空间参考系统(SRS)的支持

在MySQL 8.0.30之前,ST_TRANSFORM()函数不支持笛卡尔空间参考系统(SRS)。在MySQL 8.0.30及更高版本中,该函数提供了对Popular Visualisation Pseudo Mercator(EPSG 1024)投影方法的支持,用于WGS 84 Pseudo-Mercator(SRID 3857)。MySQL 8.0.32及更高版本支持所有笛卡尔SRS,但不支持EPSG 1042、EPSG 1043、EPSG 9816和EPSG 9826。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/614323.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【PyQt5设计】:自动点击神器 - 解决重复性的点击和输入操作

文章目录 自动点击神器介绍测试窗口介绍自动点击神器的使用教程资源领取注意事项 自动点击神器介绍 本次使用PyQt5设计的【自动点击神器】旨在解决重复性的点击工作,解放双手,具有及时性和准确性,可选择坐标位置或图片两种方式实现鼠标的定位…

CMake入门教程【高级篇】编译器优化级别

文章目录 1. 什么是编译器优化级别?2. 如何在CMake中设置编译器优化级别?3. 如何跨平台设置编译器优化级别?4. 如何根据构建类型设置编译器优化级别?结论1. 什么是编译器优化级别? 编译器优化级别是编译器在编译代码时,对代码进行优化的程度。优化级别可以影响代码的执行…

uniapp如何分包加载

在uni-app中,可以通过配置manifest.json文件来实现分包加载。以下是具体操作步骤: 在项目根目录下找到并打开manifest.json文件。在"uni-app"节点中,找到并修改"subPackages"节点,添加需要分包的页面路径。 …

Python(35):Python3 通过https上传文件和下载文件

Python(35):Python3 通过https上传文件和下载文件 Python http方式的下载,参考:https://blog.csdn.net/fen_fen/article/details/113753983 https需要先安装需要的模块 1、上传示例 1.1、调用: upload_strategy(access_token,"123456789") 1.2、上传代码 g…

横版动作闯关游戏:幽灵之歌 GHOST SONG 中文版

在洛里安荒凉的卫星上,一件长期休眠的死亡服从沉睡中醒来。踏上发现自我、古老谜团和宇宙骇物的氛围2D冒险之旅。探索蜿蜒的洞穴,获得新的能力来揭开这个外星世界埋藏已久的秘密。 游戏特点 发现地下之物 探索这个广阔而美丽如画,充满密室和诡…

一个常用的项目架构图

给大家分享一个常用的架构图,需要使用的可以免费那走: 用户通过公网IP或者域名访问,穿过防火墙后,映射到nginx组件,在反向代理到各个模块;资源放在Nas盘,数据放在各个中间件;各个模块…

Android基于Matrix绘制PaintDrawable设置BitmapShader,以手指触点为中心显示原图像圆图,Kotlin

Android基于Matrix绘制PaintDrawable设置BitmapShader,以手指触点为中心显示原图像圆图,Kotlin 手指在上面的图上移动,“剪切”出上面图中以手指触点为中心的图(半径图),然后在下面的ImageView显示。 impor…

中国大学生计算机设计大赛—人工智能实践赛赛道—赛后感想

1.比赛介绍 中国大学生计算机设计大赛是我国高校面向本科生最早的赛事之一,是全国普通高校大学生竞赛排行榜榜单赛事之一。自2008年开赛至2019年,一直由教育部高校与计算机相关教指委等或独立或联合主办。大赛的目的是以赛促学、以赛促教、以赛促创&…

【技能拾遗】——如何寻找/制作电子书

📖 前言:无纸化学习已经越来越流行了,尤其是这几年大家上网课,把厚厚的课本和笔记装进pad里面,其便利性想必大家都深有感受。但是还有不少同学不知道该如何去找正规教材的PDF版本,下面就以我这两年的无纸化…

RTL编码(1)——概述

一、RTL级描述 RTL(Register Transfer Level)级:寄存器+组合逻辑,其功能与时序用Verilog HDL(以下简称Verilog)或VHDL代码描述。 RTL描述包含了同步数字电路最重要的三个特征:组合逻…

SQLServer 系统概述

目录 1.SQL语言的发展和特点 2.SQL语言的特点 1.SQL语言的发展和特点 SQL是利用一些简单的语句构成的基本语法,来存储数据库的内容。目前已经成为关系型数据库系统中使用最广泛的语言。 1974年SQL语言由Boyce和Chamberlin提出来。 1975~1979年研制了著名的关系数…

外贸自建站新手教程指南?海洋建站的技巧?

外贸自建站怎么做比较好?搭建外贸网站的参数有哪些? 外贸自建站成为许多企业迈向国际市场的重要一步。随着全球经济的不断发展,搭建一个专业而有效的外贸自建站对企业而言至关重要。海洋建站将为您提供一份详尽的新手教程指南,帮…

通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作

首先 你需要安装Studio 3T 以及启动 Mongodb服务 具体可以参考我的文章 Studio 3T客户端连接Mongodb数据库服务 我们之前 通过 use 数据库名随便输切换是可以的 但除了这里能看到的 它们都仅存在于内存 我们右键顶部菜单 选择 添加数据库/创建数据库 这里 我们输入数据库名称…

HarmonyOS自定义组件生命周期函数介绍

aboutToAppear 在创建自定义组件的新实例后,在执行其build()函数之前执行。允许在aboutToAppear函数中改变状态变量,更改将在后续执行build()函数中生效。 aboutToDisappear 在自定义组件析构销毁之前执行。不允许在aboutToDisappear函数中改变状态变…

【Leetcode】253.会议室II

一、题目 1、题目描述 给你一个会议时间安排的数组intervals,每个会议时间都包括开始和结束时间 intervals[i] = [starti,endi],为避免会议冲突,同时要考虑充分利用会议室资源,请你计算至少需要多少间会议室,才能满足这些会议安排。 示例1: 输入:intervals = [[0,3…

rust中Atomic Ordering含义总结

Relaxed 最基础的内存排序要求,只要求当前原子操作是要么完全执行,要么还未执行,其操作结果的可见性同步在其他线程没有任何顺序的保证Acquire 适用于读取数据操作,要求: 当前线程不能有其他的读或写被 reorder 在 loa…

java基础day04 -- 命令行运行java文件

package com.exmaple;/*** 命令行参数*/ public class ArgsOfMain {public static void main(String[] args) {//增强for循环for(String arg : args){System.out.println(arg);}} }当我打开idea终端运行javac命令完成后(需要配置java环境变量,注意idea使…

安德尔房产数据分析

安德尔房产数据分析 安德尔房产数据分析介绍挑战概要数据集添加地理数据数据清理数据分析与解释结论困难与解决方案 安德尔房产数据分析 介绍 在这个挑战中,使用了 pandas 和数据可视化库(Matplotlib、Seaborn)来对数据集进行分析&#xff…

Django 简介 应用场景 优势 不足

简介 Django 是一个开放源代码的 Web 应用框架,使用 Python 编程语言编写。它遵循了 “MTV”(模型-模板-视图)的设计模式,旨在帮助开发者快速构建高质量、易维护的 Web 应用程序。 应用场景 Web 应用开发:Django 适…

231.【2023年华为OD机试真题(C卷)】小明找位置(二分查找-JavaPythonC++JS实现)

🚀点击这里可直接跳转到本专栏,可查阅顶置最新的华为OD机试宝典~ 本专栏所有题目均包含优质解题思路,高质量解题代码(Java&Python&C++&JS分别实现),详细代码讲解,助你深入学习,深度掌握! 文章目录 一. 题目-小明找位置二.解题思路三.题解代码Python题解代…