怎么解决mysql中的ERRORInnoDB问题

60次阅读
没有评论

共计 2259 个字符,预计需要花费 6 分钟才能阅读完成。

本篇内容介绍了“怎么解决 mysql 中的 ERRORInnoDB 问题”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让丸趣 TV 小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

问题描述:启动 MySQL 后,出现连接不上,报 [ERROR] InnoDB: Unable to lock ./ibdata1, error: 11
[root@mysql01 ~]# service mysql start
Starting MySQL                                             [ OK  ]
[root@mysql01 ~]# mysql -uroot -poracle
Warning: Using a password on the command line interface can be insecure.
ERROR 2002 (HY000): Can t connect to local MySQL server through socket /var/lib/mysql/mysql.sock (2)
[root@mysql01 ~]# ll /var/lib/mysql/mysql.sock
ls: cannot access /var/lib/mysql/mysql.sock: No such file or directory
说明:
mysqld.sock 是 mysql 启动以后自动生成的文件,关闭 MySQL 服务后,这个文件又会被删除。如果 MySQL 启动异常,就有可能不生成这个文件,登录的时候就会出现你这个错误。
[root@mysql01 ~]# cd /var/lib/mysql
[root@mysql01 mysql]# ls
auto.cnf   ib_logfile0  mysql01.err          RPM_UPGRADE_MARKER-LAST
binarylog  ib_logfile1  performance_schema   test
ibdata1    mysql        RPM_UPGRADE_HISTORY
[root@mysql01 mysql]# vi mysql01.err 
错误日志报错如下:
2017-06-04 04:08:47 2835  
2017-06-04 04:08:47 2835 [Note] InnoDB: Check that you do not already have another mysqld process using the same InnoDB data or log files.

分析:
1、磁盘空间目录不足
2、ibdata1 文件被其他的进程占用
3、等

解决过程:
1、— 查看磁盘空间情况
[root@mysql01 ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda3        35G  7.8G   26G  24% /
tmpfs           699M   72K  699M   1% /dev/shm
/dev/sda1       2.9G  4.5M  2.7G   1% /tmp
2、–InnoDB: Check that you do not already have another mysqld process using the same InnoDB data or log files.
已经指出其他的线程启动已经在运行无法再次创建相关的读文件进程的权限,也就是说,现有的 ibddata 文件已经有人读取了,无法再次启动!
— 查看系统 mysql 相关进程
[root@mysql01 ~]# ps aux |grep mysql*
root       1742  0.0  0.0 108336   552 ?        S    03:59   0:00 /bin/sh /usr/bin/mysqld_safe –datadir=/var/lib/mysql –pid-file=/var/lib/mysql/mysql01.pid
mysql      1930  0.2 37.8 1170956 541948 ?      Sl   03:59   0:03 /usr/sbin/mysqld –basedir=/usr –datadir=/var/lib/mysql –plugin-dir=/usr/lib64/mysql/plugin –user=mysql –log-error=/var/lib/mysql/mysql01.err –pid-file=/var/lib/mysql/mysql01.pid –port=3306
root       3117  0.0  0.0 103312   876 pts/2    S+   04:29   0:00 grep mysql*
— kill -9 杀掉
[root@mysql01 ~]# kill -9 1930
[root@mysql01 ~]# ps aux |grep mysql*
root       3186  0.0  0.0 103308   852 pts/2    S+   04:29   0:00 grep mysql*
— 启动
[root@mysql01 ~]# service mysql start
Starting MySQL..                                           [ OK  ]
[root@mysql01 ~]# mysql -uroot -poracle
Type help; or \h for help. Type \c to clear the current input statement.
mysql  
说明:恢复正常

“怎么解决 mysql 中的 ERRORInnoDB 问题”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注丸趣 TV 网站,丸趣 TV 小编将为大家输出更多高质量的实用文章!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-19发表,共计2259字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)