MySQL:服务器和服务器启动程序
服务器和服务器启动程序
mysqld:MySQL服务器
mysqld 也称为 MySQL Server,是一个单线程程序,它不会产生其他进程。它可在 MySQL 安装中完成大部分工作。 MySQL 服务器 Management 对【包含数据库和 table 的】MySQL 数据目录的访问。数据目录也是其他信息(例如日志文件和状态文件)的默认位置。
- 某些安装软件包包含名为“mysqld-debug”的服务器的调试版本。调用此版本而不是mysqld以获得调试支持、内存分配检查和跟踪文件支持。
MySQL 服务器启动时,它将侦听来自 Client 端程序的网络连接,并代 table 这些 Client 端 Management 对数据库的访问。
mysqld程序具有许多可以在启动时指定的选项。有关选项的完整列 table,请运行以下命令:
shell> mysqld --verbose --help
- MySQL Server 还具有一组系统变量,这些变量会在运行时影响其操作。可以在服务器启动时设置系统变量,并且可以在运行时更改许多系统变量以实现动态服务器重新配置。
- MySQL Server 还具有一组状态变量,这些变量提供有关其操作的信息。您可以监视这些状态变量以访问运行时性能 Feature。
mysqld_safe:MySQL服务器启动脚本
mysqld_safe 添加了一些安全功能,例如在发生错误时重新启动服务器以及将运行时信息记录到错误日志中。 推荐使用mysqld_safe在 Unix 上启动mysqld服务器。
- 对于某些 Linux 平台,从 RPM 或 Debian 软件包安装的 MySQL 包括对 ManagementMySQL 服务器启动和关闭的系统支持。在这些平台上,未安装mysqld_safe,因为它是不必要的。
mysqld_safe尝试启动名为mysqld的可执行文件。要覆盖默认行为并明确指定要运行的服务器的名称,请为mysqld_safe指定“--mysqld”或“--mysqld-version”选项。也可以使用“--ledir”指示mysqld_safe在其中寻找服务器的目录。
mysqld_safe从选项文件(配置文件“my.ini”)的[mysqld],[server]和[mysqld_safe]节中读取所有选项。例如,如果您指定这样的[mysqld]部分,则mysqld_safe将找到并使用--log-error选项:
[mysqld]
log-error=error.log
- mysqld_safe的许多选项与mysqld的选项相同。
- 如果在命令行中指定了mysqld_safe未知的选项,则会将它们传递给mysqld;如果在选项文件的[mysqld_safe]组中指定了这些参数,则会将它们忽略。
- 为了向后兼容,mysqld_safe也会读取[safe_mysqld]部分,但为最新,您应将此类部分重命名为[mysqld_safe]。
mysqld_safe 接受命令行和选项文件中的选项,如下:
Option Name | Description | Introduced | Deprecated |
---|---|---|---|
--basedir | MySQL 安装目录的路径 | ||
--core-file-size | mysqld 应该能够创建的核心文件的大小 | ||
--datadir | 数据目录的路径 | ||
--defaults-extra-file | 除常规选项文件外,还读取命名的选项文件 | ||
--defaults-file | 只读命名的选项文件 | ||
--help | 显示帮助信息并退出 | ||
--ledir | 服务器所在目录的路径 | ||
--log-error | 将错误日志写入命名文件 | ||
--malloc-lib | 用于 mysqld 的备用 malloc 库 | ||
--mysqld | 要启动的服务器程序的名称(在 ledir 目录中) | ||
--mysqld-safe-log-timestamps | 日志记录的时间戳格式 | 5.7.11 | |
--mysqld-version | 服务器程序名称的后缀 | ||
--nice | 使用漂亮的程序设置服务器调度优先级 | ||
--no-defaults | 不读取选项文件 | ||
--open-files-limit | mysqld 应该可以打开的文件数 | ||
--pid-file | 服务器进程标识文件的路径名 | ||
--plugin-dir | 安装插件的目录 | ||
--port | 侦听 TCP/IP 连接的端口号 | ||
--skip-kill-mysqld | 不要试图杀死流离失所的 mysqld 进程 | ||
--skip-syslog | 不要将错误消息写入 syslog;使用错误日志文件 | Yes | |
--socket | 侦听 Unix 套接字连接的套接字文件 | ||
--syslog | 将错误消息写入系统日志 | Yes | |
--syslog-tag | 标记后缀,用于写入系统日志的消息 | Yes | |
--timezone | 将 TZ 时区环境变量设置为命名值 | ||
--user | 以具有名称 user_name 或数字用户 ID user_id 的用户身份运行 mysqld |
mysql.server:MySQL服务器启动脚本
mysqld_multi:管理多个MySQL服务器