发布网友 发布时间:2022-04-27 03:00
共3个回答
热心网友 时间:2022-04-09 11:04
MySQL pid 文件记录的是当前 mysqld 进程的 pid,pid 亦即 Process ID。
可以通过如下的例子查看:
$ /etc/init.d/mysqld start1、未指定 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 文件的作用是:在数据文件是同一份,但端口不同的情况下,防止同一个数据库被启动多次。
热心网友 时间:2022-04-09 12:22
问题描述:[root@bogonmysql-5.1.41]#/etc/rc.d/init.d/mysqldstartStartingMySQL.Managerofpid-filequitwithoutupdatingfile.[失败]---------------------------解决法:配置的时候有一个步骤是cpsupport-files/my-medium.cnf/etc/my.cnf;就编辑my.cnf,在[mysqld]下面加上:datadir=/usr/local/mysql/data例如#TheMySQLserver[mysqld]port=3306socket=/tmp/mysql.sockskip-lockingkey_buffer_size=16Mmax_allowed_packet=1Mtable_open_cache=sort_buffer_size=512Knet_buffer_length=8Kread_buffer_s2.首先到/usr/local/mysql/data先chown-Rmysql:mysql*然后杀掉mysql进程,在启动musql就行了打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled后存盘退出重启机器试试3.4.确实一般都是my.cnf配置文件的问题/etc/my.cnf来自以下文件:如果你的内存≤M,则复制/usr/local/share/mysql/my-small.cnf为/etc/my.cnf#Thisisforasystemwithlittlememory(<=M)whereMySQLisonlyused#fromtimetotimeandit'simportantthatthemysqlddaemon#doesn'tusemuchresources.如果内存是128M,则复制/usr/local/share/mysql/my-medium.cnf为/etc/my.cnf#Thisisforasystemwithlittlememory(32M-M)whereMySQLplays#animportantpart,orsystemsupto128MwhereMySQLisusedtogetherwith#otherprograms(suchasawebserver)如果内存是512M,则复制/usr/local/share/mysql/my-large.cnf为/etc/my.cnf#Thisisforalargesystemwithmemory=512Mwherethesystemrunsmainly#MySQL.如果内存是1-2G,则复制/usr/local/share/mysql/my-huge.cnf为/etc/my.cnf#Thisisforalargesystemwithmemoryof1G-2Gwherethesystemrunsmainly#MySQL.热心网友 时间:2022-04-09 13:57
MySQL pid 文件记录的是