Mysql主从复制失败PID错误

Mysql主从复制失败PID错误

我在 5.6 上有主服务器,在 5.5 上有从服务器,这将是测试环境,用于检查 5.6 是否可以在 PROD 上在 5.5 上进行复制。

启动 mysql 时出现以下错误

ERROR! MySQL server PID file could not be found!  
Starting MySQL.. ERROR! The server quit without updating PID file (/var/lib/mysql/test.lester.com.pid).

作为参考,以下是 /etc/my.cnf 的内容:

# The following options will be passed to all MySQL clients
[client]

port            = 3306  
socket=/var/lib/mysql/mysql.sock  

# The MySQL server  
[mysqld]
port            = 3306
socket=/var/lib/mysql/mysql.sock
skip-external-locking
key_buffer_size = 256M
max_allowed_packet = 1M
table_open_cache = 256
sort_buffer_size = 1M
read_buffer_size = 1M
read_rnd_buffer_size = 4M
myisam_sort_buffer_size = 64M
thread_cache_size = 8
query_cache_size= 16M

bind-address    = 0.0.0.0
# Try number of CPU's*2 for thread_concurrency
thread_concurrency = 8

log-bin=mysql-bin

# binary logging format - mixed recommended
binlog_format=mixed
server-id       = 2

[mysqldump]
quick
max_allowed_packet = 16M

[mysql]
no-auto-rehash

[myisamchk]
key_buffer_size = 128M
sort_buffer_size = 128M
read_buffer = 2M
write_buffer = 2M

[mysqlhotcopy]
interactive-timeout

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

我尝试了很多方法来解决这个错误...但不幸的是没有成功,请帮忙。

答案1

这与复制无关,尽管您可能在添加与复制相关的行时弄乱了配置。特别是您缺少一行pid-file,请尝试将其添加到以下[mysqld]部分:

pid-file = /var/run/mysqld/mysqld.pid

这条线目前是该[mysqld_safe]部分,我不认为它属于那里。

答案2

运行以下命令并确保配置中的 pid 文件与 mysql cnf 文件中 [mysqld] 下的 pid 文件定义匹配,init.d 脚本和配置中很可能存在不匹配的情况。

mysqld --print-defaults | grep pid 文件

答案3

阅读上面关于 pid 文件的帖子,我只想补充一点,有时你需要创建它。你还应该使用 ps 仔细检查 mysql 是否尚未运行。

如果 mysql 正在运行,请将 mysql_safe 的 pid(我认为)添加到您的 pid 文件中。

相关内容