2.10.2 启动服务器

本节介绍如何在 Unix 和类似 Unix 的系统上启动服务器。 (对于 Windows,请参阅第 2.3.4.5 节“首次启动服务器”。)有关可用于测试服务器是否可访问并正常工作的一些建议命令,请参阅第 2.10.3 节“测试服务器”

如果您的安装包含mysqld_safe,请像这样启动 MySQL 服务器:

shell> bin/mysqld_safe --user=mysql &

Note

对于使用 RPM 软件包安装 MySQL 的 Linux 系统,服务器启动和关闭是使用 systemd 而不是mysqld_safe进行 Management 的,并且未安装mysqld_safe。参见第 2.5.10 节“使用 systemdManagementMySQL 服务器”

如果您的安装包含 systemd 支持,请按以下方式启动服务器:

shell> systemctl start mysqld

如果服务名称与mysqld(例如,在 SLES 系统上为mysql)不同,请替换该服务名称。

使用非特权(非root)登录帐户运行 MySQL 服务器非常重要。为确保这一点,请以root的身份运行mysqld_safe并包括--user选项,如图所示。否则,您应该以mysql身份登录时执行程序,在这种情况下,可以从命令中省略--user选项。

有关以非特权用户身份运行 MySQL 的更多说明,请参见第 6.1.5 节“如何以普通用户身份运行 MySQL”

如果命令立即失败并显示mysqld ended,请在错误日志中查找信息(默认情况下是数据目录中的host_name.err文件)。

如果服务器无法访问它启动的数据目录或无法读取mysql数据库中的授权 table,它将在其错误日志中写入一条消息。如果您忽略了通过 continue 执行此步骤之前初始化数据目录来创建授予 table 的操作,或者运行了不带--user选项来初始化数据目录的命令,则可能会出现此类问题。删除data目录,并使用--user选项运行命令。

如果您在启动服务器时遇到其他问题,请参阅部分 2.10.2.1,“对启动 MySQL Server 的问题进行故障排除”。有关mysqld_safe的更多信息,请参见第 4.3.2 节“ mysqld_safe-MySQL 服务器启动脚本”。有关 systemd 支持的更多信息,请参见第 2.5.10 节“使用 systemdManagementMySQL 服务器”