Mac下MAMP Pro 启动数据库MySQL出错导致无法启动的问题

2024-02-29 02:18

本文主要是介绍Mac下MAMP Pro 启动数据库MySQL出错导致无法启动的问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

问题1:

InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
130305 19:49:08  InnoDB: Unable to open the first data file
InnoDB: Error in opening ./ibdata1
130305 19:49:08  InnoDB: Operating system error number 35 in a file operation.

此问题的关键在于:

Check that you do not already have another mysqld process

表示有多个mysql进程正在执行,解决方法如下:

1、打开终端,输入$ ps aux | grep mysqld 检查mysql进程打开终端,输入$ ps aux | grep mysqld 检查mysql进程


2.找到相应的进程号,停掉相应的进程,最后保留一条mysql的进程即可

比如:$ kill 1234(此处1234 为你的进程号)



然后就可以正常使用你的mysql 了。





问题2:

2017-07-31 10:37:08 12746 [Note] Plugin 'FEDERATED' is disabled.
2017-07-31 10:37:08 12746 [Note] InnoDB: Using atomics to ref count buffer pool pages
2017-07-31 10:37:08 12746 [Note] InnoDB: The InnoDB memory heap is disabled
2017-07-31 10:37:08 12746 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2017-07-31 10:37:08 12746 [Note] InnoDB: Memory barrier is not used
2017-07-31 10:37:08 12746 [Note] InnoDB: Compressed tables use zlib 1.2.8
2017-07-31 10:37:08 12746 [Note] InnoDB: Using CPU crc32 instructions
2017-07-31 10:37:08 12746 [Note] InnoDB: Initializing buffer pool, size = 128.0M
2017-07-31 10:37:08 12746 [Note] InnoDB: Completed initialization of buffer pool
2017-07-31 10:37:08 12746 [Note] InnoDB: Highest supported file format is Barracuda.
2017-07-31 10:37:08 12746 [Note] InnoDB: The log sequence numbers 1638988 and 1638988 in ibdata files do not match the log sequence number 1644885 in the ib_logfiles!
2017-07-31 10:37:08 12746 [Note] InnoDB: Database was not shutdown normally!
2017-07-31 10:37:08 12746 [Note] InnoDB: Starting crash recovery.
2017-07-31 10:37:08 12746 [Note] InnoDB: Reading tablespace information from the .ibd files...
2017-07-31 10:37:08 12746 [ERROR] InnoDB: Attempted to open a previously opened tablespace. Previous tablespace info/test uses space ID: 3 at filepath: ./info/test.ibd. Cannot open tablespace mysql/slave_relay_log_info which uses space ID: 3 at filepath: ./mysql/slave_relay_log_info.ibd
2017-07-31 10:37:08 7ffff2e8f3c0  InnoDB: Operating system error number 2 in a file operation.
InnoDB: The error means the system cannot find the path specified.
InnoDB: If you are installing InnoDB, remember that you must create
InnoDB: directories yourself, InnoDB does not create them.
InnoDB: Error: could not open single-table tablespace file ./mysql/slave_relay_log_info.ibd
InnoDB: We do not continue the crash recovery, because the table may become
InnoDB: corrupt if we cannot apply the log records in the InnoDB log to it.
InnoDB: To fix the problem and start mysqld:
InnoDB: 1) If there is a permission problem in the file and mysqld cannot
InnoDB: open the file, you should modify the permissions.
InnoDB: 2) If the table is not needed, or you can restore it from a backup,
InnoDB: then you can remove the .ibd file, and InnoDB will do a normal
InnoDB: crash recovery and ignore that table.
InnoDB: 3) If the file system or the disk is broken, and you cannot remove
InnoDB: the .ibd file, you can set innodb_force_recovery > 0 in my.cnf
InnoDB: and force InnoDB to continue crash recovery here.

此问题的关键在于:

InnoDB: Attempted to open a previously opened tablespace. Previous tablespace db_patients/tb_patients uses space ID: 3 at filepath: ./db_patients/tb_patients.ibd. Cannot open tablespace mysql/slave_relay_log_info which uses space ID: 3 at filepath: ./mysql/slave_relay_log_info.ibd

解决办法:


一、打开MAMP PRO,选择菜单栏File->Edit Template->MySQL->5.5.3(选择你的版本)),这时打开了一个文本,找到

[mysqld]
注意带上中括号,在这行下面加一行
innodb_force_recovery = 1 (可换1-6 进行尝试)


二、启动mySQL,成功后再关闭;



三、重新打开那个文本,删除添加的 innodb_force_recovery = 1 行;



四、再打开mySQL,完毕。



这篇关于Mac下MAMP Pro 启动数据库MySQL出错导致无法启动的问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/757297

相关文章

线上Java OOM问题定位与解决方案超详细解析

《线上JavaOOM问题定位与解决方案超详细解析》OOM是JVM抛出的错误,表示内存分配失败,:本文主要介绍线上JavaOOM问题定位与解决方案的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录一、OOM问题核心认知1.1 OOM定义与技术定位1.2 OOM常见类型及技术特征二、OOM问题定位工具

MySQL的JDBC编程详解

《MySQL的JDBC编程详解》:本文主要介绍MySQL的JDBC编程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录前言一、前置知识1. 引入依赖2. 认识 url二、JDBC 操作流程1. JDBC 的写操作2. JDBC 的读操作总结前言本文介绍了mysq

java.sql.SQLTransientConnectionException连接超时异常原因及解决方案

《java.sql.SQLTransientConnectionException连接超时异常原因及解决方案》:本文主要介绍java.sql.SQLTransientConnectionExcep... 目录一、引言二、异常信息分析三、可能的原因3.1 连接池配置不合理3.2 数据库负载过高3.3 连接泄漏

javacv依赖太大导致jar包也大的解决办法

《javacv依赖太大导致jar包也大的解决办法》随着项目的复杂度和依赖关系的增加,打包后的JAR包可能会变得很大,:本文主要介绍javacv依赖太大导致jar包也大的解决办法,文中通过代码介绍的... 目录前言1.检查依赖2.更改依赖3.检查副依赖总结 前言最近在写项目时,用到了Javacv里的获取视频

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

Vue3绑定props默认值问题

《Vue3绑定props默认值问题》使用Vue3的defineProps配合TypeScript的interface定义props类型,并通过withDefaults设置默认值,使组件能安全访问传入的... 目录前言步骤步骤1:使用 defineProps 定义 Props步骤2:设置默认值总结前言使用T

如何通过try-catch判断数据库唯一键字段是否重复

《如何通过try-catch判断数据库唯一键字段是否重复》在MyBatis+MySQL中,通过try-catch捕获唯一约束异常可避免重复数据查询,优点是减少数据库交互、提升并发安全,缺点是异常处理开... 目录1、原理2、怎么理解“异常走的是数据库错误路径,开销比普通逻辑分支稍高”?1. 普通逻辑分支 v

MySQL中On duplicate key update的实现示例

《MySQL中Onduplicatekeyupdate的实现示例》ONDUPLICATEKEYUPDATE是一种MySQL的语法,它在插入新数据时,如果遇到唯一键冲突,则会执行更新操作,而不是抛... 目录1/ ON DUPLICATE KEY UPDATE的简介2/ ON DUPLICATE KEY UP

MySQL分库分表的实践示例

《MySQL分库分表的实践示例》MySQL分库分表适用于数据量大或并发压力高的场景,核心技术包括水平/垂直分片和分库,需应对分布式事务、跨库查询等挑战,通过中间件和解决方案实现,最佳实践为合理策略、备... 目录一、分库分表的触发条件1.1 数据量阈值1.2 并发压力二、分库分表的核心技术模块2.1 水平分

Python与MySQL实现数据库实时同步的详细步骤

《Python与MySQL实现数据库实时同步的详细步骤》在日常开发中,数据同步是一项常见的需求,本篇文章将使用Python和MySQL来实现数据库实时同步,我们将围绕数据变更捕获、数据处理和数据写入这... 目录前言摘要概述:数据同步方案1. 基本思路2. mysql Binlog 简介实现步骤与代码示例1