【Mysql】我在广州学Mysql 系列—— 有关日志管理的示例
ℹ️大家好,我是练小杰,今天星期四了,明天周五,美好的周末又要到了!!😆
本文是对MySQL日志管理内容进行练习,后续将添加更多相关知识噢,谢谢各位的支持🙏复习: 【Mysql 日志管理详解】
数据库专栏:👉【数据库专栏】【Mysql练习题】主页:👉【练小杰的CSDN】
“我是一只猫,快乐的星猫~~”
日志例题
- 主页:👉【[练小杰的CSDN](https://blog.csdn.net/weixin_55767624?spm=1011.2415.3001.5343)】
- "我是一只猫,快乐的星猫~~"
- 前言
- 查询日志的相关信息
- 详细说明
- 查看二进制日志文件个数及文件名
- 输出结果说明
- mysqlbinlog 命令查看日志
- 删除创建时间比某个文件早的日志
- 删除某个时间点之前的日志
- 恢复 mysql日志
- 记事本查看日志
- 查看MySQL错误日志
- 查看MySQL通用查询日志
- 删除MySQL通用查询日志
- 查看慢日志
前言
在练习本博客的示例之前,先看看👉【Mysql 日志管理详解】的博客内容噢!!
俗话说,“温故而知新,可以为师矣!!”
查询日志的相关信息
- 使用
SHOW VARIABLES
语句查询日志设置,显示所有以 “log_
” 开头的系统变量及其当前值。执行命令如下:
SHOW VARIABLES LIKE 'log_%' ;
- 以下结果是基于
MySQL 8.x
版本,实际结果可能会因 MySQL 版本、安装方式以及配置文件的不同而有所变化。
+-------------------------------+------------------------------+
| Variable_name | Value |
+-------------------------------+------------------------------+
| log_bin | ON |
| log_bin_basename | /var/lib/mysql/binlog |
| log_bin_index | /var/lib/mysql/binlog.index |
| log_bin_trust_function_creators | OFF |
| log_error | /var/log/mysql/error.log |
| log_output | FILE |
| log_queries_not_using_indexes | OFF |
| log_slow_admin_statements | OFF |
| log_slow_slave_statements | OFF |
| log_statements_unsafe_for_binlog | ON |
| log_throttle_queries_not_using_indexes | 0 |
| log_timestamps | UTC |
| log_warnings | 2 |
| log_slow_queries | OFF |
| log_slave_updates | ON |
| log_syslog_tag | |
+-------------------------------+------------------------------+
详细说明
log_bin
:
- 值: ON
- 表示二进制日志已启用。二进制日志用于主从复制和备份恢复。
log_bin_basename
:
- 值:
/var/lib/mysql/binlog
- 表明二进制日志文件的基本路径和前缀。
log_bin_index
:
- 值: /var/lib/mysql/binlog.index
- 说明: 二进制日志索引文件的路径。
log_bin_trust_function_creators
:
- 值: OFF
- 说明: 是否信任存储函数创建者,允许创建带有不确定性的函数。
log_error
:
- 值: /var/log/mysql/error.log
- 说明: 错误日志文件的路径。
log_output
:
- 值: FILE
- 说明: 日志输出的目标。FILE 表示日志输出到文件,TABLE 表示输出到数据库表,NONE 表示不输出。
log_queries_not_using_indexes
:
- 值: OFF
- 说明: 是否记录未使用索引的查询。启用后可以用于性能优化。
log_slow_admin_statements
:
- 值: OFF
- 说明: 是否记录由管理员执行的慢查询。
log_slow_slave_statements
:
- 值: OFF
- 说明: 是否记录从服务器上的慢查询。
log_statements_unsafe_for_binlog
:
- 值: ON
- 说明: 是否记录被认为对二进制日志不安全的语句。
log_throttle_queries_not_using_indexes
:
- 值: 0
- 说明: 每分钟记录未使用索引的查询次数限制。0 表示无限制。
log_timestamps
:
- 值: UTC
- 说明: 日志时间戳的格式。UTC 表示使用协调世界时。
log_warnings
:
- 值: 2
- 说明是否记录警告信息。这里的
2
表示记录所有警告。
log_slow_queries
:
- 值: OFF
- 说明: 是否启用慢查询日志。OFF 表示未启用。
log_slave_updates:
- 值: ON
- 说明: 是否记录从服务器上的更新操作。启用后可以用于主从复制。
log_syslog_tag
:
- 值: (
空
)- 说明: 当日志输出到
syslog
时,用于标记日志消息的标签。
查看二进制日志文件个数及文件名
- 使用
SHOW BINARY LOGS
将查看二进制日志文件个数及文件名,执行命令及结果如下:
SHOW BINARY LOGS;+------------------+-----------+
| Log_name | File_size |
+------------------+-----------+
| mysql-bin.000001 | 107374 |
| mysql-bin.000002 | 209715 |
| mysql-bin.000003 | 524288 |
| mysql-bin.000004 | 1048576|
| mysql-bin.000005 | 2097152|
| mysql-bin.000006 | 3145728|
+------------------+-----------+
输出结果说明
Log_name
: 二进制日志文件的名称File_size
: 二进制日志文件的大小,以字节为单位。
mysqlbinlog 命令查看日志
- 使用mysqlbinlog查看二进制日志,执行命令及结果如下:
C:\> mysqlbinlog D:/MySQL/log/binlog.000001
- 输出示例:
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;# at 4
#220101 10:00:00 server id 1 end_log_pos 123 CRC32 0x5d7f1a2b Start: binlog v 4, server v 8.0.23 created 220101 10:00:00
# Warning: this binlog is either in use or was not closed properly.
BINLOG '
dZ7f1A2BAAAAAAAAAAAQAMAAAAAAAQAMAAAAAAAAAAAAAADwAAANoYW5rZXRfaWQAAw==
'/*!*/;
# at 123
#220101 10:00:05 server id 1 end_log_pos 256 CRC32 0x1a2b3c4d Query thread_id=10 exec_time=0 error_code=0
SET TIMESTAMP=1640990405/*!*/;
SET @@session.time_zone='SYSTEM'/*!*/;
BEGIN
/*!*/;
# at 256
#220101 10:00:05 server id 1 end_log_pos 389 CRC32 0x4d5e6f70 Table_map: `test_db`.`users` mapped to number 108
# at 389
#220101 10:00:05 server id 1 end_log_pos 512 CRC32 0x708192a3 Write_rows: table id 108 flags: STMT_END_FBINLOG '
BZwX2g8BAAAAMwAAAKsBAAAAAGF1a2VfdG9fY29tcGxldGVfc3RyaW5nAAADAAAABHRlc3RfZGIA
dXNlcnMAAwMAAQAAAB1c2VyX2lkAAQAAAB1c2VyX25hbWUEAAQAAAB1c2VyX3VzZXIAAQAA
'/*!*/;
### INSERT INTO `test_db`.`users`
### SET
### user_id=1
### user_name='Alice'
### user_user='alice'
# at 512
#220101 10:00:05 server id 1 end_log_pos 584 CRC32 0x8192a3b4 Xid = 12345
COMMIT/*!*/;
# at 584
#220101 10:00:10 server id 1 end_log_pos 700 CRC32 0x5a6b7c8d Query thread_id=10 exec_time=0 error_code=0
SET TIMESTAMP=1640990410/*!*/;
SET @@session.time_zone='SYSTEM'/*!*/;
BEGIN
/*!*/;
# at 700
#220101 10:00:10 server id 1 end_log_pos 833 CRC32 0x6b7c8d9e Table_map: `test_db`.`users` mapped to number 108
# at 833
#220101 10:00:10 server id 1 end_log_pos 956 CRC32 0x7c8d9e0f Write_rows: table id 108 flags: STMT_END_FBINLOG '
BZwX2g8BAAAAMwAAALcBAAAAAGF1a2VfdG9fY29tcGxldGVfc3RyaW5nAAADAAAABHRlc3RfZGIA
dXNlcnMAAwMAAQAAAB1c2VyX2lkAAQAAAB1c2VyX25hbWUEAAQAAAB1c2VyX3VzZXIAAQAA
'/*!*/;
### INSERT INTO `test_db`.`users`
### SET
### user_id=2
### user_name='Bob'
### user_user='bob'
# at 956
#220101 10:00:10 server id 1 end_log_pos 1028 CRC32 0x8d9e0f1a Xid = 12346
COMMIT/*!*/;
DELIMITER ;
# End of log file
ROLLBACK /* added by mysqlbinlog */;
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
删除创建时间比某个文件早的日志
我们使用命令
PURGE MASTER LOGS
删除创建时间比binlog.000003
早的所有日志文件。 首先,为了演示语句操作过程,准备多个日志文件,我们可以对MySQL服务进行多次重新启动。
- 假设这里有10个日志文件,输出结果与上面类似,这里不再重复
SHOW binary logs;+------------------+-----------+
| Log_name | File_size |
+------------------+-----------+
| binlog.000001 | 107374 |
| binlog.000002 | 209715 |
| binlog.000003 | 524288 |
| binlog.000004 | 1048576|
| binlog.000005 | 2097152|
| binlog.000006 | 3145728|
| binlog.000007 | 4194304|
| binlog.000008 | 5242880|
| binlog.000009 | 6291456|
| binlog.000010 | 7340032|
+------------------+-----------+
- 执行删除命令如下:
PURGE MASTER LOGS TO "binlog.000003";
Query OK, 0 rows affected (0.07 sec)
- 执行完成后,再使用
SHOW binary logs
语句查看二进制日志
SHOW binary logs;+------------------+-----------+
| Log_name | File_size |
+------------------+-----------+
| binlog.000003 | 524288 |
| binlog.000004 | 1048576|
| binlog.000005 | 2097152|
| binlog.000006 | 3145728|
| binlog.000007 | 4194304|
| binlog.000008 | 5242880|
| binlog.000009 | 6291456|
| binlog.000010 | 7340032|
+------------------+-----------+
删除某个时间点之前的日志
- 使用
PURGE MASTER LOGS
删除2025年2月20日前创建的所有日志文件,执行命令及结果如下:
PURGE MASTER LOGS BEFORE '20250220';
Query OK, 0 rows affected (0.05 sec)
语句执行之后,2025年2月20日之前创建的日志文件都将被删除,但2025年2月20日的日志会被保留(我们还可以根据自己系统中创建日志的时间修改命令参数)。
- 再使用
mysqlbinlog
查看指定日志的创建时间,如前面例子所示,查询命令如下:
C:\> mysqlbinlog D:\MySQL\log\mysql-bin.000001
恢复 mysql日志
- 使用
mysqlbinlog
恢复MySQL数据库到2025年2月20日 15:27:48时的状态,执行命令及结果如下:
mysqlbinlog --stop-date="2025-02-20 15:27:48" D:\MySQL\log\binlog\binlog.000008 | mysql –uuser –ppass
250220
记事本查看日志
查看MySQL错误日志
使用记事本查看MySQL错误日志,首先,通过
SHOW VARIABLES
语句查询错误日志的存储路径和文件名。
SHOW VARIABLES LIKE 'log_error';
可以看到错误的文件是
Kevin.err
,位于MySQL默认的数据目录下,使用记事本打开该文件,可以看到MySQL的错误日志:
250220 16:45:14 [Note] Plugin 'FEDERATED' is disabled.
250220 16:45:14 InnoDB: The InnoDB memory heap is disabled
250220 16:45:14 InnoDB: Mutexes and rw_locks use Windows interlocked functions
250220 16:45:14 InnoDB: Compressed tables use zlib 1.2.3
250220 16:45:15 InnoDB: Initializing buffer pool, size = 46.0M
250220 16:45:15 InnoDB: Completed initialization of buffer pool
250220 16:45:15 InnoDB: highest supported file format is Barracuda.
250220 16:45:15 InnoDB: Waiting for the background threads to start
250220 16:45:16 InnoDB: 1.1.7 started; log sequence number 1679264
250220 16:45:16 [Note] Event Scheduler: Loaded 0 events
250220 16:45:16 [Note] C:\Program Files\MySQL\MySQL Server 5.6\bin\mysqld: ready for connections.
Version: '5.6.10-log' socket: '' port: 3306 MySQL Community Server (GPL)
这里只是错误日志文件的一部分,其中记载了系统的一些错误。
查看MySQL通用查询日志
我们使用记事本打开
D:\mysql-5.6.10-win32\data\
目录下的my-PC.log
,可以看到如下内容:
C:\Program Files\MySQL\MySQL Server 5.6\bin\mysqld, Version: 5.6.10-log (MySQL Community Server
(GPL)). started with:
TCP Port: 3306, Named Pipe: (null)
Time Id Command Argument
250220 17:24:32 1 Connect root@localhost on 1 Query select @@version_comment limit 1
250220 17:24:36 1 Query SELECT DATABASE()1 Init DB test
250220 17:24:53 1 Query SELECT * FROM fruits
250220 17:24:55 1 Quit
删除MySQL通用查询日志
- 直接删除MySQL通用查询日志,执行步骤如下:
- 查看
my.ini
(或者my.cnf)查看通用查询日志的文件目录,在my.ini
中通用查询日志配置如下。
[mysqld]
log
可以看到,配置文件中没有指定日志文件名和存储目录,通用查询日志文件存储在MySQL默认数据目录中。
-
在数据目录中找到日志文件所在目录
C:\Documents and Settings\All Users.WINDOWS\ Application Data\MySQL\MySQL Server 5.6\data\
,删除该后缀为.err
的文件。 -
通过
mysqladmin –flush logs
命令建立新的日志文件,执行命令如下。C:\> mysqladmin –u root –p flush-logs
执行完命令可看到,
C:\Documents and Settings\All Users.WINDOWS\Application Data\MySQL\MySQL Server 5.6\data\
目录中已经建立了新的日志文件Kevin.log
。
查看慢日志
查看慢查询日志,我们可以使用文本编辑器打开数据目录下的
Kevin-slow.log
文件,文件部分如下:
C:\Program Files\MySQL\MySQL Server 5.6\bin\mysqld, Version: 5.6.10-log (MySQL Community Server
(GPL)). started with:
TCP Port: 3306, Named Pipe: (null)
Time Id Command Argument
# Time: 250220 17:50:35
# User@Host: root[root] @ localhost [127.0.0.1]
# Query_time: 136.500000 Lock_time: 0.000000 Rows_sent: 1 Rows_examined: 0
SET timestamp=1314697835;
SELECT BENCHMARK(100000000, PASSWORD('newpwd'));
本文有关Mysql数据库的日志相关示例已讲完了,明天再见啦👋
主页:【练小杰的CSDN】😆
ℹ️欢迎各位在评论区踊跃讨论,积极提出问题,解决困惑!!!
⚠️若博客里的内容有问题,欢迎指正,我会及时修改!!
相关文章:
【Mysql】我在广州学Mysql 系列—— 有关日志管理的示例
ℹ️大家好,我是练小杰,今天星期四了,明天周五,美好的周末又要到了!!😆 本文是对MySQL日志管理内容进行练习,后续将添加更多相关知识噢,谢谢各位的支持🙏 复习…...
dify如何升级到0.15.3(目前最新版本)
Docker Compose 部署 警告 docker-legacy 目录中的文件将很快停止维护,并将从存储库中删除。如果您仍在使用它们,请尽快切换到新版本。 备份自定义的 docker-compose YAML 文件(可选) cd docker cp docker-compose.yaml docker-c…...
UNIAPP开发之利用阿里RTC服务实现音视频通话后端THINKPHP5
下面是一个使用ThinkPHP 5实现后端逻辑的示例。我们将创建一个简单的ThinkPHP 5项目来处理生成推流和播流地址的请求。 后端部分(ThinkPHP 5) 1. 初始化ThinkPHP 5项目 首先,确保你已经安装了Composer。然后使用Composer创建一个新的Think…...
使用JWT实现微服务鉴权
目录 一、微服务鉴权 1、思路分析 2、系统微服务签发token 3、网关过滤器验证token 4、测试鉴权功能 前言: 随着微服务架构的广泛应用,服务间的鉴权与安全通信成为系统设计的核心挑战之一。传统的集中式会话管理在分布式场景下面临性能瓶颈和扩展性…...
基于WOA鲸鱼优化的WSN网络最优节点部署算法matlab仿真
目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.本算法原理 5.完整程序 1.程序功能描述 鲸鱼优化算法(WOA)是一种模拟座头鲸捕食行为的元启发式优化算法。其主要原理基于座头鲸独特的 “气泡网” 捕食策略,通过数学模…...
TikTok账户安全指南:如何取消两步验证?
TikTok账户安全指南:如何取消两步验证? 在这个数字化的时代,保护我们的在线账户安全变得尤为重要。TikTok,作为全球流行的社交媒体平台,其账户安全更是不容忽视。两步验证作为一种增强账户安全性的措施,虽…...
将 Type Code 替换为 State/Strategy 模式
Replace Type Code with State/Strategy 要将 Type Code 替换为 State/Strategy 模式,你的目的是通过将行为分离到独立的类中来消除使用类型代码(如整数、字符串或枚举类型)来决定行为的需要。这种做法能够让系统变得更加灵活和易于维护。 …...
c#爬取数据并解析json
安装 Newtonsoft.Json Install-Package Newtonsoft.Json代码 HttpClient client new HttpClient();// 获取网页内容HttpResponseMessage response client.GetAsync("https://opentdb.com/api.php?amount10&category18&difficultyeasy&typemultiple"…...
Spring Boot 内置工具类
ObjectUtils // 获取对象的类名。参数为 null 时,返回字符串:"null" String nullSafeClassName(Object obj) // 参数为 null 时,返回 0 int nullSafeHashCode(Object object) // 参数为 null 时,返回字符串࿱…...
蓝桥杯15 填空题
1.握手问题: 思路:首先当所有人都握过手,由于一次握手相当于两个人都握手过,所以容易发现这是一个组合问题,为(50*49)/2,而其中有7个人没有相互握过手,那么减去ÿ…...
分布式光纤声波振动技术在钻井泄漏检测中的应用
在石油天然气的钻井作业中,及时发现并定位泄漏点对于保障开采安全、降低环境污染以及避免经济损失至关重要。传统的泄漏检测方法往往存在局限性,而分布式光纤声波振动技术凭借其独特的优势,正逐渐成为钻井过程中寻找泄漏的有力工具。 技术原理…...
0081.基于springboot+uni-app的垃圾分类小程序+论文
一、系统说明 基于springbootuni-app的垃圾分类小程序,系统功能齐全, 代码简洁易懂,适合小白学编程。 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本…...
基于STM32+ESP8266+手机 APP+阿里云的智能小车设计与实现(系统资料)
基于STM32+ESP8266+手机APP+阿里云的智能小车设计与实现 摘要:本研究旨在设计一款高度智能化的智能小车系统,通过集成 STM32 微控制器、ESP8266 无线模块、手机 APP 以及阿里云平台,实现环境数据实时采集、远程精准控制和高效的数据交互。详细阐述系统各部分的设计原理、实…...
分布式 IO 模块:水力发电设备高效控制的关键
在能源领域不断追求高效与可持续发展的今天,水力发电作为一种清洁、可再生的能源形式,备受关注。而要实现水力发电设备的高效运行,精准的控制技术至关重要。分布式 IO 模块,正悄然成为水力发电设备高效控制的核心力量。 传统挑战 …...
Spring Boot +SQL项目优化策略,GraphQL和SQL 区别,Spring JDBC 等原理辨析(万字长文+代码)
WebFlux 定义:Spring 5引入的响应式Web框架,基于Reactor库实现非阻塞、异步编程模型。通常用途:构建实时通信、流数据处理等高并发场景。使用异步事件驱动模型,单线程可处理数千并发连接。用途:处理高并发网络请求&am…...
QSNCTF-WEB做题记录
第一题,文章管理系统 来自 <天狩CTF竞赛平台> 描述:这是我们的文章管理系统,快来看看有什么漏洞可以拿到FLAG吧?注意:可能有个假FLAG哦 1,首先观察题目网站的结构和特征 这个一个文件管理系统&#x…...
使用Dify将AI机器人嵌入到你的前端页面中及chrome的扩展应用
目录 1 博主有话说2 前提环境3 Dify创建个聊天助手应用4 将AI聊天机器人嵌入到html中5 将AI聊天机器人设置为chrome的扩展应用6 博主增语 1 博主有话说 那博主话不多说,先展示一下成果! 这个界面是使用dify配置的一个“聊天助手”的应用,助…...
接口测试-API测试中常用的协议(下)
一、RPC RPC(Remote Procedure Call)即远程过程调用协议,它允许程序调用位于其他计算机上的程序中的过程或函数,就像调用本地程序中的过程一样。下面从其概念、工作原理、特点、应用场景等方面详细介绍: 概念起源与核…...
【git】提交修改、回撤、回滚、Tag 操作讲解,与reset (--soft、--mixed、--hard) 的区别
Git 提交修改、回撤、回滚、Tag 操作详解 1. git commit --amend -m "message" 作用:修改最近一次提交的信息或内容。 适用场景: 提交后发现 commit message 写错了。提交后发现 少 add 了文件,想直接加进上一次提交。 示例 1&…...
【设计模式】【创建型模式】抽象工厂模式(Abstract Factory)
👋hi,我不是一名外包公司的员工,也不会偷吃茶水间的零食,我的梦想是能写高端CRUD 🔥 2025本人正在沉淀中… 博客更新速度 👍 欢迎点赞、收藏、关注,跟上我的更新节奏 🎵 当你的天空突…...
Embedding模型介绍部署部署
概述 是一种将高维数据(如文本、图像、音频)映射到低维空间的技术,其中每个数据点由实数构成的向量表示,这些向量在向量空间中的位置反映了数据的语义特征。这种技术广泛应用于自然语言处理和机器学习中,使得计…...
web网络安全:跨站脚本攻击(XSS)
跨站脚本攻击(XSS)概述 跨站脚本攻击(XSS,Cross-Site Scripting) 是一种常见的 Web 安全漏洞,攻击者通过向受信任的网站注入恶意脚本(通常是 JavaScript),诱使其他用户在…...
【C++】 Flow of Control
《C程序设计基础教程》——刘厚泉,李政伟,二零一三年九月版,学习笔记 文章目录 1、选择结构1.1、if 语句1.2、嵌套的 if 语句1.3、条件运算符 ?:1.4、switch 语句 2、循环结构2.1、while 语句2.2、do-while 语句2.3、 for 循环2.4、循环嵌套…...
Kafka中commitAsync的使用与实例解析
在使用Apache Kafka进行消息处理时,正确管理偏移量(offset)是确保数据一致性和可靠性的重要环节。Kafka提供了多种方式来提交偏移量,其中commitAsync()方法是一种高效且灵活的选择。本文将通过一个完整的实例,详细介绍…...
上海餐饮冷藏配送全方案 一站式服务助企提速发展
在上海这座国际化大都市中,餐饮行业以其繁荣与多元著称。消费者对食品安全和品质要求的日益提高,餐饮冷链运输成为了保障餐饮供应链稳定、高效的关键环节。近日,华鼎冷链科技凭借其创新的一站式服务方案,在上海餐饮冷链领域脱颖而…...
基于微信小程序的电影院订票选座系统的设计与实现,SSM+Vue+毕业论文+开题报告+任务书+指导搭建视频
本系统包含用户、管理员两个角色。 用户角色:注册登录、查看首页电影信息推荐、查看电影详情并进行收藏预定、查看电影资讯、在线客服、管理个人订单等。 管理员角色:登录后台、管理电影类型、管理放映厅信息、管理电影信息、管理用户信息、管理订单等。…...
Java 面试笔记 - Java基础
1 、JDK、JRE 和 JVM 是 Java 开发与运行环境中的三个核心组件,它们之间的关系和区别如下: 1. JDK (Java Development Kit) 定义:JDK 是 Java 开发工具包,包含了开发 Java 应用程序所需的所有工具和库。包含内容: 编…...
基于MFC实现的键盘电子乐器演奏程序
基于MFC实现的键盘电子乐器演奏程序设计 1.项目简介 需要连接西电微机原理实验室提供的 QTH9054 微机试验箱,使用其蜂鸣器发声,若不连接,程序会直接播放 mp3 文件模拟钢琴声。 请在 release 处下载编译好的 exe 文件运行,如需计…...
支持批量导出的软件,效率拉满!
今天给大家分享一款超实用的软件,它能帮你批量导出PPT里的图片,简直是提升工作效率的神器! PPT转jpg PPT逐页导出为图片 这款软件超级简单易用,打开就能直接上手,不需要复杂的设置。 这个软件有三种功能, …...
AI前端开发:职业晋升的加速器
在数字经济时代,前端开发领域正在经历一场由人工智能 (AI) 技术驱动的深刻变革。掌握AI技能,已不再是锦上添花,而是成为前端工程师职业晋升的关键竞争力。本文将探讨AI写代码工具等AI技术如何重塑前端开发职业路径,以及如何通过学…...
在mfc中使用自定义三维向量类和计算多个三维向量的平均值
先添加一个普通类, Vector3.h, // Vector3.h: interface for the Vector3 class. // //#if !defined(AFX_VECTOR3_H__53D34D26_95FF_4377_BD54_57F4271918A4__INCLUDED_) #define AFX_VECTOR3_H__53D34D26_95FF_4377_BD54_57F4271918A4__INCLUDED_#if _MSC_VER > 1000 #p…...
RK3588配置成为路由器
文章目录 前言一、配置netplan二、安装hostapd1.创建hostapd.conf文件2.安装软件3.修改启动文件4.修改/etc/default/hostapd 文件 三、安装dnsmasq服务四、配置NET及重启验证五、常见问题总结 前言 RK3588开发板有两个网口,一个无线网卡。我需要配置为家用路由器模…...
力扣-回溯-40 组合总和Ⅱ
思路 需要实现树枝层面的去重,利用use数组来判别,如果前一个节点已经使用了,说明这是在往深处遍历了,允许重复,如果前一个节点没有使用且值相同的话,说明是在树枝上重复了 代码 class Solution { public…...
深入理解 Rust 中的 `Box<T>`:堆上的数据与递归类型
1. Box<T> 的基础知识 1.1 堆与栈的分工 在默认情况下,Rust 会将变量存储在栈上。然而,栈的空间有限,且对于大小未知或极大的数据来说,栈并不适用。使用 Box<T>,我们可以将数据存放在堆上,而…...
js原型和原型链,到底咋回事?
js原型和原型链,到底咋回事? js原型的原理 在 JavaScript 里,每个对象都有一个“隐藏的小伙伴”,这个“小伙伴”就是原型。可以把原型想象成一个模板或者一个仓库,对象能从它这个“小伙伴”那里借用一些属性和方法。…...
深入理解IP地址与端口:网络通信的基石
深入理解IP地址与端口:网络通信的基石 文章大纲 网络通信基础概念 1.1 什么是网络通信1.2 OSI模型与TCP/IP模型1.3 数据包传输原理 IP地址深度解析 2.1 IP地址定义与作用2.2 IPv4与IPv6对比2.3 子网划分与CIDR表示法2.4 公网IP与私网IP2.5 特殊IP地址详解 端口机…...
ubuntu系统本地部署deepseek
1、安装ollama 用Ollama部署deepseek模型,官网地址:https://ollama.com/download 根据官网给出的命令直接安装(安装linux版本) curl -fsSL https://ollama.com/install.sh | sh2、安装deepseek-r1模型 我这里用了8b,…...
nginx ngx_http_module(10) 指令详解
nginx ngx_http_module(10) 指令详解 nginx 模块目录 nginx 全指令目录 一、目录 1.1 模块简介 ngx_http_v2_module:HTTP/2支持模块,允许Nginx通过HTTP/2协议与客户端进行通信。HTTP/2带来了许多性能优化,如多路复用、头部压缩和服务器推…...
rman 备份恢复1
前提: rman用户必须具有sysdba权限 使用常用连接方式如下: rman target / rman target sys/oracle rman target sys/oracleprod1 catalog dav/oracledav_db 一个rman连接会产生两个进程,action字段为空的就是rman的监控进程,另…...
BeautifulSoup、lxml/XPath和正则表达式在数据爬取中的适用场景
在数据爬取中,BeautifulSoup、lxml/XPath和正则表达式的适用场景各有侧重,具体选择需根据数据特征和需求权衡: 1. BeautifulSoup(结合CSS选择器) 适用场景 简单结构页面:标签层级清晰、属性固定的HTML页面…...
Python装饰器本质250220
定义一个函数,在不修改这个函数的代码的情况下,让函数执行前后会有新的内容加入 def func():print("func")return def outer():def inner():print("new code before")func()print("new code after")returnreturn inner f…...
实时、分时、半实时半分时操作系统
在操作系统中,实时、分时、半实时半分时是三种不同的调度策略,它们决定了系统如何分配和管理CPU资源。以下是它们的定义和举例: 1. 实时操作系统(RTOS, Real-Time Operating System) 定义:实时操作系统是…...
玩转Docker | 使用Docker部署本地自托管reference速查表工具
玩转Docker | 使用Docker部署本地自托管reference速查表工具 前言一、Reference介绍Reference简介主要特点二、系统要求环境要求环境检查Docker版本检查检查操作系统版本三、部署reference服务下载镜像创建容器检查容器状态检查服务端口安全设置四、访问reference应用五、测试与…...
基于springboot校园健康系统的设计与实现(源码+文档)
大家好我是风歌,今天要和大家聊的是一款基于springboot的园健康系统的设计与实现。项目源码以及部署相关请联系风歌,文末附上联系信息 。 项目简介: 基于springboot校园健康系统的设计与实现的主要使用者管理员具有最高的权限,通…...
孤独症项目(1)
年也过了,也不能一直玩,该学习还是要学习。 过年前我算是把环境配置好,然后把项目跑起来了,现在的问题是我看不懂这个代码什么意思 代码还是要一行一行看,每一行都看懂了,全文自然就知道了 1 from pathlib…...
DeepSeek 冲击(含本地化部署实践)
DeepSeek无疑是春节档最火爆的话题,上线不足一月,其全球累计下载量已达4000万,反超ChatGPT成为全球增长最快的AI应用,并且完全开源。那么究竟DeepSeek有什么魔力,能够让大家趋之若鹜,他又将怎样改变世界AI格…...
《被讨厌的勇气》(七)
1.共同体感觉是幸福的人际关系的最重要的指标。 2.把对自己的执著变成对他人的关心。 3.不能进行“课题分离”、一味拘泥于认可欲求的人也是及其以自我为中心的人。 4.一味在意“他人怎么看”的生活方式正式只关心“我”的自我中心式的生活方式。 5.别人并不是为了满足你的期待…...
【Word转PDF】在线Doc/Docx转换为PDF格式 免费在线转换 功能强大好用
在日常办公和学习中,将Word文档转换为PDF格式的需求非常普遍。无论是制作简历、撰写报告还是分享文件,都需要确保文档格式在不同设备上保持一致。而小白工具的“Word转PDF”功能正是为此需求量身打造的一款高效解决方案。 【Word转PDF】在线Doc/Docx转换…...
SpringCloud面试题----eureka和zookeeper都可以提供服务注册与发现的功能,请说说两个的区别
dEureka 和 Zookeeper 都可以提供服务注册与发现的功能,它们的区别主要体现在以下几个方面: 设计理念 Eureka:是基于 RESTful 风格设计的,强调简单、轻量级,旨在为微服务架构提供一种易于使用的服务发现解决方案,注重服务的可用性和灵活性。Zookeeper:最初是为分布式协…...
Matplotlib中strpdate2num()函数报错的解决方法
在Matplotlib绘图时,有时会从文件中读取形如“2025/2/20”格式的日期数据,在读取了日期数据后,会通过Matplotlib.dates.strpdate2num()函数将日期格式变为浮点数进行绘制。 1 matplotlib.dates不再支持strpdate2num()函数 使用matplotlib.d…...