【mysql笔记】mysql启动脚本中的reload实现原理(kill -HUP pid)

Linux进程管理三剑客:ps、kill、nice原理与生产实战 Linux进程管理是操作系统资源调度的核心能力,其底层依托于/proc虚拟文件系统、信号通信机制和CFS完全公平调度器。ps命令本质是读取/proc下的进程状态快照,用于观测;kill并非终止操作而是发送信号(如SIGTERM/SIGKILL),实现进程间异步通信;nice则通过调整静态优先级影响CPU时间片分配权重。这三者共同构成‘观测—干预—预防’的闭环治理体系,在高并发Web服务、数据库运维、自动化脚本及SRE场景中至关重要。本文深入解析其内核机制、参数组合与故障排查逻辑,尤其聚焦ps线程视图、kil 阅读详情
kill -HUP pid 
pid 是进程标识。如果想要更改配置而不需停止并重新启动服务,请使用该命令。在对配置文件作必要的更改后,发出该命令以动态更新服务配置。

根据约定,当您发送一个挂起信号(信号 1 或 HUP)时,大多数服务器进程(所有常用的进程)都会进行复位操作并重新加载它们的配置文件。


【案例】

在 不重启sshd服务的情况下,动态把sshd监听的端口号由220 改为22.

[root@test01 mysql]# netstat -nltp | grep ssh | grep -v grep
tcp        0      0 0.0.0.0:220                 0.0.0.0:*                   LISTEN      22634/sshd          
tcp        0      0 :::220                      :::*                        LISTEN      22634/sshd          
[root@test01 mysql]# grep 220 /etc/ssh/sshd_config
Port 220
[root@test01 mysql]# sed -i 's/^Port 220/Port 22/g' /etc/ssh/sshd_config
[root@test01 mysql]# egrep '^Port' /etc/ssh/sshd_config                           
Port 22
[root@test01 mysql]# ps -ef|grep sshd|grep -v grep|grep usr|awk '{print $2}'|xargs kill -HUP
[root@test01 mysql]# netstat -nltp | grep ssh | grep -v grep                                                  
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      22653/sshd          
tcp        0      0 :::22                       :::*                        LISTEN      22653/sshd          
[root@test01 mysql]#


【案例】

Mysql服务启动脚本中的reload、force-reload 参数。

[root@test01 mysql]# /etc/init.d/mysql
Usage: mysql  {start|stop|restart|reload|force-reload|status}  [ MySQL (Percona Server) options ]

来自/etc/init.d/mysql:

  'reload'|'force-reload')
    if test -s "$mysqld_pid_file_path" ; then
      read mysqld_pid <  "$mysqld_pid_file_path"
      kill -HUP $mysqld_pid && log_success_msg "Reloading service MySQL (Percona Server)"
      touch "$mysqld_pid_file_path"
    else
      log_failure_msg "MySQL (Percona Server) PID file could not be found!"
      exit 1
    fi
    ;;

Linux进程管理三剑客:ps、kill、nice原理与实战 进程管理是操作系统核心能力之一,本质是内核对任务调度、资源分配和信号交互的统一控制。其底层依赖/proc文件系统快照读取、信号机制(如SIGTERM/SIGKILL)及CFS调度器的vruntime权重算法。技术价值在于实现资源可见性、可控终止与动态优先级调节,支撑高可用服务巡检、CPU/MEM异常定位、容器化环境治理等关键场景。本文聚焦ps命令参数组合优化、kill信号语义辨析与nice值对CPU时间片的实际影响,结合生产级故障案例,揭示Linux进程管理的真实逻辑。 阅读详情

相关推荐

Linux进程管理:从ps/kill到systemd的优雅治理

进程是操作系统最基础的执行单元,其本质是内核task_struct定义的可调度实体,承载CPU时间、内存空间与信号处理等核心资源。理解进程状态(R/S/D/Z)、父子关系(PPID/PGID)及信号机制(SIGTERM/SIGKILL),是实现稳定运维的前提。ps命令底层依赖/proc文件系统实时快照,kill实为信号投递而非强制终止——这决定了优雅退出与暴力终止的根本差异。现代Linux进程管理已超越命令行技巧,依托systemd声明式服务控制与cgroups v2资源硬隔离,实现CPU、内存、IO的精准

weixin_33826609的博客 442

vscode能远程连接虚拟机吗_配置vscode连接远程服务器

今年5月左右微软给vscode加了新操作,有了官方的远程连接的插件,不过好像现在只在insider版本里提供。要安装的话直接在插件里搜索Remote,安装Remote Development这一套就行了。服务器上操作这里配置一下使用ssh key登录,相对于输密码比较安全(其实是我懒得每次都敲密码)。首先在服务器上生成一对公私钥root@itemqqSS:~# ssh-keygenGenerati...

weixin_33632843的博客 415

ps、kill、nice:Linux进程管理的三大核心命令深度解析

Linux进程管理是系统运维与开发的基石,其本质围绕进程状态观测、信号通信与资源调度三大维度展开。ps命令通过读取/proc文件系统提供进程快照,揭示R/S/D/Z/T等内核态行为;kill并非简单终止,而是基于POSIX信号协议(如SIGTERM优雅退出、SIGKILL强制回收)实现进程间异步协作;nice则作用于CFS调度器,通过nice值影响static_prio与vruntime,调控CPU时间片分配公平性。三者协同构成‘观测—干预—调优’闭环,广泛应用于服务启停、日志轮转、容器生命周期管理及性能调

weixin_30376083的博客 332

mysql中reload作用_【mysql笔记】mysql启动脚本中的reload实现原理(kill -HUP pid)

kill -HUP pidpid 是进程标识。如果想要更改配置而不需停止并重新启动服务,请使用该命令。在对配置文件作必要的更改后,发出该命令以动态更新服务配置。根据约定,当您发送一个挂起信号(信号 1 或 HUP)时,大多数服务器进程(所有常用的进程)都会进行复位操作并重新加载它们的配置文件。【案例】在 不重启sshd服务的情况下,动态把sshd监听的端口号由220 改为22.[root@test...

weixin_36118025的博客 1051

Ubuntu 22.04 日志轮转实战:logrotate 配置原理与生产级避坑指南

日志轮转是 Linux 系统稳定运行的基础能力,本质是通过时间窗口、文件大小和保留数量三重策略,对持续增长的文本日志(如 nginx、mysql、syslog)实施自动化归档、压缩与清理。其核心原理依赖原子性 rename 切换与安全截断机制,避免 shell 脚本轮询带来的竞态与 I/O 风险。在 Ubuntu 22.04 中,logrotate 作为默认集成的声明式工具,与 systemd-journald 形成互补:前者专管 /var/log 下可读、可 grep 的业务文本日志生命周期,后者负责内核

abxlep7702的博客 541

Nginx开机自启动配置全解析:Systemd与SysVinit实战指南

在Linux服务器运维中,服务管理是保障系统稳定运行的核心基础。其原理在于操作系统通过初始化系统(如Systemd或SysVinit)对后台进程进行生命周期管理,实现服务的启动、停止和状态监控。这一机制的技术价值在于提升服务的可靠性和运维自动化水平,尤其在服务器重启等场景下,确保关键服务能自动恢复。应用场景广泛覆盖Web服务部署、反向代理配置及生产环境高可用架构。本文将聚焦Nginx这一高性能Web服务器的开机自启动配置,深入解析如何通过Systemd服务单元文件或SysVinit启动脚本,实现服务的可靠自

weixin_30245867的博客 322

MySQL权限篇之RELOAD

RELOAD,顾名思义,重载。属系统权限(个人这么认为)。 拥有该权限的用户可以使用FLUSH语句。 比如flush tables、flush logs、flush privileges等待。 D:\temp>mysql Welcome to the MySQL monitor.  Commands end with ; or \g. Your MySQL connection id i

Qiuht的技术博客 1万+

systemctl管理systemd服务与单元:原理、配置与排错实战

systemd是现代Linux系统的初始化系统和系统管理器,其核心是以unit(单元)为基本抽象的声明式服务模型。它通过systemctl提供统一控制平面,实现服务依赖解析、并行启动、状态跟踪与资源管控。相比传统SysV init,systemd具备DAG依赖图、target逻辑目标、Type进程生命周期建模等关键能力,显著提升启动性能与运维可观测性。本文深入解析.service文件结构、WorkingDirectory语义、WantedBy与Requires机制、daemon-reload触发时机等高频技

weixin_30279671的博客 376

mysql reload 命令_MySQL常用命令

原文链接:其实这个链接可以用的但是我呢写成这样了:哈哈。1、MySQL常用命令create database name; 创建数据库use databasename; 选择数据库drop database name 直接删除数据库,不提醒show tables; 显示表describe tablename; 表的详细描述select 中加上distinct去除重复字段mysqladmin drop...

weixin_30907685的博客 2068

深入理解 systemd 单元机制与 systemctl 实战原理

systemd 是现代 Linux 系统初始化和服务管理的核心框架,其以‘单元(Unit)’为基本抽象,通过声明式配置、依赖图谱和状态机驱动实现服务的并行启动、按需激活与全生命周期治理。它不仅替代了传统的 SysV init 和 chkconfig/service 命令,更构建了涵盖 service、socket、timer、target 等 12 类单元的统一资源管控体系,并深度集成 cgroup v2、journald 日志与 D-Bus IPC 机制。掌握 systemctl 的本质——即 D-Bus

weixin_33801856的博客 430

【UE5】Vosk插件实战:离线语音识别与TTS朗读全流程解析

本文详细解析了如何在UE5中利用Vosk插件实现离线实时语音转文字功能。从环境配置、插件与模型准备,到核心C++组件封装与蓝图系统搭建,提供了完整的实战教程。重点解决了离线语音识别在游戏开发中的延迟、隐私和网络依赖问题,并演示了从语音识别到TTS朗读的完整交互闭环,为开发安全、实时的语音交互应用提供可靠方案。

weixin_29021291的博客 511

service mysql reload_Linux命令service - 系统服务管理(转)

用途说明service命令用于对系统服务进行管理,比如启动(start)、停止(stop)、重启(restart)、查看状态(status)等。相关的命令还包括chkconfig、ntsysv等,chkconfig用于查看、设置服务的运行级别,ntsysv用于直观方便的设置各个服务是否自动启动。service命令本身是一个shell脚本,它在/etc/init.d/目录查找指定的服务脚本,然后调用...

weixin_34304211的博客 528

图文带你理解什么是Few-shot Learning

Few-shot Learning(少样本学习)是Meta Learning(元学习)中的一个实例1,所以在了解什么是Few-shot Learning之前有必要对Meta Learning有一个简单的认识。不过在了解什么是Meta Learning之前还是要了解一下什么是Meta。因此,阅读本文后你将对如下知识有一个初步的了解。 What is Meta What is Meta Learning What is Few-shot Learning 1. What is Meta? meta就是描述

Pr4da的博客 1万+

mysql 服务启动脚本_MySQL service启动脚本浅析(r12笔记第59天)

我们在搭建MySQL环境的时候,一般都会按照建议的标准规范来做,比如拷贝mysql.server到自启动目录下。cp -rf $basedir/support-files/mysql.server /etc/init.d/mysql然后设置MySQL自启动的服务,配置完成之后就可以运行命令service mysql.server start 来启动MySQL了。/sbin/chkconfig --...

weixin_35767900的博客 480

无人机巡检提速3倍!YOLOv8n+OpenVINO让Jetson Nano跑25FPS,还能多飞25分钟

摘要(149字): 针对无人机巡检中Jetson Nano算力不足导致的帧率低、首次推理延迟高、续航短等问题,提出YOLOv8n+OpenVINO联合优化方案: 模型轻量化:YOLOv8n参数量仅3.2M(较v8s减少71%),Jetson Nano帧率从8FPS提升至15FPS(原生),绝缘子裂纹召回率仅降3%; OpenVINO加速:AUTO模式动态分配CPU/GPU算力,首次推理延迟从500ms降至200ms,帧率再优化至25FPS; 能效提升:功耗降低40%,单次续航延长25分钟。方案已落地电力/林

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1242

Kylin V10 ARM64离线安装ffmpeg实战指南

在国产化替代浪潮下,基于银河麒麟V10和ARM架构(如飞腾、鲲鹏)的内网服务器部署音视频处理服务成为常态。由于系统默认软件源缺乏aarch64包且无法连接外网,常规yum安装方式难以奏效。本文从离线安装的通用概念出发,剖析了在Kylin V10上安装ffmpeg的三大路线及其原理,重点介绍了源码编译法,包括依赖梳理、工具链准备、编译参数配置、常见错误排查等关键环节。同时,将这套依赖管理与离线部署方法论延伸至nginx、node.js、Python库及docker等场景,帮助读者建立一套可复用的国产化系统离线

weixin_33417488的博客 148

Linux进程管理三剑客:ps、kill、nice实战精要

进程管理是操作系统资源调度的核心能力,涉及CPU时间分配、信号通信机制与运行状态监控等底层原理。Linux通过/proc文件系统提供进程实时快照,CFS调度器依据nice值动态加权CPU时间片,而kill命令本质是向进程发送可捕获或不可忽略的信号,实现优雅终止或强制干预。这些技术共同构成系统稳定性保障的关键链条,广泛应用于故障排查、性能调优与自动化运维等真实场景。本文聚焦ps进程侦察、kill信号选择与nice资源调节三大核心命令,结合生产环境高频问题,详解其协同逻辑与避坑实践。

weixin_30701575的博客 414

【DRAM存储器六十二】DDR5介绍--引脚和基本功能简介

详述DDR5与DDR4的引脚区别和DDR5基本功能

highman110的博客 525

Linux kill命令深度解析:从进程管理到信号通信的完整指南

信号是Linux系统中进程间通信的基础机制之一,它允许操作系统或用户进程向目标进程发送预定义的异步通知。其工作原理基于内核维护的进程描述符,当信号被发送时,内核会检查目标进程的信号掩码和处理函数,决定是立即传递、排队还是忽略。这一机制的技术价值在于实现了对进程行为的精细控制,避免了单纯依赖进程终止的粗暴管理方式。在应用场景上,信号广泛用于服务优雅重启、配置热重载、进程调试和作业控制等关键运维任务。本文聚焦于kill命令的实战应用,详细解读SIGTERM、SIGKILL、SIGHUP等核心信号的使用场景与差异

weixin_30298497的博客 408

YOLOv8改进---BiFPN特征融合

yolov8结合BiFPN进行改进

qq_41920323的博客 4523

【AI智能体】Codex 高级进阶使用技巧项目实战操作详解

Codex 高级进阶使用技巧项目实战操作详解

congge 1万+

openEuler源码安装MySQL

openEuler源码安装MySQL的两种方法,一、软件自带启动脚本init。二、手动配置启动脚本systemd。

a_2373179473的博客 593

工业缺陷标注要人命?我从零搭了一套自动标注系统,标注效率直接提升10倍

你是不是也深陷工业缺陷标注的无尽内耗?这不是个例,工业视觉项目落地,80%的时间和成本,都耗在了数据标注环节。普通的图像标注(猫狗分类、人脸识别),标注门槛低、规则简单、一致性要求宽松;而工业缺陷标注,是CV领域公认的地狱级难度:缺陷尺寸小到几像素、种类繁杂且非标、行业专业性极强、标注精度要求到像素级、正负样本极度不均衡,人工标注不仅效率低、成本高,更直接决定了模型的最终上限。我在工业视觉行业摸爬滚打了6年,踩遍了人工标注的所有坑,最终从零搭建了一套工业缺陷专用的闭环自动标注系统,把原来一张图30分钟的标注

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 202

Mysql8离线安装包(tar源码包&麒麟V10)

麒麟V10SP3系统离线安装MySQL8的实践方案 针对麒麟V10SP3最小化系统依赖问题复杂的现状,本文提供了基于官方tar包(8.0.45版本)的离线安装方案。关键步骤包括: 清理原有MySQL/MariaDB组件 解压安装包至/usr/local并创建软链接 创建mysql用户及数据目录 配置my.cnf文件(含字符集设置) 编写systemd服务单元文件 初始化数据库并启动服务 方案特点: 规避了RPM安装的依赖问题 包含完整的服务配置和初始化流程 已验证可在最小化系统中稳定运行 注:需自行下载官方

2604_96302949的博客 256

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

Linux服务器Tomcat启动运维指南:前台、后台与Systemd服务部署详解

在Java Web应用部署中,Tomcat作为核心的Servlet容器,其启动与管理是运维和开发的基础。理解其启动原理,关键在于进程管理与资源控制。通过不同的启动方式,可以实现从开发调试到生产部署的全生命周期管理,技术价值在于提升服务的可控性、可观测性与稳定性。在应用场景上,开发环境需要即时反馈,适合前台启动;测试与预发环境追求便捷,常用后台启动;而生产环境则必须依赖系统服务(如Systemd)实现高可用与自动化运维。本文将聚焦于**前台启动**、**后台启动**与**Systemd服务启动**这三种核心方

weixin_34275734的博客 433

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

上一篇: 【Linux案例】ssh已经建立信任,确认然提示输入密码问题的可能原因
下一篇: 【游戏行业】游戏行业-常用缩写词汇总
杰克牌辣酱
博客等级 码龄18年 26粉丝 141原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值