初学者:Xmapp中mysql打不开了!以下为日志

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里的端口号8081当然也可以改成其他的只要不冲突就可以。

  httpd-ss.conf里的端口号443999也可以改其他的。

  再点击mysql右面的config修改my.ini里面的3306端口号为3307。

  经过以上修改重新启动xampp就可以启动mysql了。如果安装后能启动就不需要以上操作。一般个人电脑的80端口会被占用,所以只需要修改。

  80端口就可以了。自己可以一一尝试。

img


这个冒号是中文冒号。所以,应该是你的某个配置文件里面的这个路径填错了吧。

根据日志信息,可以看到以下几个错误提示:

  • 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存储引擎不能正常启动导致的。可以按照以下步骤尝试解决:

  1. 确认您的数据目录是否存在

根据日志中的信息,看到InnoDB在尝试创建数据文件的时候失败了。请检查数据目录是否存在于磁盘的某个位置。如果该目录不存在,请手动创建该目录。

  1. 修改数据目录的权限

当数据目录存在时,您可能需要修改其权限。可以尝试将其授予完全控制权限。

  1. 禁用InnoDB引擎

如果InnoDB引擎不能正常启动,您可以尝试使用其他的存储引擎,或尝试禁用InnoDB,以确保MySQL服务正常启动。可以编辑配置文件(my.cnf)或在my.ini中修改MySQL的配置,禁用InnoDB:

[mysqld]
skip-innodb
  1. 重启MySQL服务

完成这些步骤后,尝试重启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文件,这很可能是由于文件系统权限的问题导致的。
解决方法如下:

  1. 确保XAMPP安装目录(如C:\xampp)对当前用户具有完全权限。如果安装时采用默认设置,需要将该目录的权限设置为777。
  2. 重启XAMPP的MySQL服务。这可以通过XAMPP控制面板的Services来完成。
  3. 如果上一步重启后MySQL仍无法启动,需要删除ibdata1文件,然后重启服务。命令为:
bash
cd C:\xampp\mysql\data  
del ibdata1

  1. 重启XAMPP的MySQL服务,MySQL会自动重新创建ibdata1文件并启动。
  2. 如果在Linux/Unix系统下出现此问题,也是通过修改目录权限和删除重建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文件。建议检查数据库配置和文件权限,以及是否有足够的磁盘空间。