2023-12-04T14:52:39.729720Z 0 [System] [MY-010116] [Server] /usr/local/mysql-8.0.27-macos11-arm64/bin/mysqld (mysqld 8.0.27) starting as process 3607 2023-12-04T14:52:39.730595Z 0 [Warning] [MY-010091] [Server] Can't create test file /usr/local/mysql-8.0.27-macos11-arm64/data/mysqld_tmp_file_case_insensitive_test.lower-test 2023-12-04T14:52:39.730598Z 0 [Warning] [MY-010159] [Server] Setting lower_case_table_names=2 because file system for /usr/local/mysql-8.0.27-macos11-arm64/data/ is case insensitive 2023-12-04T14:52:39.730618Z 0 [ERROR] [MY-013276] [Server] Failed to set datadir to '/usr/local/mysql-8.0.27-macos11-arm64/data/' (OS errno: 13 - Permission denied) 2023-12-04T14:52:39.730640Z 0 [ERROR] [MY-010119] [Server] Aborting 2023-12-04T14:52:39.730694Z 0 [System] [MY-010910] [Server] /usr/local/mysql-8.0.27-macos11-arm64/bin/mysqld: Shutdown complete (mysqld 8.0.27) MySQL Community Server - GPL.
根据日志信息,MySQL启动失败的原因可能是权限问题。错误代码13表示“Permission denied”,意味着在设置数据目录时没有足够的权限。
要解决这个问题,你可以尝试以下方法:
- 以管理员身份运行MySQL。在终端中输入以下命令:
sudo /usr/local/mysql-8.0.27-macos11-arm64/bin/mysqld --initialize-insecure --user=mysql --datadir='/usr/local/mysql-8.0.27-macos11-arm64/data'
这将以管理员权限初始化MySQL并创建数据目录。
- 如果上述方法仍然无法解决问题,你可以尝试更改数据目录的权限。在终端中输入以下命令:
sudo chown -R _mysql:_mysql /usr/local/mysql-8.0.27-macos11-arm64/data
这将把数据目录的所有权更改为当前用户和组(通常是_mysql
)。
- 重新启动MySQL服务。在终端中输入以下命令:
sudo /usr/local/mysql-8.0.27-macos11-arm64/bin/mysqld --user=mysql --datadir='/usr/local/mysql-8.0.27-macos11-arm64/data'
希望这些建议能帮助你解决问题。