2023-05-21 1:02:04 0 [Note] Starting MariaDB 10.4.28-MariaDB source revision c8f2e9a5c0ac5905f28b050b7df5a9ffd914b7e7 as process 7404
2023-05-21 1:02:04 0 [ERROR] InnoDB: Can't create file 'C:\xampp\mysql\data\data\ibdata1' when --innodb-force-recovery is set
2023-05-21 1:02:04 0 [ERROR] Plugin 'InnoDB' init function returned error.
2023-05-21 1:02:04 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
2023-05-21 1:02:04 0 [Note] Plugin 'FEEDBACK' is disabled.
2023-05-21 1:02:04 0 [ERROR] Could not open mysql.plugin table. Some plugins may be not loaded
2023-05-21 1:02:04 0 [ERROR] Unknown/unsupported storage engine: InnoDB
2023-05-21 1:02:04 0 [ERROR] Aborting
Could not open mysql.plugin table.其他表格是否可以正常打开,建议把系统日志2023-05-21 1:02:04的记录也发出来
貌似是因为权限问题导致的,修改一下权限试试。
修改目录权限
chown -R mysql:mysql /opt/lampp/mysql # 修改目录权限
sudo /opt/lampp/lampp restartmysql # 重启MySQL服务
2023-05-21 1:02:04 0[注]启动MariaDB 10.4.28 MariaDB源版本c8f2e9a50a5905f28b050b7df5a9ffd914b7e7作为过程7404
2023-05-21 1:02:04 0[错误]InnoDB:当设置了--InnoDB强制恢复时,无法创建文件“C:\examplep\mysql\data\data\ibdata1”
2023-05-21 1:02:04 0[错误]插件“InnoDB”初始化函数返回错误。
2023-05-21 1:02:04 0[错误]插件“InnoDB”注册为存储引擎失败。
2023-05-21 1:02:04 0[注意]插件“反馈”已禁用。
2023-05-21 1:02:04 0[错误]无法打开mysql.plugin表。某些插件可能未加载
2023-05-21 1:02:04 0[错误]未知/不受支持的存储引擎:InnoDB
2023-05-21 1:02:04 0[错误]正在中止
根据日志中文翻译和行为分析,
这个错误信息大致意思是MySQL正在尝试使用InnoDB存储引擎创建一个名为ibdata1的文件,但是该文件不存在,在执行--innodb-force-recovery选项时遇到了错误。
可能的原因是以下几个方面:
1、检查下ibdata1文件是否存在,如果存在则检查下导入路径
2、如果存在,路径没有问题,那其次检查下文件权限是否赋予
3、尝试使用不同的--innodb-force-recovery选项执行操作,通过类比看是否所有的都行不通
4、最后检查InnoDB存储引擎是否正确配置,尝试使用其他MySQL客户端或者数据库管理工具连接到MySQL服务器,重启服务等操作,查看是否存在其他错误信息。
可以试试
不能启动多数都是端口冲突导致的,所以我们要进行修改。具体方法是:
打开xampp的控制界面,点击apache右面的config 分别修改httpd.conf里的端口号80为81当然也可以改成其他的只要不冲突就可以。
httpd-ss.conf里的端口号443为999也可以改其他的。
再点击mysql右面的config修改my.ini里面的3306端口号为3307。
经过以上修改重新启动xampp就可以启动mysql了。如果安装后能启动就不需要以上操作。一般个人电脑的80端口会被占用,所以只需要修改。
80端口就可以了。自己可以一一尝试。
根据日志信息,可以看到以下几个错误提示:
InnoDB: Can't create file 'C:\xampp\mysql\data\data\ibdata1' when --innodb-force-recovery is set
Plugin 'InnoDB' init function returned error.
Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
Could not open mysql.plugin table. Some plugins may be not loaded
Unknown/unsupported storage engine: InnoDB
Aborting
可能是InnoDB存储引擎不能正常启动导致的。可以按照以下步骤尝试解决:
根据日志中的信息,看到InnoDB在尝试创建数据文件的时候失败了。请检查数据目录是否存在于磁盘的某个位置。如果该目录不存在,请手动创建该目录。
当数据目录存在时,您可能需要修改其权限。可以尝试将其授予完全控制权限。
如果InnoDB引擎不能正常启动,您可以尝试使用其他的存储引擎,或尝试禁用InnoDB,以确保MySQL服务正常启动。可以编辑配置文件(my.cnf)或在my.ini中修改MySQL的配置,禁用InnoDB:
[mysqld]
skip-innodb
完成这些步骤后,尝试重启MySQL服务,并监视错误日志以了解任何可能的错误。
以下答案由GPT-4.5Plus大模型(语音)与博主A努力中.......共同编写:
从日志可以看出,MySQL启动失败的原因是InnoDB存储引擎初始化失败。InnoDB是MySQL的默认存储引擎,如果它失败,MySQL无法启动。
日志中显示错误:
InnoDB: Can't create file 'C:\xampp\mysql\data\data\ibdata1' when --innodb-force-recovery is set
这表示InnoDB无法创建ibdata1文件,这很可能是由于文件系统权限的问题导致的。
解决方法如下:
bash
cd C:\xampp\mysql\data
del ibdata1
bash
chown -R mysql:mysql /opt/lampp/mysql # 修改目录权限
sudo rm /opt/lampp/mysql/data/ibdata1 # 删除ibdata1文件
sudo /opt/lampp/lampp restartmysql # 重启MySQL服务
该回答参考ChatGPT:
这段日志显示了MariaDB数据库在启动时遇到了一些错误。其中,InnoDB存储引擎初始化时返回了错误,导致无法注册为存储引擎。同时,FEEDBACK插件被禁用,mysql.plugin表无法打开,可能导致某些插件无法加载。最后,出现了未知或不支持的存储引擎错误,导致数据库启动失败。其中,Can't create file 'C:\xampp\mysql\data\data\ibdata1' when --innodb-force-recovery is set这个错误提示是因为在设置了--innodb-force-recovery参数时,InnoDB存储引擎无法创建ibdata1文件。建议检查数据库配置和文件权限,以及是否有足够的磁盘空间。