MySQL无法启动几种常见问题小结
在群里看到有新同学还在问MySQL无法启动的问题,于是总结了几个常见情况与解决方法,需要的朋友可以参考下
昨天在群里看到有新同学还在问MySQL无法启动的问题,于是总结了几个常见情况,权当普及帖了,老鸟自觉飞过。
问题1:目录、文件权限设置不正确
MySQL的$datadir目录,及其下属目录、文件权限属性设置不正确,导致MySQL无法正常读写文件,无法启动。
错误信息例如:
问题2:端口冲突
已有其他mysqld实例启动,且占用了相同端口,需要修改 port 选项。
错误信息例如:
[ERROR] Can't start server: Bind on TCP/IP port: Address already in use
[ERROR] Do you already have another mysqld server running on port: 3306 ?
[ERROR] Aborting
问题3:innodb配置不正确
innodb中关于datafile、log file设置不正确,导致无法启动。尤其是第一次用默认参数启动过,后来又参考一些优化指南后,修改了innodb的参数,会提示different size,详细错误例如:
InnoDB: Error: log file ./ib_logfile0 is of different size 0 5242880 bytes
InnoDB: than specified in the .cnf file 0 134217728 bytes!
[ERROR] Plugin ‘InnoDB' init function returned error.
[ERROR] Plugin ‘InnoDB' registration as a STORAGE ENGINE failed.
问题4:没有初始化mysql系统库
MySQL安装完后,需要运行mysql_install_db初始化mysql这个系统库,才能正常启动。
问题5:如果将mysql以普通用户权限运行的时候需要注意一些目录权限与用户名密码设置
有时候为了让mysql更安全一些,我们都会将mysql低权限运行,由于一些安全设置工具的原因,需要将此用户重新设置一下密码就可以了。
问题1:目录、文件权限设置不正确
MySQL的$datadir目录,及其下属目录、文件权限属性设置不正确,导致MySQL无法正常读写文件,无法启动。
错误信息例如:
mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data
/usr/local/mysql/bin/mysqld_safe: line 107: /usr/local/mysql/data/imysql.local.err: Permission denied
/usr/local/mysql/bin/mysqld_safe: line 107: /usr/local/mysql/data/imysql.local.err: Permission denied
问题2:端口冲突
已有其他mysqld实例启动,且占用了相同端口,需要修改 port 选项。
错误信息例如:
[ERROR] Can't start server: Bind on TCP/IP port: Address already in use
[ERROR] Do you already have another mysqld server running on port: 3306 ?
[ERROR] Aborting
问题3:innodb配置不正确
innodb中关于datafile、log file设置不正确,导致无法启动。尤其是第一次用默认参数启动过,后来又参考一些优化指南后,修改了innodb的参数,会提示different size,详细错误例如:
InnoDB: Error: log file ./ib_logfile0 is of different size 0 5242880 bytes
InnoDB: than specified in the .cnf file 0 134217728 bytes!
[ERROR] Plugin ‘InnoDB' init function returned error.
[ERROR] Plugin ‘InnoDB' registration as a STORAGE ENGINE failed.
问题4:没有初始化mysql系统库
MySQL安装完后,需要运行mysql_install_db初始化mysql这个系统库,才能正常启动。
问题5:如果将mysql以普通用户权限运行的时候需要注意一些目录权限与用户名密码设置
有时候为了让mysql更安全一些,我们都会将mysql低权限运行,由于一些安全设置工具的原因,需要将此用户重新设置一下密码就可以了。
分类:
服务器配置
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 现代计算机视觉入门之:什么是图片特征编码
· .NET 9 new features-C#13新的锁类型和语义
· Spring AI + Ollama 实现 deepseek-r1 的API服务和调用
· 《HelloGitHub》第 106 期
· 数据库服务器 SQL Server 版本升级公告
· 深入理解Mybatis分库分表执行原理
· 使用 Dify + LLM 构建精确任务处理应用