多线程并发信号量控制逻辑
1 | /**/ |
1 | /**/ |
可根据命令来查看对应的版本
kubectl version 、
kubeadm version 、
kubelet –version、
Kubeadm 是一个提供了 kubeadm init 和 kubeadm join 的工具, 作为创建 Kubernetes 集群的 “快捷途径” 的最佳实践;
Kubelet 是 Kubernetes 集群中的一种重要的核心组件,运行在每一个节点上,负责管理和执行在节点上运行的容器;
Kubectl 是一个用于与运行在 Kubernetes 集群上的容器化应用进行交互和管理的命令行工具。
详细的组件工具介绍可参考 kubernetes 的官方文档
1 | sudo yum install -y kubelet-1.18.0 kubeadm-1.18.0 kubectl-1.18.0 |
1 | sudo apt-get update |
TIPS:K8S集群还未拉起,故这里的kubelet是无法启动的,等master初始化时会自动拉起。
在所有服务器上安装 Kubernetes 的三个主要组件:kubelet、kubeadm 和 kubectl。
kubelet 是在集群中每个节点上运行的主要节点代理,它确保容器都运行在 Pod 中。
kubeadm 是一个工具,用于安装、初始化和管理 Kubernetes 集群。
kubectl 是 Kubernetes 命令行工具,用于与 Kubernetes 集群进行交互。
安装完成后,
可以通过命令 kubeadm version、kubectl version 和 kubelet –version
来验证这些组件是否安装成功。
验证集群状态
在主节点上,通过命令 kubectl get nodes 来查看集群中的节点状态。
所有节点的状态应该都是 Ready,表示它们已经成功加入集群并且可以正常工作。
你还可以通过命令 kubectl get pods –all-namespaces 来查看集群中所有 Pod 的状态,
确保控制平面组件和 Pod 网络插件的 Pod 都在正常运行。
Welcome to Hexo! This is your very first post. Check documentation for more
info. If you get any problems when using Hexo, you can find the answer
in troubleshooting or you can ask me
on GitHub.
1 | $ hexo new "My New Post" |
More info: Writing
1 | $ hexo server |
More info: Server
1 | $ hexo generate |
More info: Generating
1 | $ hexo deploy |
More info: Deployment
确认已安装的 MongoDB 家族版本
1 | rpm -qa | grep mongodb-org |
典型输出:
1 | mongodb-org-server-8.2.0-1.el8.x86_64 |
卸载
1 | rpm -e mongodb-org-server-8.2.0-1.el8.x86_64 |
输出
1 | Removed /etc/systemd/system/multi-user.target.wants/mongod.service. |
https://mobaxterm.mobatek.net/
ResetMasterPassword.zip
字体库缺失
如果在 Ubuntu 系统中使用 Java Web 项目导出 Excel 文件时出现异常,可能是系统缺少字体库。
可以通过以下命令安装字体库:
1 | sudo apt install fontconfig -y |
安装完成后,重启服务器
遇到 “ERROR at line 13404: Unknown command ‘’’” 错误时,这通常是由于字符集问题导致的。为了解决在 MySQL
导入数据时的问题,可以尝试以下几种方法:
指定字符集:在导入命令中添加 --default-character-set=utf8
参数,以确保字符集的一致性。例如:
1 | mysql -u root -h 127.0.0.1 -P 33067 --default-character-set=utf8 mujitokyo_dev<mujitokyo_dev.sql |
这样可以避免因字符集不匹配导致的数据导入失败
。
检查文件编码:确保 SQL 文件的编码格式与 MySQL 服务器的编码格式一致。可以使用文本编辑器或命令行工具(如 )来转换文件编码。
使用特定编码导出:在导出数据库时,就使用特定编码的形式导出。例如,如果需要导入的数据库环境编码是utf8,那么在导出时就使用utf8格式。
调整命令行客户端编码:在命令行客户端连接服务器时指定编码,例如:
1 | mysql -uroot -h192.168.1.101 -p --default-character-set=utf8 |
这可以避免前面遇到的错误
。
max_allowed_packet
设置:如果导入的 SQL 文件较大,可能需要调整 MySQL 的 max_allowed_packet
设置,以允许更大的数据包传输你可以将 --skip-grant-tables
选项添加到 MySQL 的配置文件中,以便在每次启动时自动应用此设置。然而,需要注意的是,--skip-grant-tables
选项会跳过权限表的加载,这意味着所有用户都可以无需密码登录到 MySQL
服务器,这会带来重大的安全风险。因此,通常只在进行特定维护任务时临时使用此选项。
--skip-grant-tables
添加到配置文件找到 MySQL 配置文件: MySQL 的配置文件通常名为 my.cnf
或 my.ini
,位于 /etc/mysql/
、/etc/mysql/mysql.conf.d/
或 MySQL 安装目录下。
编辑配置文件: 打开配置文件,找到 [mysqld]
部分,并添加 --skip-grant-tables
选项。例如:
1 | [mysqld] |
保存并关闭文件。
重启 MySQL 服务: 重启 MySQL 服务以应用更改:
1 | sudo systemctl restart mysql |
--skip-grant-tables
的注意事项--skip-grant-tables
会跳过权限检查,任何用户都可以无需密码登录到 MySQL--skip-grant-tables
--skip-grant-tables
完成维护任务后,应立即从配置文件中移除 --skip-grant-tables
选项,并重启 MySQL 服务以恢复正常的权限检查:
1 | 2025-09-01T01:38:07.723468Z 0 [ERROR] InnoDB: Ignoring the redo log due to missing MLOG_CHECKPOINT between the checkpoint 1108276937 and the end 1108281882. |
从你提供的日志来看,
MySQL 在启动时遇到了与 InnoDB 存储引擎相关的问题,导致无法正常启动。
以下是日志中显示的几个关键问题及其可能的原因:
1 | 2025-09-01T01:38:07.723468Z 0 [ERROR] |
MLOG_CHECKPOINT
,导致无法正确恢复数据。ibdata1
或 ib_logfile*
)可能被损坏或丢失。**ib_logfile\*
**:这些是 InnoDB 的重做日志文件,用于恢复操作
在某些情况下,可以尝试删除一些临时文件或日志文件,但需要谨慎操作:
ib_logfile\*
**:如果这些文件损坏,可以尝试删除它们,然后重新启动 MySQL。MySQL 会自动重新创建这些文件。但请注意,这可能会导致一些未提交的事务丢失。\*.err
**:这是 MySQL 的错误日志文件,删除它不会影响数据库的运行,但建议先备份,以便后续查看错误信息。