Mysql--Failed to start MySQL 8.0 database server/InnoDB: The innodb_system data file 'ibdata1' must be writable
1. 在手动启动mysql 的服务的时候发现有error ,
2. 然后通过status 查看mysql.service ,发现是“Failed to start MySQL 8.0 database server.”
[root@localhost mysql]# systemctl start mysqld Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details. [root@localhost mysql]# systemctl status mysqld.service ● mysqld.service - MySQL 8.0 database server Loaded: loaded (/usr/lib/systemd/system/mysqld.service; disabled; vendor preset: disabled) Active: failed (Result: exit-code) since Thu 2021-01-28 12:14:04 CST; 15s ago Process: 7715 ExecStopPost=/usr/libexec/mysql-wait-stop (code=exited, status=0/SUCCESS) Process: 7710 ExecStart=/usr/libexec/mysqld --basedir=/usr (code=exited, status=1/FAILURE) Process: 7672 ExecStartPre=/usr/libexec/mysql-prepare-db-dir mysqld.service (code=exited, status=0/SU> Process: 7646 ExecStartPre=/usr/libexec/mysql-check-socket (code=exited, status=0/SUCCESS) Main PID: 7710 (code=exited, status=1/FAILURE) Status: "SERVER_BOOTING" Error: 2 (No such file or directory) Jan 28 12:14:04 localhost.localdomain systemd[1]: Starting MySQL 8.0 database server... Jan 28 12:14:04 localhost.localdomain systemd[1]: mysqld.service: Main process exited, code=exited, sta> Jan 28 12:14:04 localhost.localdomain systemd[1]: mysqld.service: Failed with result 'exit-code'. Jan 28 12:14:04 localhost.localdomain systemd[1]: Failed to start MySQL 8.0 database server.
3.再通过mysql log 查看发现是“ibdata1” can't be writable
[root@localhost mysql]# cat /var/log/mysql.log cat: /var/log/mysql.log: No such file or directory [root@localhost mysql]# cat /var/log/mysql/mysqld.log 2021-01-28T04:13:38.121609Z 0 [System] [MY-013169] [Server] /usr/libexec/mysqld (mysqld 8.0.13) initializing of server in progress as process 7487 2021-01-28T04:13:49.083943Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: Q)s9XxCC(btu 2021-01-28T04:13:55.959881Z 0 [System] [MY-013170] [Server] /usr/libexec/mysqld (mysqld 8.0.13) initializing of server has completed 2021-01-28T04:14:04.430539Z 0 [System] [MY-010116] [Server] /usr/libexec/mysqld (mysqld 8.0.13) starting as process 7710 2021-01-28T04:14:04.442393Z 1 [ERROR] [MY-012271] [InnoDB] The innodb_system data file 'ibdata1' must be writable 2021-01-28T04:14:04.442414Z 1 [ERROR] [MY-012278] [InnoDB] The innodb_system data file 'ibdata1' must be writable 2021-01-28T04:14:04.442427Z 1 [ERROR] [MY-010334] [Server] Failed to initialize DD Storage Engine 2021-01-28T04:14:04.442501Z 0 [ERROR] [MY-010020] [Server] Data Dictionary initialization failed. 2021-01-28T04:14:04.442521Z 0 [ERROR] [MY-010119] [Server] Aborting 2021-01-28T04:14:04.442767Z 0 [System] [MY-010910] [Server] /usr/libexec/mysqld: Shutdown complete (mysqld 8.0.13) Source distribution.
去到mysql 路径下check 该文件的权限
[root@localhost mysql]# ll /var/lib/mysql/ total 155700 drwxr-x--- 2 root root 6 Jan 28 12:13 '#innodb_temp' -rw-r----- 1 root root 56 Jan 28 12:13 auto.cnf -rw-r----- 1 mysql mysql 0 Jan 28 12:14 binlog.index -rw------- 1 root root 1680 Jan 28 12:13 ca-key.pem -rw-r--r-- 1 root root 1112 Jan 28 12:13 ca.pem -rw-r--r-- 1 root root 1112 Jan 28 12:13 client-cert.pem -rw------- 1 root root 1676 Jan 28 12:13 client-key.pem -rw-r----- 1 root root 5753 Jan 28 12:13 ib_buffer_pool -rw-r----- 1 root root 50331648 Jan 28 12:13 ib_logfile0 -rw-r----- 1 root root 50331648 Jan 28 12:13 ib_logfile1 -rw-r----- 1 root root 12582912 Jan 28 12:13 ibdata1 drwxr-x--- 2 root root 143 Jan 28 12:13 mysql -rw-r----- 1 root root 25165824 Jan 28 12:13 mysql.ibd drwxr-x--- 2 root root 4096 Jan 28 12:13 performance_schema -rw------- 1 root root 1676 Jan 28 12:13 private_key.pem -rw-r--r-- 1 root root 452 Jan 28 12:13 public_key.pem -rw-r--r-- 1 root root 1112 Jan 28 12:13 server-cert.pem -rw------- 1 root root 1676 Jan 28 12:13 server-key.pem drwxr-x--- 2 root root 28 Jan 28 12:13 sys -rw-r----- 1 root root 10485760 Jan 28 12:13 undo_001 -rw-r----- 1 root root 10485760 Jan 28 12:13 undo_002 [root@localhost mysql]#
chown mysql.mysql -R /var/lib/mysql
然后stop mysql.service ,最后再发start mysql.service 就可以了。
每天进步一点点~~
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!