MacOS 上以源码形式安装 MySQL 5.7

以下是在 macOS 上从源码安装 MySQL 5.7 的步骤:

前置条件

  1. 安装 Homebrew:如果你还没有安装 Homebrew,可以在终端中运行以下命令进行安装:

    bash 复制代码
    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
  2. 更新 Homebrew:确保你的 Homebrew 是最新版本,运行以下命令:

    bash 复制代码
    brew update

安装 MySQL 5.7

  1. 下载 MySQL 5.7 源码 :从官方网站下载 MySQL 5.7 的源码包。例如,你可以下载 mysql-5.7.37.tar.gz

  2. 解压源码包:在终端中,使用以下命令解压下载的源码包:

    bash 复制代码
    tar -xzf mysql-5.7.37.tar.gz
  3. 编译和安装 MySQL:进入解压后的目录,并运行以下命令:

    bash 复制代码
    cd mysql-5.7.37
    cmake. -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DWITH_INNODB=ON -DDEFAULT_CHARSET=utf8mb4 -DDEFAULT_COLLATION=utf8mb4_general_ci -DENABLED_LOCAL_INFILE=1
    make
    sudo make install

    这将编译并安装 MySQL 到 /usr/local/mysql 目录。

  4. 初始化 MySQL 数据库:运行以下命令来初始化 MySQL 数据库:

    bash 复制代码
    sudo /usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

    这将创建一个空的 MySQL 数据库,并设置一个默认的 root 用户密码(在这个例子中,密码被设置为空)。

  5. 启动 MySQL 服务:运行以下命令来启动 MySQL 服务:

    bash 复制代码
    sudo /usr/local/mysql/support-files/mysql.server start
  6. 登录 MySQL:使用以下命令登录到 MySQL 服务器:

    bash 复制代码
    mysql -uroot
  7. 修改 root 密码:为了安全起见,建议你修改 root 用户的密码。可以使用以下命令来设置新密码:

    sql 复制代码
    SET PASSWORD FOR 'root'@'localhost' = PASSWORD('your_new_password');

    your_new_password 替换为你想要设置的新密码。

  8. 配置 MySQL :如果需要,可以编辑 /etc/my.cnf 文件来配置 MySQL 服务器的各种选项。

结束语

现在,你已经成功从源码安装了 MySQL 5.7 在 macOS 上。记得根据你的需求进行适当的配置和安全设置。

为什么我们在安装 MySQL 5.7 前先安装 Homebrew 的几个原因:

  1. 依赖关系管理:MySQL 的编译和安装需要一些依赖项,例如 CMake、GCC 等。Homebrew 可以自动安装这些依赖项,避免了手动搜索和安装的麻烦。

  2. 简化编译过程:使用 Homebrew 安装依赖项后,编译 MySQL 的步骤会更简单。Homebrew 提供的预编译二进制文件和库可以大大缩短编译时间。

  3. 方便的更新和卸载:如果你想更新或卸载 MySQL,使用 Homebrew 会更加方便。只需运行相应的命令,Homebrew 就会处理所有的依赖关系和文件。

  4. 统一的安装路径 :Homebrew 将所有安装的软件和工具都放在 /usr/local 目录下,这使得管理和查找这些文件变得更加容易。

  5. 社区支持:Homebrew 有一个庞大的用户和开发者社区,提供了大量的插件和公式,可以帮助你安装和管理各种软件和工具。

总的来说,使用 Homebrew 可以简化 MySQL 的安装过程,减少可能出现的错误,并提供更好的管理和更新体验。

相关推荐
ChicagoTypewriter12 分钟前
MySQL用户和授权
mysql
圈圈编码1 小时前
悲观锁和乐观锁
java·开发语言·sql·mysql
学习中的码虫2 小时前
MySQL提升
数据库·mysql
卡布奇诺-海晨4 小时前
MySQL的MVCC机制
数据库·mysql
秃头摸鱼侠5 小时前
MySQL查询语句(续)
数据库·mysql
睡觉待开机5 小时前
6. MySQL基本查询
数据库·mysql
weixin_470880267 小时前
MySQL体系架构解析(二):MySQL目录与启动配置全解析
数据库·mysql·面试·mysql体系架构·mysql bin目录
英英_8 小时前
MySQL 日志数据同步的详细教程
数据库·mysql
Paddy哥8 小时前
linux 安装mysql8.0;支持国产麒麟,统信uos系统
linux·mysql·麒麟·统信uos·统信
明月看潮生8 小时前
青少年编程与数学 01-011 系统软件简介 05 macOS操作系统
macos·青少年编程·操作系统·系统软件·编程与数学