首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

技术分享 | kill掉mysqld_safe进程会影响mysqld进程?

1、背景 公司内部看到一则问题 1、kill -9 mysqld_safe 进程 2、systemd 检测到 mysqld_safe 进程不存在后,重新拉起 mysqld_safe 进程 3、mysqld_safe...mysqld_safe 是会话首进程,kill -9 mysqld_safe,导致组中所有进程被 kill systemd 检测到 mysqld_safe 异常退出,Restart=on-failure...触发重新拉起 mysqld_safe mysqld_safe 拉起子进程 mysqld 3、mysqld_safe 命令启动 1)、使用 mysqld_safe 启动数据库 [greatsql@greatsql...的 PID=mysqld 的 PPID,说明 mysqld_safemysqld 的父进程 3)、kill -9 mysqld_safe 进程,并再次查看进程信息 [greatsql@greatsql...命令启动,kill 父进程(非会话首进程),不会导致子进程退出;重新启动父进程,报错子进程已存在 可以使用mysqld_safe命令启动 + 改造mysqld_safe脚本,实现【启、停mysqld_safe

40830
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【MySQL】MySQL配置文件分组及几种启动方式

    程序名 类别 能读取的组 mysqld 服务器 [mysqld]、[server] mysqld_safe 服务器 [mysqld]、[server]、[mysqld_safe] mysql.server...使用 mysql.server 命令启动后,实际上启动的是一个 mysqld_safe 进程和一个它的 mysqld 子进程。...在一些 Linux 平台中,使用 RPM 或 Debian 包安装的方式,mysqld_safe没有什么实际作用,所以也就不需要它。...同理,mysql.server 是间接调用 mysqld_safe 的,所以在我的虚拟测试机的环境中也没有 mysql.server 这个命令。...总结 今天的内容非常基础,但是越是基础的东西反而越容易被大家忽略,就拿我来说,没有学习之前我真的只是大概知道 [mysqld]、[mysql]、[server] 这三个配置,其它的真的一点印象都没有

    12710

    MySQL关闭,kill还是kill -9 ?

    3、mysqld是真正的mysql服务进程 一般我们通过service mysql.server start来启动MySQL进程,或者通过手工mysqld_safe命令行的办法来启动MySQL进程,启动完成的进程...进程; 有一个pid为31513的mysqld进程,mysqld进程的父进程是30344这个mysqld_safe进程 此时我们利用kill命令停止mysqld进程,怎么做???...,而mysqld_safe这个守护进程,没有mysqld进程再度拉起。...: 1、使用kill命令,kill掉mysqld进程,mysqld_safe不会自动拉起mysqld进程; 2、使用kill -9 命令,kill掉mysqld进程,mysqld_safe会自动拉起mysqld...如果我们打开mysqld_safe文件,还可以看到如下的命令: while true do xxxx if $dont_restart_mysqld; then if test !

    3.3K10

    MySQL之my.cnf配置文件

    之前没有仔细研究过my.cnf文件,今天有时间研究了一下my.cnf中的一些概念,这里简单整理如下,如果有什么问题,还请大家指出。...mysql.server通过向服务器发送一个信号来停止它,也可以使用mysqladmin shutdown命令来停止服务器,如果你使用源码或者二进制格式安装mysql(没有自动安装mysql.server...脚本支持下面这些选项;一旦指定,它们必须放在配置文件中,不能放到命令行中(mysql.server支持的命令行参数只有start和stop); --basedir mysql安装目录; --datadir...它是mysqld的父进程,它调用mysqld启动数据库服务,并在启动MySQL服务器后继续监控其运行情况,并在其死机时重新启动它,当我们开启mysqld_safe命令的时候,可以防止mysql服务的意外终止...我们发现杀掉mysqld_safe之后,只剩下进程号为2288的mysqld进程了,并没有生成新的mysqld_safe进程,这个时候,在再次杀掉mysqld进程2288,结果如下: ?

    4.6K30

    MySQL之my.cnf配置文件

    mysql.server通过向服务器发送一个信号来停止它,也可以使用mysqladmin shutdown命令来停止服务器,如果你使用源码或者二进制格式安装mysql(没有自动安装mysql.server...这个脚本),你可以手动安装; 这个脚本在mysql安装目录下的support-files目录里边或者在源码包里边;为了能使用service mysqld start命令启动mysql服务,此时需要做的是将...脚本支持下面这些选项;一旦指定,它们必须放在配置文件中,不能放到命令行中(mysql.server支持的命令行参数只有start和stop); --basedir mysql安装目录; --datadir...,它是mysqld的父进程,它调用mysqld启动数据库服务,并在启动MySQL服务器后继续监控其运行情况,并在其死机时重新启动它,当我们开启mysqld_safe命令的时候,可以防止mysql服务的意外终止...之后,只剩下进程号为2288的mysqld进程了,并没有生成新的mysqld_safe进程,这个时候,在再次杀掉mysqld进程2288,结果如下: !

    96520

    MySQL的启动原理

    MySQL的启动原理 1 mysql.server、mysqld_safemysqld 我们知道mysql.server,mysqld_safemysqld都是可以用来启动mysql服务,他们之间是有区别的...这三个命令中,其中mysql.server和mysqld_safe是shell脚本写的,我们可以打开来查看里面的内容。...我们打开mysqld_safe这个脚本可以发现以下几点: 第一、mysqld_safe程序调用mysqld程序来启动mysql服务 第二、my.cnf配置文件中的[mysqld_safe]部分中的参数会覆盖...local/mysql/etc/my.cnf ~/.my.cnf 顺序如下,其中,后面的文件参数会覆盖前面的参数,这也就能解释为什么有时候我们已经在my.cnf中更改了相关的配置文件参数,但是参数貌似并没有生效...--initialize-insecure 没有root密码生成;

    2.1K10

    # 示例环境

    # 示例环境 Centos8,MySQL 5.7.28 由于MySQL官网还没有放出Centos8的安装包,我这里使用的是Centos7的tar包进行安装,不过我也尝试了Centos7的RPM包安装很顺畅没有任何问题...# 启动mysql服务 使用mysqld_safe启动 mysqld_safe --user=mysql 1 使用service mysql start启动 内部还是使用的mysqld_safe...所以暂时只能使用mysqld_safe方式来启动mysql服务: mysqld_safe --defaults-file=/root/mysql/my1.cnf --user=mysql mysqld_safe...命令来帮助我们解决这个问题,我们不再需要同时定义多个my.cnf文件,只要一个就够了,配置文件如下: [mysqld_multi] mysqld=/usr/local/mysql/bin/mysqld_safe...:mysql服务 mysqld_safe: mysqld的守护进程,当使用kill -9 mysqld_pid关闭mysqld时,该守护进程会自动重启mysqld mysqld_multi:管理多个mysqld

    1.3K10

    如何在Ubuntu操作系统上配置MySQL服务器?

    如果我们没有看到绑定地址条目,应该将一个放入mysqld类别以帮助控制对服务器的访问:   [mysqld]   $ bind-address = 127.0.0.1   请记住在设置数据库用户时考虑客户端的主机名...五、mysqldmysqld_safe   在幕后,有两个版本的MySQL服务器,mysqldmysqld_safe. 两者都读取相同的配置部分。...但是,mysqld_safe启用更多安全功能的启动可以更轻松地从故障排除中恢复。   两者mysqld都读取mysqldmysqld_safe部分中的配置条目。...如果包含mysqld_safe部分,则只有mysqld_safe使用这些值。   默认情况下,MySQL服务会启动mysqld_safe,这是合适的。   ...如果您在脚本中编写这些命令,则可以将密码放在引号中,-p两者之间没有空格,类似于以下示例:   $ mysql -u root -p"password" -e "FLUSH TABLES WITH READ

    6.4K30

    MySQL多实例踩坑

    读取配置文件和启动的一些原理整理如下: MySQL读取配置文件的顺序是: /etc/my.cnf > /etc/mysql/my.cnf > /usr/etc/my.cnf > ~/.my.cnf 这个顺序可以通过命令来验证...mysqldmysqld_safe这两个进程存在。...而mysqld_multi用来启动多实例,也是通过先调用mysqld_safemysqld来启动mysql的 你去分析启动脚本,也就是上面这么调用的 ?...:mysqld_safe程序调用mysqld程序来启动mysql服务,[mysqld_safe]会覆盖mysqld部分中的参数 mysqld_multi会读取配置文件中的[mysqld_muti],[mysqldN...]下面的参数,N需要是一个整数,建议用端口号表示,该部分的配置会覆盖[mysqld]部分中的配置 在mysqld进程挂掉的时候,mysqld_safe进程会监测到并重新将mysqld启动起来

    1.3K20

    linux命令mysql启动,linux中mysql启动服务命令

    linux的mysql启动服务命令 linux的mysql启动服务命令1:使用mysqld启动、关闭MySQL服务 mysqld是MySQL的守护进程,我们可以用mysqld来启动、关闭MySQL服务,...: Shutdown complete linux的mysql启动服务命令2:使用mysqld_safe启动、关闭MySQL服务 很多时候,人们会纠结mysqldmysqld_safe的区别....其实mysqld_safe是一个脚本,一个非常安全的启动、关闭MySQL服务的脚本。它实际上也是调用mysqld来启动、关闭MySQL服务。...关于mysqld_safe,可以参考官方文档mysqld_safe — MySQL Server Startup Script linux的mysql启动服务命令3:使用mysql.server启动、关闭...其实/etc/init.d/mysql也是一个脚本,它调用mysqld_safe脚本来启动MySQL服务。

    46.2K50

    MySQL共存,_NFV-INF003v环境中实现多版本MySQL5.7与MySQL8.0,MySQL5.6

    将安全启动命令添加到/etc/init.d目录下 cp /usr/local/mysql/bin/mysqld_safe /etc/init.d/mysqld_safe 这样可以通过/etc/init.d.../mysqld_safe start/stop/restart 即可进行启动终止与重启mysql服务。...接下来启动MySQL实例 /etc/init.d/mysqld_safe start 不出意外可以正常启动,接着我们登录 mysql -u root -p 接下来会让我们输入密码,把刚刚的默认密码输入即可...上面的安装,我们是没有涉及到配置文件的信息的,即my.cnf 因此,上面是最基础的安装,生产环境肯定是不能用的,仅用于演示多版本共存的问题。接下来我们进行5.6版本的安装。...mysqld_multi] mysqld = mysqld_safe log = /usr/local/mysql/multi.log [mysqld56] basedir=/usr/local/

    38030

    MySQL共存,_NFV-INF003v环境中实现多版本MySQL5.7与MySQL8.0,MySQL5.6

    将安全启动命令添加到/etc/init.d目录下 cp /usr/local/mysql/bin/mysqld_safe /etc/init.d/mysqld_safe 这样可以通过/etc/init.d.../mysqld_safe start/stop/restart 即可进行启动终止与重启mysql服务。...接下来启动MySQL实例 /etc/init.d/mysqld_safe start 不出意外可以正常启动,接着我们登录 mysql -u root -p 接下来会让我们输入密码,把刚刚的默认密码输入即可...上面的安装,我们是没有涉及到配置文件的信息的,即my.cnf 因此,上面是最基础的安装,生产环境肯定是不能用的,仅用于演示多版本共存的问题。接下来我们进行5.6版本的安装。...] mysqld = mysqld_safe log = /usr/local/mysql/multi.log [mysqld56] basedir=/usr/local/mysql56 datadir

    77200

    MySQL 数据库的启动与关闭

    MySQL数据库服务器通常指的的是mysqld,而命令行mysql则是mysql客户端程序,这两个概念通常容易混淆。...1、直接使用mysqld启动   mysqld 即是mysql服务器,可以调用该命令直接启动mysql服务器   mysqld 从配置文件中读取[mysqld]以及[server]选项组的内容,也可以通过直接在命令行跟随参数...如果mysqld进程异常终止,mysqld_safe将自动重启mysqld   mysql_safe 从配置文件中读取[mysqld],[server],[mysqld_safe]等选项,为保证向后兼容...b、可以通过三种方式启动mysql服务器(mysqldmysqld_safe,service mysql start)   c、对于mysqld_safe,service mysql start方式,...总是通过调用mysqld_safe来启动mysqld进程,以防止mysqld意外宕掉而提供重启服务。

    5.8K40

    从零开始学MYSQL - MYSQL安装

    mysql> ❝关于绝对路径和相对路径启动问题: 绝对路径:如果你的系统环境变量里面访问不到你的应用程序命令,这时候就需要进入到相关的目录执行命令,比如上面我没有配置环境变量就需要进入到C:\Program...❞ mysqld_safemysqld_safe」 是一个启动脚本,在间接的调用「mysqld」 ,同时「监控进程」,使用 mysqld_safe 启动服务器程序时,会通过监控把出错的内容和出错的信息重定向到一某个文件里面产生出错日志...但是个人实践之后找不到,其实原因是「windows没有这个命令」的,关于更多mysqld_safe命令的解释可以看看mysql的官方网站:https://dev.mysql.com/doc/refman...在这些平台上可能被认为没有必要所有没有安装mysql.server和mysqld_safe。.../support-files/mysql.server,另外这个「命令会间接的调用mysqld_safe」,我们使用下面的命令就可以直接启动服务: mysql.server start ❝ 如果操作系统在安装之后没有构建相应的链接文件

    57910

    wget 安装yum_没有yum命令

    今天在虚拟机中准备安装一个软件,使用wget命令时候,发现wget命令不存在,wget: command not found yum安装wget so,须要使用简单的方式在虚拟机安装wget命令,继而使操作可以继续进行...虚拟机安装软件有多种方式,在线安装是一个比较便捷的方式,使用yum 命令 使用命令 yum -y install wget 输入命令后,系统自动进入安装过程,在安装完成后,会有complete标识,并退出到输入栏..., 继续使用wget命令,显示正常 yum命令 yum( Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 SUSE 中的 Shell 前端软件包管理器...yum 提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。

    5.5K130

    mysql停止命令 停止mysql服务命令

    如果没有将mysql注册为系统服务,那么我们可以使用MySQL为我们提供的一些工具来开启,关闭,重启mysql。当然,mysql服务脚本对mysql的操作也是调用这些工具来完成的。...image.png 如果我们按照上面的操作将mysql注册为系统服务的话,使用service来开启,关闭,重启mysql非常方便,命令如下: #重启 service mysqld restart #开启...service mysqld start #关闭 service mysqld stop 或者执行运行服务脚本mysqld或者mysql.server: #启动 /etc/inint.d/mysqld...或者使用mysqld_safe来启动mysql: mysqld_safe --user=mysql & 关闭mysql: mysqladmin -u[username] -p[password] shutdown...所以没有直接重启的命令,还是乖乖的先关闭,再启动吧! 当然,利用mysql提供的工具来控制mysql的开启和关闭,应该还有其它的方法,我目前还不要太清楚,有知道的请留言告知,万分感谢!

    19K40

    ERROR 1153 (08S01): Got a packet bigger than max_allowed_packet bytes怎么处理

    Navicat for Mysql导入sql文件出现ERROR 1153 (08S01): Got a packet bigger than 'max_allowed_packet' bytes,有一些文章没有导入成功...,重新导了几次还是不行,后面就想着是不是因为那里设置不对了,就试着把下图中的两个勾去掉,导入成功了,没有提示错误了。...这个方法可能不是好的解决办法,还不确定文章有没全部导入,比较好的处理方法是要设置导入数据库文件大小,因为没有调整mysql的默认配置,默认最大只能处理16M的文件,而ytkah要导入的数据有16.5M。...重启命令如下: 一、启动方式  1、使用 service 启动:service mysqld start  2、使用 mysqld 脚本启动:/etc/inint.d/mysqld start  3、使用...safe_mysqld 启动:safe_mysqld&  二、停止  1、使用 service 启动:service mysqld stop  2、使用 mysqld 脚本启动:/etc/inint.d

    1K80
    领券