MySQL启动不成功,一直运行

Mysql 启动不成功,一直在执行中,最终报错:
The server quit without updating PID file
在这里插入图片描述
执行 mysql.server restart 进行重启,报错:
ERROR! MySQL server PID file could not be found!

原因分析
通常出现这种情况是由于以下几个原因:

  1. 可能是 /usr/local/mysql/data/mysql.pid 文件没有写的权限
    解决方法 :给予权限,执行 chown -R mysql:mysql /var/datachmod -R 755 /usr/local/mysql/data 然后重新启动 mysql

  2. 可能进程里已经存在 mysql 进程
    解决方法:用命令ps -ef|grep mysqld查看是否有 mysqld 进程,如果有使用kill -9 进程号杀死,然后重新启动 mysqld。本人为此原因:
    在这里插入图片描述
    分别执行 kill -9 16821kill -9 16934,然后执行 mysql.server start 重启 mysql

  3. 可能是第二次在机器上安装mysql,有残余数据影响了服务的启动。
    解决方法:去 mysql 的数据目录/data看看,如果存在mysql-bin.index,就将它删除。

  4. mysql 在启动时没有指定配置文件时会使用 /etc/my.cnf 配置文件,请打开这个文件查看在 [mysqld] 节下有没有指定数据目录(datadir)
    解决方法:请在[mysqld]下设置这一行:datadir = /usr/local/mysql/data

  5. skip-federated 字段问题
    解决方法:检查一下/etc/my.cnf文件中有没有没被注释掉的skip-federated字段,如果有就立即注释掉。

  6. 错误日志目录不存在
    解决方法:使用chown chmod命令赋予 mysql 所有者及权限

  7. selinux 的问题,如果是centos系统,默认会开启selinux
    解决方法:关闭它,打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled后存盘退出重启机器试试。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
驰骋工作流引擎研发于2003年,具有.net与java两个版本,它们代码结构、数据库结构、设计思想、功能组成、操作手册完全相同。流程表单模版两个版本完全通用。 CCFlow是.net版本的简称,由济南团队负责研发。JFlow是在java版本的简称,由深圳研发团队研发。两款产品核心代码向社会100%开源,十多年来,我们一直践行自己的诺言,努力提高产品质量,真心服务中国IT产业,成为了国内知名的老牌工作流引擎,在国内开源BPM领域稳坐第一位。 JFlow功能概要说明: 1、具有.net与java两个版本,这两个版本代码结构,数据库结构,设计思想,功能组成,操作手册,完全相同。导入导出的流程模版,表单模版两个版本完全通用。 2、支持Oracle,SqlServer,MySQL数据库。 3、支持独立运行、嵌入式运行(中间件模式)、服务模式运行三种模式。 4、内置表单引擎+权限管理系统。 JFlow安装: 1、安装步骤: 1.1、下载JFlow,可以使用svn、Git下载。 1.2、创建空白的数据库。 1.3、设置数据库参数:/jflow-web/src/main/resources/jflow.properties 1.4、启动项目。访问地址:http://127.0.0.1:8080/jflow-web/ 管理员账号:admin 密码:123 其他用户密码:123 1.5、更多的帮助下载信息,请参考/wikis/Home 2、注意事项: 2.1、第一次运行相对比较慢,请等待一会,因为需要下载jar类库,等待时间和本机网络速度有关。 2.2、如果你想减少等待时间,jflow已自带repository,你只需解压bin文件夹下的win_bin.part1.rar文件包即可获得。 2.3、如果你本机没有安装maven和jdk,你可以使用jflow自带的,也可以解压bin文件夹下的win_bin.part1.rar文件包即可获得。 2.4、如果你是用SVN检出的项目,bat文件会丢失换行符,还请解压win_bin.part1.rar文件覆盖当前文件,即可。 2.5、启动成功后,即可通过浏览器进行访问。
在Keepalived集群中,其实并没有严格意义上的主、备节点,虽然可以在Keepalived配置文件中设置“state”选项为“MASTER”状态,但是这并不意味着此节点一直就是Master角色。控制节点角色的是Keepalived配置文件中的“priority”值,但并它并不控制所有节点的角色,另一个能改变节点角色的是在vrrp_script模块中设置的“weight”值,这两个选项对应的都是一个整数值,其中“weight”值可以是个负整数,一个节点在集群中的角色就是通过这两个值的大小决定的。 在一个一主多备的Keepalived集群中,“priority”值最大的将成为集群中的Master节点,而其他都是Backup节点。在Master节点发生故障后,Backup节点之间将进行“民主选举”,通过对节点优先级值“priority”和““weight”的计算,选出新的Master节点接管集群服务。 在vrrp_script模块中,如果不设置“weight”选项值,那么集群优先级的选择将由Keepalived配置文件中的“priority”值决定,而在需要对集群中优先级进行灵活控制时,可以通过在vrrp_script模块中设置“weight”值来实现。下面列举一个实例来具体说明。 假定有A和B两节点组成的Keepalived集群,在A节点keepalived.conf文件中,设置“priority”值为100,而在B节点keepalived.conf文件中,设置“priority”值为80,并且A、B两个节点都使用了“vrrp_script”模块来监控mysql服务,同时都设置“weight”值为10,那么将会发生如下情况。 在两节点都启动Keepalived服务后,正常情况是A节点将成为集群中的Master节点,而B自动成为Backup节点,此时将A节点的mysql服务关闭,通过查看日志发现,并没有出现B节点接管A节点的日志,B节点仍然处于Backup状态,而A节点依旧是Master状态,在这种情况下整个HA集群将失去意义。 下面就分析一下产生这种情况的原因,这也就是Keepalived集群中主、备角色选举策略的问题。下面总结了在Keepalived中使用vrrp_script模块时整个集群角色的选举算法,由于“weight”值可以是正数也可以是负数,因此,要分两种情况进行说明。 1.“weight”值为正数时 在vrrp_script中指定的脚本如果检测成功,那么Master节点的权值将是“weight值与”priority“值之和,如果脚本检测失败,那么Master节点的权值保持为“priority”值,因此切换策略为: Master节点“vrrp_script”脚本检测失败时,如果Master节点“priority”值小于Backup节点“weight值与”priority“值之和,将发生主、备切换。 Master节点“vrrp_script”脚本检测成功时,如果Master节点“weight”值与“priority”值之和大于Backup节点“weight”值与“priority”值之和,主节点依然为主节点,不发生切换。 2.“weight”值为负数时 在“vrrp_script”中指定的脚本如果检测成功,那么Master节点的权值仍为“priority”值,当脚本检测失败时,Master节点的权值将是“priority“值与“weight”值之差,因此切换策略为: Master节点“vrrp_script”脚本检测失败时,如果Master节点“priority”值与“weight”值之差小于Backup节点“priority”值,将发生主、备切换。 Master节点“vrrp_script”脚本检测成功时,如果Master节点“priority”值大于Backup节点“priority”值时,主节点依然为主节点,不发生切换。 在熟悉了Keepalived主、备角色的选举策略后,再来分析一下刚才实例,由于A、B两个节点设置的“weight”值都为10,因此符合选举策略的第一种,在A节点停止Mysql服务后,A节点的脚本检测将失败,此时A节点的权值将保持为A节点上设置的“priority”值,即为100,而B节点的权值将变为“weight”值与“priority”值之和,也就是90(10+80),这样就出现了A节点权值仍然大于B节点权值的情况,因此不会发生主、备切换。 对于“weight”值的设置,有一个简单的标准,即“weight”值的绝对值要大于Master和Backup节点“priority”值之差。对于

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值