在 macOS Big Sur 上安装 MySQL 8.x Compressed TAR Archive

因个人能力有限,文章难免存在错误,望斧正,感谢。


版本:

  • macOS 11.3 Intel版本
  • MySQL 8.0.24 Compressed TAR Archive

一、准备所需文件

前往 https://dev.mysql.com/downloads/mysql/ 选择macOS系统的Compressed TAR Archive版本下载,目前最新版本是8.0.24。下载后为~/Downloads/mysql-8.0.24-macos11-x86_64.tar.gz。将其解压至/usr/local并重命名目录为mysql:

% cd ~/Downloads/
% tar -zxvf mysql-8.0.24-macos11-x86_64.tar.gz
% sudo mv mysql-8.0.24-macos11-x86_64 /usr/local/mysql

二、调整目录权限

这一步的目的是保证mysql程序可以在此目录读写数据:
请将代码中的[user]替换为当前用户名

% cd /usr/local/
% sudo chown -R [user]:wheel mysql

三、初始化数据库

由于macOS的安全机制,最好还是在执行命令前先打开“系统偏好设置”-“安全性与隐私”-“允许从以下位置下载的App:所有来源”
在终端中执行如下命令并输入密码后可以打开所有来源:

sudo spctl --master-disable

执行完后再次去系统偏好设置中确认是否打开允许所有来源。

% cd /usr/local/mysql/bin/
% sudo ./mysqld --initialize --user=mysql

初始化数据库会在mysql目录内创建data文件夹,执行完毕后:

2021-05-15T15:00:05.366701Z 0 [System] [MY-013169] [Server] /usr/local/my/bin/mysqld (mysqld 8.0.24) initializing of server in progress as process 4137
2021-05-15T15:00:05.380284Z 0 [Warning] [MY-010159] [Server] Setting lower_case_table_names=2 because file system for /usr/local/my/data/ is case insensitive
2021-05-15T15:00:05.404662Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2021-05-15T15:00:05.649401Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2021-05-15T15:00:06.348791Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: ?/LNo#lwo3N6
2021-05-15T15:00:07.009105Z 0 [System] [MY-013172] [Server] Received SHUTDOWN from user <via user signal>. Shutting down mysqld (Version: 8.0.24).

记住初始化数据库生成的临时密码,也就是A temporary password is generated for root@localhost: 后的内容,注意冒号后有一个空格不算在临时密码中。
如果不小心忘记了临时密码,删除mysql目录下的data文件夹重新执行初始化操作。

四、启动MySQL服务

完成第三步后数据库就已经初始化完成了,此时启动MySQL服务后就可以连接到MySQL数据库了。具体操作如下:

% cd /usr/local/mysql/support-files/
% ./mysql.server start

看见SUCCESS就说明启动MySQL服务成功。
除了start启动选项以外,还有stop(停止)restart(重新启动)status(状态)等。

五、修改MySQL密码

首次连接MySQL需要修改临时生成的密码,首先使用临时密码登陆MySQL,操作如下:

% cd /usr/local/mysql/bin/
% ./mysql -u root -p

然后修改MySQL密码,操作如下:
将代码中的[newPassword]替换成新密码

mysql> ALTER USER root@localhost IDENTIFIED BY [newPassword]

到这里MySQL基本可以使用了。

六、配置Path

还有一个问题就是每次电脑重启后需要重新进入/usr/local/mysql/support-files/目录执行启动MySQL服务命令,每次连接MySQL都需要先进入/usr/local/mysql/bin目录,十分麻烦。
配置Path可以稍微解决这个问题,因为目前macOS默认shell是zsh,所以这里是zsh的Path配置。
在~目录下创建文件.zprofile并写入如下内容:

export PATH="/usr/local/mysql/bin:/usr/local/mysql/support-files:${PATH}"

这样不管在什么目录都可以直接执行mysql.server start命令启动MySQL服务或mysql -u root -p命令连接MySQL


参考:https://www.cnblogs.com/yjmyzz/p/how-to-install-mysql8-on-mac-using-tar-gz.html

在 macOS Big Sur 上安装 MySQL 8.x Compressed TAR Archive

上一篇:MSSQL·备份数据库中的单表


下一篇:python连接mysql与方法的封装