问题简述

       MySQL的安装有yum源、rpm包以及源码包安装 在进行源码包安装时,很多同学不懂如何配置,所以 会上网搜索。直接将其复制粘贴下来,这会导致一些问题----很多目前你还不了解的软件功能被打开了, 但有些配置是需要手动配的,安装成后无法直接使用MySQL,还需要为一些功能进行配置。 这时如果没有手动配置而直接启动MySQL,会报mysql.server无法启动的错误,如下面这样
在这里插入图片描述
解决方法

      这里说控制进程退出是因为存在错误代码,我是打开了mysql的*记录二进制日志的功能,但没有完成相关配置才出现这个问题的,解决办法是将二进制日志记录这个功能关了或把配置配好。
      如果你是刚安装好MySQL,或者刚做完数据库恢复那么的解决方法很简单,就是将/var/lib/mysql及子文件的属主和属主更改为mysql.mysql(没创得先创),这是因为/var/lib/mysql/这个目录是mysql程序的数据存放文件,mysql要启动就得在里面有写入的权限,而mysql是使用用户mysql访问的,所以必须要把写入和读取以及执行权利赋予mysql用户。chown -R mysql.mysql /var/lib/mysql

在这里插入图片描述
解决办法1

      vim /etc/my.cnf----这里是mysql的配置文件,rpm和yum安装时默认位置,源代码安装得看自己当初是怎样配置的**进入到配置文件,找到 ‘log_bin’将其注释掉–#log_bin

解决办法2

      vim /etc/my.cnf在log_bin下面添加一行’'server-id=2 ----数字是可以随便填的,这是服务器序号,为服务器集群准备的。

备用方法

      如果之前开启了二进制日志记录功能,这里可能还是启动不了,需要将 /var/lib/mysql/-bin-(带bin的日志文件备份后删除),然后再重启MySQL
最后就可以启动MySQL了systemctl start mysqld

总结

      遇到无法启动MySQL服务,通常情况是主配置文件没配置好导致的,这里提供一份MySQL主配置文件副本供参考,如果你的MySQL无法启动,可以复制下面的配置文件副本替换你的MySQL主配置文件,rpm和yum安装可以直接替换,源码包安装的需要将主配置文件里的目录替换成自己安装软件所在位置

      如果你觉得这篇文章对你解决问题有所帮助,希望你将这个方法分享出来,可以直接将我的文章复制粘贴发到你自己的博客里,我并不介意,学习不应该设置路障,还有很多小伙伴被许许多多的小问题困住,只不过遇到的问题对于目前所掌握的知识来所太超前了。希望你能和我一同将学习中遇到的问题的解决方法用最简单的描述分享出来,帮助那些还处于煎熬之中的小伙伴。

# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html

[mysqld]
#skip-grant-tables
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
log_bin
server-id=2
#log_bin is in /var/lib/mysql/*bin*
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐