MySQL mydumper工具

目录

1. mydumper介绍

2. mydumper参数解释

3. 备份例子

3.1 备份全库(未包含其他)

3.2 备份全库(包含其他)

3.3 备份指定数据库(-B或--database)

3.4 导出指定表(-T或--tables-list)

3.5 只导出表结构,不导出表数据(-d或--no-data)

3.6 只导出表数据,不导出表结构(-m或者--no-schemas)

3.7 压缩备份(-c或--compress)

3.8 综合备份

3.9 使用正则表达式

4. 备份文件命名

5. 备份原理

6. myloader参数

7. 恢复例子

7.1 恢复指定库

7.2 将源库的zs库导入备库的zs01库

7.3 导入特定的表


1. mydumper介绍

MyDumper是一个MySQL逻辑备份工具。它有2个工具:

  • mydumper负责导出 MySQL 数据库的一致备份
  • myloader从 mydumper 读取备份,连接到目标数据库并导入备份。

这两个工具都使用多线程功能。

mydumper 主要有以下几点特性:

  • 支持多线程导出数据,速度更快。
  • 支持一致性备份。
  • 支持将导出文件压缩,节约空间。
  • 支持多线程恢复。
  • 支持以守护进程模式工作,定时快照和连续二进制日志。
  • 支持按照指定大小将备份文件切割。
  • 数据与建表语句分离。

下载工具

https://github.com/mydumper/mydumper

我下载的是zip包,上传至虚拟机,解压

unzip mydumper-master.zip

安装依赖包(CentOS)

#Install development tools
yum install -y cmake gcc gcc-c++ git make#Install development versions of GLib, ZLib, PCRE and ZSTD
yum install -y glib2-devel openssl-devel pcre-devel zlib-devel libzstd-devel

添加环境变量(mysql客户端库文件)

export LD_LIBRARY_PATH=/usr/local/mysql/lib

安装mydumper

cd /soft/mydumper-master
cmake .
make
sudo make install

安装完成后生成两个二进制文件mydumper和myloader位于/usr/local/bin目录下

2. mydumper参数解释

mydumper --help
参数简写描述
连接选项
--host-h连接的MySQL数据库服务器
--user-u连接数据库的用户
--password-p连接数据库用户的密码
--ask-password-a提示输入用户的密码
--port-PMySQL数据库端口
--socket-S用于连接的 UNIX 域套接字文件
--protocol用于连接的协议(tcp、socket)
--compress-protocol-C对 MySQL 连接使用压缩
--ssl使用 SSL 连接
--ssl-mode连接到服务器所需的安全状态:DISABLED、PREFERRED、REQUIRED、VERIFY_CA、VERIFY_IDENTITY
--key密钥文件的路径名
--cert证书文件的路径名
--ca证书颁发机构文件的路径名
--capath包含 PEM 格式的受信任 SSL CA 证书的目录的路径名
--cipher用于 SSL 加密的允许密码列表
--tls-version服务器允许哪些协议进行加密连接
过滤选项
--regex-X'db.table' 匹配的正则表达式
--database-B需要备份的数据库
--ignore-engines-i要忽略的存储引擎的列表 ,逗号分隔
--updated-since-U使用 Update_time 仅转储最近 U 天内更新的表
--partition-regex按分区名称过滤的正则表达式
--omit-from-file-O包含要跳过的数据库.表条目列表的文件,每行一个(在应用正则表达式选项之前跳过)
--tables-list-T要备份的表列表,以逗号分隔(不排除正则表达式选项)。 表名必须包含数据库名。 例如:test.t1,test.t2
锁选项
--tidb-snapshot-z使用 TiDB 快照
--no-locks-k不执行临时共享读锁 ,警告:这将会导致非一致性备份
--use-savepoints使用 savepoints 来减少元数据锁的产生,需要 SUPER 权限
--no-backup-locks不使用 Percona 的 backup locks (备份锁)
--lock-all-tables对所有的表 LOCK TABLE,而不是使用FTWRL
--less-locking对于 InnoDB 存储引擎的表最少的锁时间
--trx-consistency-only事务一致性
--skip-ddl-locks跳过DDL锁
PMM选项
--pmm-path默认值为 /usr/local/percona/pmm2/collectors/textfile-collector/high-resolution
--pmm-resolution默认值较高
执行选项
--exec-threads与 --exec 一起使用的线程数量
--exec使用文件作为参数来执行命令
--exec-per-thread设置将由 STDIN 接收并将 STDOUT 写入输出文件的命令
--exec-per-thread-extension使用 --exec-per-thread 时设置 STDOUT 文件的扩展名
长查询选项
--long-query-retries重新检测长查询 ,默认0(不检测)
--long-query-retry-interval长查询检测的间隔时间 ,默认60秒
--long-query-guard-l设置长查询的时间阈值 ,默认60秒
--kill-long-queries-kkill 长查询(替代aborting)
Job选项
--max-threads-per-table每张表的最大线程数
--char-deep定义当主键是字符串时要使用的字符数
--char-chunk定义应将表拆分为多少部分。 默认情况下我们使用线程数量
--rows-r将表拆分为这么多行的块。 它可以是 MIN:START_AT:MAX。 MAX 可以为 0,表示没有限制。 如果查询时间少于 1 秒,则块大小将加倍;如果查询时间超过 2 秒,则块大小减半
--split-partitions将分区转储到单独的文件中。 此选项会覆盖分区表的 --rows 选项
校验选项
--checksum-all-M转储所有对象的校验和
--data-checksums转储表与数据的校验和
--schema-checksums转储模式表和视图创建校验和
--routine-checksums转储触发器、函数和例程的校验和
对象选项
--no-schemas-m不备份表结构,(数据和触发器)
--all-tablespaces-Y备份所有表空间
--no-data-d不备份表的数据
--triggers-G备份触发器,默认情况下不备份
--events-E备份事件,默认情况下不备份
--routines-R备份存储过程和函数,默认情况下不备份
--skip-constraints从CREATE TABLE语句中删除约束。默认情况下,不修改该语句
--skip-indexes从CREATE TABLE语句中删除索引。默认情况下,不修改该语句
--views-as-tables将视图作为表导出
--no-views-W不备份视图
Statement选项
--load-data不创建 INSERT INTO 语句,而是创建 LOAD DATA 语句和 .dat 文件
--csv自动启用--load-data 并设置变量以 CSV 格式导出
--include-header添加列名到头部
--fields-terminated-by定义分割字段的字符
--fields-enclosed-by定义包围字段的字符。 默认: ”
--fields-escaped-by转义字符,默认: '\'
--lines-starting-by在每行的开头添加字符串。 使用 --load-data 时,它会添加到 LOAD DATA 语句中。 当使用它时,它也会影响 INSERT INTO 语句。
--lines-terminated-by在每行末尾添加字符串。 当使用 --load-data 时,它被添加到 LOAD DATA 语句中。 当使用它时,它也会影响 INSERT INTO 语句。
--statement-terminated-by这可能永远不会被使用,除非你知道你在做什么
--insert-ignore-N使用 INSERT IGNORE 备份行
--replace用 REPLACE 替换备份行
--complete-insert使用包含列名的完整 INSERT 语句
--hex-blob使用十六进制表示法转储二进制列
--skip-definer从 CREATE 语句中删除 DEFINER。 默认情况下,语句不被修改
--statement-size-s尝试的 INSERT 语句大小(以字节为单位),默认 1000000
--tz-utcSET TIME_ZONE='+00:00' 在转储顶部,允许在服务器具有不同时区的数据或数据在不同时区的服务器之间移动时转储 TIMESTAMP 数据,默认为使用 - -skip-tz-utc 禁用。
--skip-tz-utc禁用--tz-utc
--set-names设置名称,使用它需要您自担风险,默认二进制文件
Extra选项
--chunk-filesize-F将数据文件分割成以 MB 为单位的多个块
--exit-if-broken-table-found如果发现损坏的表则退出
--success-on-1146如果表不存在,则不增加错误计数并发出警告而不是错误
--build-empty-files-e即使表中没有可用数据也构建转储文件
--no-check-generated-fields与生成字段相关的查询不会被执行。如果您生成了列,则会导致恢复问题
--order-by-primary如果不存在主键,则按主键或唯一键对数据进行排序
--compact提供较少的详细输出。禁用页眉/页脚构造
--compress-c使用 /usr/bin/gzip 和 /usr/bin/zstd 压缩输出文件。 选项:GZIP 和 ZSTD。 默认值:GZIP
--use-defer使用延迟整数分片,直到处理完所有非整数主键表(为大量表保存RSS)
--check-row-count如果导出的行数与select count(*)不一致,则导出失败
Daemon选项
--daemon-D后台运行
--snapshot-interval-I每个转储快照之间的间隔(以分钟为单位),需要 --daemon,默认 60
--snapshot-count-X快照数量,默认2
Application选项
--help-?显示帮助选项
--outputdir-o输出文件的目录
--clear导出前清理输出目录
--dirty覆盖输出目录而不清除(注意左下块)
--stream一旦文件被写入,它将通过 STDOUT 流式传输。 自 v0.12.7-1 起,接受 NO_DELETE、NO_STREAM_AND_NO_DELETE 和 TRADITIONAL(默认值),如果未给出参数则使用
--logfile-L要使用的日志文件名,默认情况下使用 stdout
--disk-limits如果确定没有足够的磁盘空间,则设置暂停和恢复的限制。接受类似以下值:'<resume>:<pause>'(以 MB 为单位)。例如:100:500 将在只有 100MB剩余时暂停,如果有 500MB可用则恢复
--threads-t要使用的线程数,默认 4
--version-V显示程序版本并退出
--verbose-v输出的详细程度,0 = silent, 1 = errors, 2 = warnings, 3 = info, default 2
--debug打开调试输出(自动将verbosity设置为3)
--defaults-file使用特定的默认文件。 默认值:/etc/mydumper.cnf
--defaults-extra-file使用额外的默认文件。 这是在 --defaults-file 之后加载的,替换以前定义的值
--fifodir需要时将在其中创建 FIFO 文件的目录。 默认值:与备份相同

3. 备份例子

3.1 备份全库(未包含其他)

mydumper -u root -p 123456 -o /backup

3.2 备份全库(包含其他)

包含触发器(-G)、事件(-E)、存储过程和函数(-R)

mydumper -u root -p 123456 -G -R -E -o /backup

3.3 备份指定数据库(-B或--database)

mydumper -u root -p 123456 -G -R -E -B zs,python -o /backup

3.4 导出指定表(-T或--tables-list)

mydumper -u root -p 123456  -T zs.aa,python.y -o /backup

3.5 只导出表结构,不导出表数据(-d或--no-data)

mydumper -u root -p 123456 -B zs -d -o /backup

3.6 只导出表数据,不导出表结构(-m或者--no-schemas)

mydumper -u root -p 123456 -m -B zs -o /backup

3.7 压缩备份(-c或--compress)

mydumper -u root -p 123456 -B zs,python -c --clear -o /backup

3.8 综合备份

事务一致性、压缩、4线程、备份前清理备份目录、备份包含触发器、事件、存储过程和函数,备份前清理目录

mydumper -u root -p 123456 -G -E -R --trx-consistency-only -t 4 -c --clear -o /backup

3.9 使用正则表达式

排除某些表或者数据库,使用--regex参数

# 可以使用--regex功能,例如不备份zs和mysql数据库: 
mydumper --regex '^(?!(zs\.|mysql\.))'# 仅备份zs和python数据库:
mydumper --regex '^(zs\.|python\.)'# 不备份以zs开头的所有数据库:
mydumper --regex '^(?!(zs))'# 转储不同数据库中的指定表
mydumper --regex '^(db1\.table1$|db2\.table2$)'# 备份几个数据库但丢弃一些表:
mydumper --regex '^(?=(?:(db1\.|db2\.)))(?!(?:(db1\.table1$|db2\.table2$)))'

4. 备份文件命名

如果使用了 --rows(-r),每个表的备份文件都会被分割成多个文件,文件后会有5个数字填充(该表总数据),5个数字后再跟5个数字(分割后的数据),格式如下 

database.table.chunk.sql(.gz|.zst)sbtest.sbtest2.00000.00001.sql
sbtest.sbtest2.00000.00003.sql
sbtest.sbtest2.00000.00004.sql
sbtest.sbtest2.00000.00006.sql
sbtest.sbtest2.00000.00007.sql
sbtest.sbtest2.00000.00009.sql
sbtest.sbtest2.00000.00010.sql
sbtest.sbtest2.00000.sql

每个表的文件都会写到单独的文件中(没有使用--no-schemas才会有表结构文件)

#建库文件
database-schema-create.sql(.gz|.zst)#表结构文件
database.table-schema.sql(.gz|.zst)#表数据文件
database.table.sql(.gz|.zst)

可能各个版本备份出来的文件命名稍有不同,从文件命名可以较为明显的看出该文件的内容,大致总结下文件命名规则如下:

  • metadata:记录开始及结束备份的时间,二进制日志位置和表名以及行数
  • dbname-schema-create.sql:建库语句。
  • dbname.tbname-schema.sql:此表的表结构创建语句。
  • dbname.tbname.sql:该表的插入数据语句(若该表为空 则不存在此文件)。
  • dbname.viewname-schema.sql:创建视图的表(列举出视图字段,然后创建表)。
  • dbname.viewname-schema-view.sql:创建视图的真正语句。
  • dbname.tbname-schema-triggers.sql:创建触发器语句。
  • dbname-schema-post.sql:包含事件、存储过程及函数创建语句(若存在则有该文件)。

5. 备份原理

备份流程

主要步骤概括

  1. 主线程 FLUSH TABLES WITH READ LOCK , 施加全局只读锁,以阻止 DML 语句写入,保证数据的一致性;
  2. 读取当前时间点的二进制日志文件名和日志写入的位置并记录在 metadata 文件中,以供即时点恢复使用;
  3. N 个(线程数可以指定,默认是 4个)dump 线程 START TRANSACTION WITH CONSISTENT SNAPSHOT ; 开启读一致的事物;
  4. dump non-InnoDB tables , 首先导出非事物引擎的表;
  5. 主线程 UNLOCK TABLES 非事物引擎备份完后,释放全局只读锁;
  6. dump InnoDB tables , 基于事物导出 InnoDB 表;
  7. 事物结束。

6. myloader参数

参数简写描述
连接参数
--host-h连接的MySQL数据库服务器
--user-u连接数据库的用户
--password-p连接数据库用户的密码
--ask-password-a提示输入用户的密码
--port-PMySQL数据库端口
--socket-S用于连接的 UNIX 域套接字文件
--protocol用于连接的协议(tcp、socket)
--compress-protocol-C对 MySQL 连接使用压缩
--ssl使用 SSL 连接
--ssl-mode连接到服务器所需的安全状态:DISABLED、PREFERRED、REQUIRED、VERIFY_CA、VERIFY_IDENTITY
--key密钥文件的路径名
--cert证书文件的路径名
--ca证书颁发机构文件的路径名
--capath包含 PEM 格式的受信任 SSL CA 证书的目录的路径名
--cipher用于 SSL 加密的允许密码列表
--tls-version服务器允许哪些协议进行加密连接
过滤选项
--regex-x'db.table' 匹配的正则表达式
--source-db-s要还原的数据库,-s db1 -B db2,表示源库中的db1数据库,导入到db2数据库中。
--skip-triggers不导入触发器,默认导入
--skip-post不导入事件、存储过程和函数,默认都导入
--skip-constraints不导入约束,默认导入
--skip-indexes不导入innodb表的二级索引,默认导入
--no-data不导入表数据
--omit-from-file-O包含要跳过的数据库.表条目列表的文件,每行一个(在应用正则表达式选项之前跳过)
--tables-list-T要备份的表列表,以逗号分隔(不排除正则表达式选项)。 表名必须包含数据库名。 例如:test.t1,test.t2
PMM选项
--pmm-path默认值为 /usr/local/percona/pmm2/collectors/textfile-collector/high-resolution
--pmm-resolution默认值较高
Execution选项
--enable-binlog-e启用恢复数据的二进制日志记录
--innodb-optimize-keys创建不包含索引的表,并在末尾添加索引。选项:AFTER_IMPORT_PER_TABLE和AFTER_IMPORT_ALL_TABLES。默认值:AFTER_IMPORT_PER_TABLE
--no-schema不导入表结构和触发器
--purge-mode这指定了截断模式,可以是:FAIL、NONE、DROP、truncate和DELETE。未设置默认值:FAIL
--disable-redo-log禁用REDO_LOG并在之后启用它,不检查初始状态
--checksum校验和:skip, fail, warn(默认)。
--overwrite-tables-o如果表存在则删除表
--overwrite-unsafe与--overwrite-tables相同,但尽量快速数据加载。可能导致外键的InnoDB死锁
--retry-count锁等待超时超过重试计数,默认为10(当前仅适用于DROP TABLE)
--serialized-table-creation表的重新创建将以串行方式执行,每次执行一个线程。这意味着架构创建的最大线程数=1。此选项将在以后的版本中删除
--stream它将从STDIN接收流,并在开始处理之前在磁盘中创建文件。自v0.12.7-1起,接受NO_DELETE、NO_STREAM_AND_NO_DELETE和TRADICTIONAL(这是默认值,在未给定参数的情况下使用)
Threads选项
--max-threads-per-table每张表要使用的最大线程数,默认为--threads
--max-threads-for-index-creation用于创建索引的最大线程数,默认为4
--max-threads-for-post-actions操作后的最大线程数,如:约束、过程、视图和触发器,默认为1
--max-threads-for-schema-creation用于创建schema的最大线程数。当它设置为1时,与序列化表创建相同,默认为4
--exec-per-thread设置STDIN将从输入文件接收的命令,并写入STDOUT
--exec-per-thread-extension当使用--exec-per-thread时,设置输入文件扩展名。否则将被忽略
Statement选项
--rows-r将INSERT语句拆分成多行
--queries-per-transaction-q每个事务的查询数,默认为1000
--append-if-not-exist将IF NOT EXISTS追加到创建表语句中。当https://bugs.mysql.com/bug.php?id=103791已实施
--set-names设置名称,使用风险自负,默认二进制
--skip-definer从CREATE语句中删除DEFINER。默认情况下,不修改语句
Application选项
--help-?帮助选项
--directory-d导入的目录
--logfile-L要使用的日志文件名,默认情况下使用stdout
--database-B要恢复到的备用数据库
--quote-character-QINSERT语句中使用的标识符引号字符,可以是`或者",默认从导出的文件中读取
--resume期望在备份目录中找到恢复文件,并且只处理这些文件
--threads-t要使用的线程数,默认 4
--version-V显示程序版本并退出
--verbose-v输出的详细程度,0 = silent, 1 = errors, 2 = warnings, 3 = info, default 2
--debug打开调试输出(自动将verbosity设置为3)
--defaults-file使用特定的默认文件。 默认值:/etc/mydumper.cnf
--defaults-extra-file使用额外的默认文件。 这是在 --defaults-file 之后加载的,替换以前定义的值
--fifodir需要时将在其中创建 FIFO 文件的目录。 默认值:与备份相同

7. 恢复例子

7.1 恢复指定库

myloader -u root -p 123456 -s zs,python -d /backup

7.2 将源库的zs库导入备库的zs01库

myloader -u root -p 123456 -B zs01 -s zs -d /backup

7.3 导入特定的表

在导出的目录中选择metadata文件和需要单独导入的表的结构文件和数据文件移到一个新目录下,最好提前建好库表,否则需要把建库表的文件一起移动到新目录,移动到新目录后可以使用myloader指定新目录进行恢复数据。

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

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

相关文章

包管理工具npm的安装和使用

包管理工具 管理 包 的应用软件&#xff0c;可以对 包 进行下载 安装&#xff0c;更新&#xff0c;删除&#xff0c;上传 等操作。 借助包管理工具&#xff0c;可以快速开发项目&#xff0c;提升开发效率。 包管理工具是一个通用的概念&#xff0c;很多编程语言都有包管理工…

likeshop多商户单商户商城_likeshop跑腿源码_likeshop物品租赁系统开源版怎么配置小程序对接?

本人是商业用户所以能持续得到最新商业版&#xff0c;今天我说下likeshop里面怎么打包小程序&#xff0c;大家得到程序时候会发现它有admin目录 app目录 server目录 这三个目录分别是做什么呢&#xff1f; 1.admin目录 下面都是架构文件使用得是Node.js打包得&#xff0c;至于…

管道通信与Linux命令的执行-(读书笔记-十三)

|前一个命令的输出作为后一个命令的输入。 在Linux中&#xff0c;|符号是一个管道符号&#xff0c;用于将前一个命令的输出作为后一个命令的输入。这种机制允许你将多个命令组合在一起&#xff0c;以执行复杂的操作。下面是一些基本的例子&#xff1a; 查看当前目录下的文件列…

数据互通新纪元,企业如何实现系统无缝对接?

一、客户介绍 某文化发展有限公司&#xff0c;是一家在二次元文化领域深耕的领先企业&#xff0c;自成立以来&#xff0c;始终致力于为广大二次元爱好者提供丰富多样的正版衍生品和独特的文化体验。作为一家专注于二次元周边产品的公司&#xff0c;该公司拥有全面的产品线&…

网站访问免费升级成 HTTPS——值得收藏

实现HTTPS协议可以分为四个主要步骤&#xff0c;以确保网站数据传输的安全性。以下是简明清晰的流程概述&#xff1a; 1. 申请SSL证书 - SSL证书是实现HTTPS的基础&#xff0c;它包含了网站的身份信息以及公钥等。首先&#xff0c;你需要从受信任的证书颁发机构(CA)申请一个SSL…

新建的springBoot WEB项目无法自动返回html模版(gradle+kotlin版本)

最近研究了springBoot创建web项目&#xff0c; 第一步服务端返回字符串没有问题&#xff0c;第二步返回html时&#xff0c;还是返回的字符串。 文章目录 一、参考方案二、新建springBoot web项目三、启动项目的三种方式 一、参考方案 将控制器类的 RestController 改为 Contro…

Listview控件的5种视图

在C#中&#xff0c;ListView控件是用于显示和编辑列表数据的常用控件。它可以显示数据项的列表&#xff0c;并允许用户对列表中的数据进行操作。 ListView控件有五种视图模式&#xff0c;分别是&#xff1a; LargeIcon视图&#xff1a;在此视图中&#xff0c;每个数据项都显示…

如何剪辑视频中不想要的片段?教你轻松剪辑

如何剪辑视频中不想要的片段&#xff1f;在视频编辑的精湛艺术中&#xff0c;精确剪辑掉不想要的片段无疑是提升视频品质和专业水准的关键一环。技术的进步使我们得以借助多种高效、易用的视频剪辑软件&#xff0c;轻松去除冗余&#xff0c;保留精华&#xff0c;从而创作出更加…

大模型模型简化机器人训练;简单易用的 3D 工具Project Neo;特斯拉放出了擎天柱机器人最新训练视频

✨ 1: DrEureka 利用大语言模型自动化将机器人仿真环境训练结果转移到真实世界 DrEureka是一种利用大型语言模型&#xff08;LLMs&#xff09;自动化和加速从仿真&#xff08;sim&#xff09;到现实世界&#xff08;real&#xff09;转移的技术。在机器人技能学习领域&#x…

使用socat 做端口转发 调试设备

使用 socat 监听设备的端口&#xff0c;转发到PC的 一个sniff 程序上&#xff0c;查看wireshark 或者直接用 scapy 进行分析 有了socat 也可以做 nat 映射

MySQL mysqldump备份恢复

目录 1. 备份类型 2. 逻辑备份VS物理备份 3. mysqldump工具 3.1 备份命令格式 3.2 备份选项 3.3 备份全库(结构和数据) 3.4 备份全库(仅结构) 3.5 备份全库(仅数据) 3.6 备份单个数据库(结构和数据) 3.7 备份单个数据库(仅结构) 3.8 备份单个数据库(仅数据) 3.9…

低代码系统能够解决哪些痛点?

不同的应用场景下&#xff0c;低代码系统解决的痛点是不一样的。工业应用场景中的组态软件应该说是最早的低代码系统了。以 Topstack 为代表的Web 组态软件&#xff0c;其核心功能设备数据采集、图形监控画面、数据报表、数据看板、业务逻辑开发等&#xff0c;都是无代码或低代…

个人出租房屋收入需汇算吗?柯桥会计培训

2023年度个人所得税综合所得汇算清缴正在进行&#xff0c;个人出租房屋的收入需并入汇算清缴吗&#xff1f;汇算最后一步显示免申报是什么意思&#xff1f; 1 个人出租房屋的收入需并入汇算清缴吗&#xff1f; 答&#xff1a;不用。根据《国家税务总局关于办理2023年度个人所…

UaExpert(OPCUA上位机第三方工具)通过OPCUA协议读写PLC 1500数据

一、CPU1500配置参数 1.激活OPC UA服务器 2.选择许可证&#xff08;所需要的许可证类型&#xff09; 3.启用访客认证&#xff08;如果需要上位机输入用户信息访问&#xff0c;则需要添加用户名和密码&#xff09; 4.选择TCP/IP&#xff0c;本地仿真选择local、single adapt…

基于大模型的idea提炼:围绕论文和引用提炼idea之ResearchAgent

前言 对本博客比较熟悉的朋友知道&#xff0c;我司论文项目组正在基于大模型做论文的审稿(含CS英文论文审稿、和金融中文论文审稿)、翻译&#xff0c;且除了审稿翻译之外&#xff0c;我们还将继续做润色/修订、idea提炼(包含论文检索)&#xff0c;是一个大的系统&#xff0c;包…

CVE-2022-32250漏洞原理

CVE-2022-32250漏洞原理 原创 hope 蚁景网安 2024-05-06 20:00 湖南 前言 在nftales中存在着集合(sets)&#xff0c;用于存储唯一值的集合。sets 提供了高效地检查一个元素是否存在于集合中的机制&#xff0c;它可以用于各种网络过滤和转发规则。 而CVE-2022-32250漏洞则是由…

【PX4-AutoPilot教程-TIPS】Matlab使用ROS Toolbox编译MAVROS2消息报错缺少geographic_msgs消息

Matlab使用ROS Toolbox编译MAVROS2消息报错缺少geographic_msgs消息的解决方法 问题描述解决方法 环境&#xff1a; MATLAB : R2022b ROS Toolbox : 1.6 Windows &#xff1a;Windows 10 22H2 ROS &#xff1a;ROS2 Foxy 问题描述 在使用Matlab的ROS Toolbox工具箱编译与…

五分钟了解等级保护、风险评估和安全测评三者的区别和联系?

等级保护 基本概念&#xff1a;网络安全等级保护是指对国家秘密信息、法人和其他组织和公民的专有信息以及公开信息和存储、传输、处理这些信息的信息系统分等级实行安全保护&#xff0c;对信息系统中使用的安全产品实行按等级管理&#xff0c;对信息系统中发生的信息安全事件…

Leetcode—622. 设计循环队列【中等】

2024每日刷题&#xff08;128&#xff09; Leetcode—622. 设计循环队列 实现代码 class MyCircularQueue { public:MyCircularQueue(int k): q(k) {qSize k;}bool enQueue(int value) {if(isFull()) {return false;}q[rear] value;rear (rear 1) % qSize;deflag false;…

“A”分心得:我的云计算HCIE学习之路

大家好&#xff0c;我是誉天云计算HCIE周末班梁同学&#xff0c;在誉天老师和同学们的帮助下&#xff0c;我终于在4月24日顺利通过了云计算3.0 HCIE的认证考试&#xff0c;而且获得了A&#xff0c;这是让我特别惊喜的&#xff0c;功夫不负有心人。 我日常的工作是网络运维&…