Mac电脑上本地安装 MySQL并配置开启自启完整流程

文章目录

    • 一、mysql安装
      • 1.1 使用 Homebrew 安装(推荐)
      • 1.2 手动下载 MySQL 社区版
      • 1.3 常见问题
      • 1.4 图形化管理工具(可选)
    • 二、Mac 上配置 MySQL 开机自动启动
      • 2.1 使用 `launchd` 系统服务(原生支持)
      • 2.2 通过 Homebrew 设置开机启动(推荐)
      • 2.3 常见问题

在 Mac 电脑上本地安装 MySQL 的步骤如下:

一、mysql安装

1.1 使用 Homebrew 安装(推荐)

  1. 安装 Homebrew(如果尚未安装):

    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
    
  2. 安装 MySQL

    brew install mysql
    
  3. 启动 MySQL 服务

    brew services start mysql
    
  4. 运行安全配置向导(设置 root 密码等):

    mysql_secure_installation
    
    • 按照提示操作,建议设置 root 密码并启用安全选项。
  5. 验证安装

    mysql -u root -p
    

    输入密码后,成功进入 MySQL 命令行即表示安装完成。


1.2 手动下载 MySQL 社区版

  1. 下载安装包

    • 访问 MySQL 官网下载页面。
    • 选择 macOS 版本(推荐下载 .dmg 格式的安装包)。
  2. 安装 MySQL

    • 双击下载的 .dmg 文件。
    • 运行其中的 .pkg 安装程序,按向导完成安装。
  3. 配置 MySQL

    • 安装完成后,在系统偏好设置中找到 MySQL,点击启动服务。
    • 或在终端运行:
      sudo /usr/local/mysql/support-files/mysql.server start
      
  4. 设置环境变量(可选):
    将 MySQL 添加到 PATH 中,方便命令行访问:

    echo 'export PATH="/usr/local/mysql/bin:$PATH"' >> ~/.zshrc
    source ~/.zshrc
    

    (如果使用 Bash,将 .zshrc 替换为 .bash_profile

  5. 登录 MySQL

    mysql -u root -p
    

    初始密码通常在安装结束时显示,或保存在 /usr/local/mysql/data/mysql-error.log 中。


1.3 常见问题

  1. 忘记 root 密码

    • 停止 MySQL 服务:
      brew services stop mysql  # 或 sudo /usr/local/mysql/support-files/mysql.server stop
      
    • 启动安全模式:
      sudo mysqld_safe --skip-grant-tables
      
    • 另开终端登录并重置密码:
      mysql -u root
      
      FLUSH PRIVILEGES;
      ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
      EXIT;
      
  2. 无法启动服务

    • 检查错误日志:/usr/local/mysql/data/*.err
    • 可能是权限问题,尝试:
      sudo chown -R _mysql:mysql /usr/local/mysql/data
      

1.4 图形化管理工具(可选)

  • MySQL Workbench:官方可视化工具,支持查询和管理。
  • Sequel Ace:轻量级开源客户端(下载地址)。

完成后,你就可以在本地开发中使用 MySQL 了!

二、Mac 上配置 MySQL 开机自动启动

2.1 使用 launchd 系统服务(原生支持)

Mac 使用 launchd 管理系统服务,MySQL 安装后通常会自动创建 .plist 文件。以下是手动配置步骤:

1. 确认 MySQL 安装路径

which mysqld

通常路径为 /usr/local/mysql/bin/mysqld(通过官方 .dmg 安装)或 /opt/homebrew/bin/mysqld(通过 Homebrew 安装)。

2. 创建或检查 .plist 文件
MySQL 官方安装包通常会自动生成:

ls /Library/LaunchDaemons/com.mysql.mysql.plist

如果不存在,手动创建:

sudo nano /Library/LaunchDaemons/com.mysql.mysqld.plist

写入以下内容(根据实际路径调整):

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict><key>Label</key><string>com.mysql.mysqld</string><key>ProgramArguments</key><array><string>/usr/local/mysql/bin/mysqld_safe</string><string>--user=mysql</string></array><key>RunAtLoad</key><true/><key>KeepAlive</key><true/><key>WorkingDirectory</key><string>/usr/local/mysql</string>
</dict>
</plist>

3. 加载服务并设置权限

sudo chown root:wheel /Library/LaunchDaemons/com.mysql.mysqld.plist
sudo launchctl load -w /Library/LaunchDaemons/com.mysql.mysqld.plist

4. 验证是否生效

sudo launchctl list | grep mysql

重启 Mac 后检查 MySQL 是否自动运行:

mysql -u root -p -e "STATUS;"

2.2 通过 Homebrew 设置开机启动(推荐)

如果通过 Homebrew 安装 MySQL,直接使用 brew services 管理:

1. 启动并设置开机自启

brew services start mysql

2. 验证状态

brew services list

输出应包含:

mysql started ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

3. 取消开机启动

brew services stop mysql

2.3 常见问题

  1. 路径错误
    如果报错 mysqld_safe: command not found,检查路径是否正确:

    sudo nano /Library/LaunchDaemons/com.mysql.mysqld.plist
    

    将路径改为实际路径(如 /opt/homebrew/bin/mysqld_safe)。

  2. 权限问题
    确保数据目录权限正确:

    sudo chown -R _mysql:mysql /usr/local/mysql/data
    
  3. 手动启动/停止

    • 启动:
      sudo /usr/local/mysql/support-files/mysql.server start
      
    • 停止:
      sudo /usr/local/mysql/support-files/mysql.server stop
      

通过以上任一方法配置后,MySQL 会在 Mac 启动时自动运行。推荐使用 Homebrew 管理,更简洁高效。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.pswp.cn/pingmian/83170.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SQL Server 事务详解:概念、特性、隔离级别与实践

一、事务的基本概念 事务&#xff08;Transaction&#xff09;是数据库操作的基本单位&#xff0c;它是由一组SQL语句组成的逻辑工作单元。事务具有以下关键特性&#xff0c;通常被称为ACID特性&#xff1a; ​​原子性&#xff08;Atomicity&#xff09;​​&#xff1a;事务…

【C语言极简自学笔记】项目开发——扫雷游戏

一、项目概述 1.项目背景 扫雷是一款经典的益智游戏&#xff0c;由于它简单而富有挑战性的玩法深受人们喜爱。在 C 语言学习过程中&#xff0c;开发扫雷游戏是一个非常合适的实践项目&#xff0c;它能够综合运用 C 语言的多种基础知识&#xff0c;如数组、函数、循环、条件判…

unix/linux source 命令,其发展历程详细时间线、由来、历史背景

追本溯源,探究技术的历史背景和发展脉络,能够帮助我们更深刻地理解其设计哲学和存在的意义。source 命令(或者说它的前身和等效形式)的历史,与 Unix Shell 本身的发展紧密相连。 让我们一起踏上这段追溯之旅,探索 source 命令的由来和发展历程。 早期 Unix Shell 与命令…

720全景展示:VR全景的技术原理及应用

VR720全景展示&#xff1a;技术原理及应用探索 720全景技术&#xff0c;作为当前全球范围内迅速崛起流行的视觉新技术&#xff0c;为用户带来了全新的真实现场感和交互式的体验。凭借全方位、无死角的视觉展示特性&#xff0c;在VR&#xff08;虚拟现实&#xff09;领域中得到…

Python爬虫实战:研究Requests-HTML库相关技术

1. 引言 1.1 研究背景与意义 随着互联网数据量的爆炸式增长,网络爬虫已成为数据获取的重要工具,广泛应用于市场调研、舆情分析、学术研究等领域。传统爬虫技术在面对现代 JavaScript 动态渲染网页时面临挑战,而 Requests-HTML 库通过集成浏览器渲染引擎,为解决这一问题提…

VectorStore 组件深入学习与检索方法

考虑到目前市面上的向量数据库众多&#xff0c;每个数据库的操作方式也无统一标准&#xff0c;但是仍然存在着一些公共特征&#xff0c;LangChain 基于这些通用的特征封装了 VectorStore 基类&#xff0c;在这个基类下&#xff0c;可以将方法划分成 6 种&#xff1a; 相似性搜…

【PyQt5】从零开始的PyQt5 - QLabel篇

从零开始的PyQt5 - QLabel篇 引言一、简述二、例程2.1 显示到QWidget窗口上2.2 重新设置Label大小和对齐方式2.3 添加内容&#xff0c;设置边框2.4 显示富文本 三、参考 引言 QLabel主要用于显示文本或图像&#xff0c;不提供用户交互功能。本文主要简述PyQt5中的QLabel以及展…

论文略读:Uncertainty-Aware Graph Structure Learning

WWW 2025 1 intro 传统GNN忽视了图结构自身存在的缺陷: 图结构常常会出现错误边和缺失边等数据问题&#xff0c;从而限制模型的效果 —>为了解决上述问题&#xff0c;产生了图结构学习算法&#xff08;GSL&#xff09; 目的在于优化结点连接和边权重来生成新的邻接矩阵主流…

HCIE-STP复习

文章目录 STP STP &#x1f3e1;作者主页&#xff1a;点击&#xff01; &#x1f916;Datacom专栏&#xff1a;点击&#xff01; ⏰️创作时间&#xff1a;2025年05月31日13点17STP通过三要素选举消除环路&#xff1a; 根桥&#xff08;BID最小&#xff0c;建议设优先级为0&…

leetcode17.电话号码的字母组合:字符串映射与回溯的巧妙联动

一、题目深度解析与字符映射逻辑 题目描述 给定一个仅包含数字 2-9 的字符串 digits&#xff0c;返回所有它能表示的字母组合。数字与字母的映射关系如下&#xff08;与电话按键相同&#xff09;&#xff1a; 2: "abc", 3: "def", 4: "ghi", …

【Unity】模型渐变技术 BlendShapes变形

模型fbx拖拽到场景并赋予脚本上SkinnedMeshRenderer参数 按下空格即可演示渐变 可去到3DsMax 或 Blender等软件制作 这种带有BlendShapes的模型 (Sphere002)是另一个模型&#xff0c;3DsMax叫变形器。 可参考&#xff1a;【技术美术百人计划】美术 3.5 BlendShape基础_哔哩哔哩…

CTFHub-RCE 命令注入-无过滤

观察源代码 判断是Windows还是Linux 源代码中有 ping -c 4 说明是Linux 查看有哪些文件 127.0.0.1|ls 发现除了index.php文件外&#xff0c;还存在一个可疑的文件 打开flag文件 我们尝试打开这个文件 127.0.0.1|cat 19492844826916.php 可是发现 文本内容显示不出来&…

DrissionPage ChromiumPage模式:浏览器自动化的高效利器

引言 在Python自动化领域&#xff0c;Selenium与Requests是开发者耳熟能详的工具&#xff0c;但二者在功能侧重上存在明显割裂。DrissionPage的出现打破了这一局面&#xff0c;其创新的ChromiumPage模式通过整合浏览器自动化与HTTP请求能力&#xff0c;为网页操作提供了全新解…

uniapp分包配置,uniapp设置subPackages

在使用uniapp开发过程中&#xff0c;由于项目比较大&#xff0c;无法直接上传&#xff0c;需要分包后才可以上传。 步骤&#xff1a; 1、在pages同级目录下创建分包的目录&#xff08;pages_second&#xff09;&#xff0c;把要分包的文件放到该目录下&#xff1b; 2、在pag…

零基础一站式端游内存辅助编写教程(无密)

目录如下&#xff1a; 基础理论篇 内存基础概念&#xff08;如内存地址、数据类型、读写原理&#xff09;端游内存机制简介&#xff08;游戏进程与内存分配&#xff09; 工具与环境搭建 常用内存分析工具介绍&#xff08;如 Cheat Engine、x64dbg 等&#xff09;开发环境配…

汽车售后诊断数据流详细分析

一、引言 随着汽车电子化程度的不断提升&#xff0c;电控系统已成为车辆运行的核心支撑。据罗兰贝格 2025 年智能汽车白皮书数据显示&#xff0c;中央计算 区域控制架构&#xff08;Zonal EEA&#xff09;的普及率已突破 58%&#xff0c;推动整车线束成本下降 41%12。与此同时…

智能守护电网安全:探秘输电线路测温装置的科技力量

在现代电力网络的庞大版图中&#xff0c;输电线路如同一条条 “电力血管”&#xff0c;日夜不息地输送着能量。然而&#xff0c;随着电网负荷不断增加&#xff0c;长期暴露在户外的线路&#xff0c;其线夹与导线在电流热效应影响下&#xff0c;极易出现温度异常。每年因线路过热…

设计模式——单例设计模式(创建型)

摘要 本文详细介绍了单例设计模式&#xff0c;包括其定义、结构、实现方法及适用场景。单例模式是一种创建型设计模式&#xff0c;确保一个类只有一个实例并提供全局访问点。其要点包括唯一性、私有构造函数、全局访问点和线程安全。文章还展示了单例设计模式的类图和时序图&a…

Lyra学习笔记 Experience流程梳理

目录 前言1 创建2 加载3 Deactivate4 总结与图示 前言 这篇主要将视角放在Experience的流程&#xff0c;所以不会涉及一些更深的东西 之后ULyraExperienceManagerComponent简称为EMC 1 创建 完事开头难&#xff0c;首先找到了管理Experience的组件&#xff0c;那么它的初始化…

Ubuntu下编译mininim游戏全攻略

目录 一、安装mininim 软件所依赖的库&#xff08;重点是allegro游戏引擎库&#xff09;二、编译mininim 软件三、将mininim打包给另一个Ubuntu系统使用四、安卓手机运行mininim 一、安装mininim 软件所依赖的库&#xff08;重点是allegro游戏引擎库&#xff09; 1. 用apt-get…