mysql pid_mysql pid文件是什么用途

本文介绍了MySQL中PID文件的作用及其实现原理。详细解释了PID文件如何帮助避免同一个数据库实例被重复启动,特别是在不同端口使用相同数据文件的情况下。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

展开全部

MySQL pid 文件记录的是当前 mysqld 进程的 pid,pid 亦即 Process ID。

可以通过如下的例子查62616964757a686964616fe58685e5aeb931333361316634看:$ /etc/init.d/mysqld start

Starting MySQL. SUCCESS!

$ ll /data/mysql/centos.pid

-rw-rw---- 1 mysql mysql 5 Apr  8 09:16 /data/mysql/centos.pid

$ cat /data/mysql/centos.pid

1598

$ ps -ef | grep mysql | grep -v grep

root      1476     1  0 09:16 pts/0    00:00:00 /bin/sh \

/usr/local/mysql/bin/mysqld_safe \

--datadir=/data/mysql \

--pid-file=/data/mysql/centos.pid

mysql     1598  1476  0 09:16 pts/0    00:00:00 /usr/local/mysql/bin/mysqld \

--basedir=/usr/local/mysql \

--datadir=/data/mysql --user=mysql \

--log-error=/data/mysql/centos.err \

--pid-file=/data/mysql/centos.pid \

--socket=/tmp/mysql.sock \

--port=3306

1、未指定 pid 文件时,pid 文件默认名为 主机名.pid,存放的路径在默认 MySQL 的数据目录。通过 mysqld_safe 启动 MySQL 时,mysqld_safe 会检查 pid 文件,如果 pid 文件不存在,不做处理;如果文件存在,且 pid 已占用则报错 "A mysqld process already exists",如果文件存在,但 pid 未占用,则删除 pid 文件。

2、查看 MySQL 的源码可以知道,mysqld 启动后会通过 create_pid_file 函数新建 pid 文件,通过 getpid() 获取当前进程 pid 并将 pid 写入 pid 文件。

3、因此,通过 mysqld_safe 启动时, MySQL pid 文件的作用是:在数据文件是同一份,但端口不同的情况下,防止同一个数据库被启动多次。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值