MySQL: mysql is not running but lock exists 的解决方法_Mysql

启动MySQL出错,查看了下状态,发现提示MySQL is not running,but lock exists:

一个网友说可能和log文件有关,于是将log文件给移除了,再重启MySQL终于OK了

找了下资料,基本上都是说:

复制代码 代码如下:

# chown -R mysql:mysql /var/lib/mysql
# rm /var/lock/subsys/mysql
# service mysql restart

执行完发现还是这个提示。

因为是在cPanel服务器上,所以又通过命令:

复制代码 代码如下:

# yum remove mysql mysql-server

将mysql卸载了,然后重新安装:

复制代码 代码如下:

# /scripts/mysqlup –force

装好之后发现重启还是出错,又认真看了下,发现pid文件不是以当前的主机名命名的,于是执行:

复制代码 代码如下:

# echo `ps aux | grep mysql | grep “user=mysql” | grep -v “grep” | awk ‘{print $2}'`>> hostname.pid

重新生成了下pid文件,同时修改owner和group为mysql:

复制代码 代码如下:

# chown mysql:mysql hostname.pid

之后保存再重启还是出错。

最后查到一个网友说可能和log文件有关,于是将log文件给移除了,再重启MySQL终于OK了。

A MySQL crash on Red Hat system resulted with:

/etc/init.d/mysql status

coming back with:

mysql is not running but lock exists

Solved by removing the lock file:

rm /var/lock/subsys/mysql

If this happens again it may also be necessary to remove the pid file from /var/lib/mysql

时间: 2024-09-13 07:46:48

MySQL: mysql is not running but lock exists 的解决方法_Mysql的相关文章

MySQL中Union子句不支持order by的解决方法_Mysql

本文实例讲述了MySQL中Union子句不支持order by的解决方法.分享给大家供大家参考,具体如下: 我对DB知之甚少,这问题只在MySQL遇到,不知道别的DBMS是不是也如此. 问题是这样的,我打算在一个表里获得与某一行记录相邻的两行,并且想通过union一起取出来,所以这么写: select id,title from subjects where id>#some_id# order by id limit 1 union select id,title from subjects

MySQL下PID文件丢失的相关错误的解决方法_Mysql

今天同事A找到我,说是Mysql server X的负载很高,查询很慢.他自己捣鼓了一阵未果后,我们一起看了下. [root@redhat var]# uname -a Linux xxx 2.6.18-128.el5 #1 SMP Wed Dec 17 11:41:38 EST 2008 x86_64 x86_64 x86_64 GNU/Linux [root@redhat var]# mysql -u root -p -e "select version();" +--------

MySQL的主从复制步骤详解及常见错误解决方法_Mysql

 mysql主从复制(replication同步)现在企业用的比较多,也很成熟.它有以下优点: 1.降低主服务器压力,可在从库上执行查询工作. 2.在从库上进行备份,避免影响主服务器服务. 3.当主库出现问题时,可以切换到从库上. 不过,用它做备份时就会也有弊端,如果主库有误操作的话,从库也会收到命令.     下面直接进入操作.这里使用的是debian5操作系统,mysql5.0,默认引擎innodb      10.1.1.45 主库      10.1.1.43 从库 1.设置主库 1)修

MySQL4 File ‘c:\mysql\share\charsets\?.conf’ not found (Errcode: 22)的解决方法_Mysql

PHP 4.4.1+MySQL 5.1的环境下出现了如下的提示: 复制代码 代码如下: File 'c:\mysql\share\charsets\?.conf' not found (Errcode: 22) Character set '#33′ is not a compiled character set and is not specified in the 'c:\mysql\share\charsets\Index' file 查阅一番后基本可以确定原因为低版本的PHP和高版本的M

mysql 加了 skip-name-resolve不能链接数据库问题的解决方法_Mysql

mysql 加了 skip-name-resolve不能链接的问题, 要确认 MySql 是否采用过主机名的授权 在 MySql Server 的配置文件 My.ini 中,增加如下两行: [mysqld] skip-name-resolve 它将禁止 MySql Server 对外部连接进行 DNS 解析,使用这一选项可以消除 MySql 进行 DNS 解析的时间. 但需要注意,如果开启该选项,则所有远程主机连接授权都要使用IP地址方式,否则MySQL将无法正常处理连接请求. 如果开启 ski

mysql unsigned 用法及相减出现补数溢出解决方法_Mysql

unsigned 既为非负数,用此类型可以增加数据长度! 例如如果 tinyint最大是127,那 tinyint unsigned 最大 就可以到 127 * 2 unsigned 属性只针对整型,而binary属性只用于char 和varchar. 类型 说明 tinyint 非常小的整数 smallint 较小整数 mediumint 中等大小整数 int 标准整数 bigint 较大整数 float 单精度浮点数 double 双精度浮点数 decimal 一个串的浮点数 每种数值类型的

MySQL错误Forcing close of thread的两种解决方法_Mysql

最近网站访问量大增,可能有些频道程序也有一些问题,造成了MySQL数据库出现Forcing close of thread 28790 user错误.如果遇到这种情况改怎么解决呢?icech找到两种方法来解决: 1.修改mysql配置文件 如果配置文件是my.ini,可以在在my.ini添加下面两条内容: skip-locking skip-name-resolve 注意:在新版本的mysql中,skip-locking已经被换成了skip-external-locking,如果使用skip-l

安装MySQL在最后的start service停住了解决方法_Mysql

由于我的MySQL不知道什么原因突然打不开了并报了个10061的错,查了下原因说是因为数据库被连接发生冲突,麻烦死了于是重装,在最后一步的 start service 停了,安装失败,又重装了N次,还是失败.原因是已经装过MySQL的电脑上存在以注册项目,网上有很多说法,和方法,我试了一个成功了.基本步骤一下: 1.卸载MySQL应用程序,要把MySQL的服务业卸载掉,命令窗口使用: sc delete MySQL 2.清理注册表(找出来删掉) 复制代码 代码如下: HKEY_LOCAL_MAC

mysql使用SQLyog导入csv数据不成功的解决方法_Mysql

今天给mysql导入数据,使用的软件是SQLyog,相信直接导大家也都会,选中某个表选择导入--导入使用本地csv数据即可,单有的时候不知道什么问题导入不成功,可以使用命令,以此记录,以后用到便于查: (我的是windows系统) LOAD DATA LOCAL INFILE 'C:\\Users\\zl\\Desktop\\zhishu.csv' INTO TABLE 库名.表名 CHARACTER SET gbk FIELDS TERMINATED BY ',' OPTIONALLY ENC