24、MySQL 8.0 5.1.4服务器命令选项

启动mysqld服务器时,可以使用第4.2.3节“指定程序选项”中介绍的任何方法 指定程序选项。最常见的方法是在选项文件或命令行中提供选项。但是,在大多数情况下,确保服务器每次运行时都使用相同的选项。确保这一点的最好方法是将它们列在选项文件中。

mysqld读取[mysqld]和[server] 组中的选项 。mysqld_safe的读取选项 [mysqld],[server], [mysqld_safe],和 [safe_mysqld]团体。 mysql.server读取[mysqld]和[mysql.server] 组中的选项 。

mysqld接受许多命令选项。对于一个简短的总结,执行这个命令:

mysqld --help

要查看完整列表,请使用以下命令:

mysqld --verbose --help

列表中的一些项目实际上是可以在服务器启动时设置的系统变量。这些可以在运行时使用该SHOW VARIABLES语句显示前面的mysqld 命令显示的某些项目不会出现在SHOW VARIABLES输出中; 这是因为它们只是选项而不是系统变量。

以下列表显示了一些最常用的服务器选项。其他部分介绍其他选项:

一些选项控制缓冲区或缓存的大小。对于给定的缓冲区,服务器可能需要分配内部数据结构。这些结构通常是从分配给缓冲区的总内存中分配的,而所需的空间量可能与平台有关。这意味着,当您为控制缓冲区大小的选项分配值时,实际可用的空间量可能与分配的值不同。在某些情况下,金额可能小于指定的金额。服务器也可能会向上调整一个值。例如,如果将值0赋予最小值为1024的选项,则服务器将将值设置为1024。
除非另有说明,缓冲区大小,长度和堆栈大小的值以字节为单位给出。
一些选项采用文件名称值。除非另有说明,否则如果该值是相对路径名称,则默认文件位置是数据目录。要明确指定位置,请使用绝对路径名称。假设数据目录是 /var/mysql/data。如果文件值选项是作为相对路径名给出的,它将位于下方 /var/mysql/data。如果该值是绝对路径名,则其位置如路径名所示。
您也可以在服务器启动时通过使用变量名称作为选项来设置服务器系统变量的值。要将值分配给服务器系统变量,请使用表单的选项 。例如, 将该变量设置 为384MB的值。 --var_name=value--sort_buffer_size=384Msort_buffer_size
当你给一个变量赋值时,MySQL可能会自动修正该值以保持在给定范围内,或者如果只允许某些值,则将该值调整到最接近的允许值。
要限制在运行时可以用SET 语句设置系统变量的 最大值,请使用 服务器启动时表单的选项来指定此最大值 。 --maximum-var_name=value

您可以使用该SET 语句在运行时更改大多数系统变量的值。

  • --help, -?

    属性
    命令行格式--help

    显示一条简短的帮助信息并退出。使用 --verbose和 --help选项来查看完整的信息。

  • --allow-suspicious-udfs

  • 属性
    命令行格式--allow-suspicious-udfs
    类型布尔
    默认FALSE

    该选项控制是否xxx可以加载仅具有主函数符号的用户定义函数默认情况下,该选项关闭,只能加载至少有一个辅助符号的UDF; 这可以防止尝试从除包含合法UDF的共享对象文件之外的共享对象文件加载功能。

--ansi

属性
命令行格式--ansi

使用标准(ANSI)SQL语法而不是MySQL语法。要更精确地控制服务器SQL模式,请--sql-mode改为使用该 选项。

  • --basedir=dir_name, -b dir_name

    属性
    命令行格式--basedir=dir_name
    系统变量basedir
    范围全球
    动态没有
    SET_VAR提示应用没有
    类型目录名称
    默认(> = 8.0.2)parent of mysqld installation directory

    MySQL安装目录的路径。该选项设置basedir系统变量。

    服务器可执行文件在启动时确定自己的完整路径名,并使用它所在的目录的父目录作为默认 basedir值。这反过来使服务器basedir在搜索与服务器相关的信息(如share包含错误消息目录)时 可以使用它 

  • --big-tables

  • 属性
    命令行格式--big-tables
    系统变量big_tables
    范围全球,会议
    动态
    SET_VAR提示应用没有
    类型布尔
    默认OFF

    通过将所有临时集保存在文件中来启用大型结果集。此选项可防止大多数“ 表满 ” 错误,但也会减慢内存表可满足的查询速度。服务器能够使用小型临时表的内存自动处理大型结果集,并在必要时切换到磁盘表。

  • --bind-address=addr

    属性
    命令行格式--bind-address=addr
    系统变量bind_address
    范围全球
    动态没有
    SET_VAR提示应用没有
    类型
    默认*

    MySQL服务器在单个网络套接字上侦听TCP / IP连接。该套接字绑定到单个地址,但地址可能映射到多个网络接口。要指定地址,请 在服务器启动时使用该 选项,其中 是IPv4或IPv6地址或主机名。如果是主机名称,则服务器将名称解析为IP地址并绑定到该地址。 --bind-address=addraddraddr

    服务器如下处理不同类型的地址:

    • 如果地址是*,则服务器接受所有服务器主机IPv6和IPv4接口上的TCP / IP连接(如果服务器主机支持IPv6),否则接受所有IPv4地址上的TCP / IP连接。使用此地址允许所有服务器接口上的IPv4和IPv6连接。该值是默认值。

    • 如果地址是0.0.0.0,则服务器接受所有服务器主机IPv4接口上的TCP / IP连接。

    • 如果地址是::,则服务器接受所有服务器主机IPv4和IPv6接口上的TCP / IP连接。

    • 如果地址是IPv4映射地址,则服务器接受IPv4或IPv6格式的该地址的TCP / IP连接。例如,如果服务器绑定::ffff:127.0.0.1,客户端可以使用--host=127.0.0.1或 连接--host=::ffff:127.0.0.1

    • 如果地址是“ 常规 ” IPv4或IPv6地址(如127.0.0.1或 ::1),则服务器仅接受该IPv4或IPv6地址的TCP / IP连接。

    如果您打算将服务器绑定到特定地址,请确保mysql.user授权表中包含具有可用于连接到该地址的管理权限的帐户。否则,您将无法关闭服务器。例如,如果将服务器绑定到*,则可以使用所有现有帐户连接到该服务器但是如果你绑定了服务器 ::1,它只接受该地址上的连接。在这种情况下,首先确保 'root'@'::1'帐户存在于 mysql.user表中,这样您仍然可以连接到服务器以将其关闭。

  • --binlog-format={ROW|STATEMENT|MIXED}

    属性
    命令行格式--binlog-format=format
    系统变量binlog_format
    范围全球,会议
    动态
    SET_VAR提示应用没有
    类型列举
    默认ROW
    有效值

    ROW

    STATEMENT

    MIXED

    指定是使用基于行的,基于语句的还是混合的复制。基于语句是MySQL 8.0中的默认设置。

    在某些情况下,在运行时更改此变量是不可能的,或导致复制失败。

    设置二进制日志记录格式而不启用二进制日志记录会设置 binlog_format全局系统变量并记录警告。

  • --character-sets-dir=dir_name

    属性
    命令行格式--character-sets-dir=dir_name
    系统变量character_sets_dir
    范围全球
    动态没有
    SET_VAR提示应用没有
    类型目录名称

    安装字符集的目录。

  • --character-set-client-handshake

    属性
    命令行格式--character-set-client-handshake
    类型布尔
    默认TRUE

    不要忽略客户端发送的字符集信息。要忽略客户端信息并使用默认服务器字符集,请使用 --skip-character-set-client-handshake这使得MySQL像MySQL 4.0一样行事。

  • --character-set-filesystem=charset_name

    属性
    命令行格式--character-set-filesystem=name
    系统变量character_set_filesystem
    范围全球,会议
    动态
    SET_VAR提示应用没有
    类型
    默认binary

    文件系统字符集。该选项设置 character_set_filesystem 系统变量。

  • --character-set-server=charset_name, -C charset_name

    属性
    命令行格式--character-set-server
    系统变量character_set_server
    范围全球,会议
    动态
    SET_VAR提示应用没有
    类型
    默认(> = 8.0.1)utf8mb4
    默认(8.0.0)latin1

    使用charset_name作为默认服务器字符集。如果使用此选项指定非默认字符集,则还应该使用--collation-server指定排序规则。

  • --chroot=dir_name, -r dir_name

    属性
    命令行格式--chroot=dir_name
    类型目录名称

    使用系统调用在启动期间 将mysqld服务器置于一个封闭的环境中 chroot()这是推荐的安全措施。这个选项的使用有些限制 LOAD DATA INFILE和 SELECT ... INTO OUTFILE

  • --collation-server=collation_name

    属性
    命令行格式--collation-server
    系统变量collation_server
    范围全球,会议
    动态
    SET_VAR提示应用没有
    类型
    默认(> = 8.0.1)utf8mb4_0900_ai_ci
    默认(8.0.0)latin1_swedish_ci

    使用collation_name作为默认的服务器排序规则。

  • --console

    属性
    命令行格式--console
    平台特定视窗

    (仅限Windows。)导致默认错误日志目标为控制台。这会影响将其自己的输出目标基于默认目标的日志编写器。如果使用此选项,mysqld不会关闭控制台窗口。

    --console--log-error如果两者都给出优先 

  • --core-file

    属性
    命令行格式--core-file
    类型布尔
    默认OFF

    如果mysqld死了,写一个核心文件核心文件的名称和位置取决于系统。在Linux上,一个名为核心的文件 被写入进程的当前工作目录,对于mysqld而言是数据目录。 代表服务器进程的进程ID。在OS X上,名为的核心文件 被写入目录。在Solaris上,使用coreadm命令指定写入核心文件的位置以及如何命名该文件。 core.pidpidcore.pid/cores

    对于某些系统,要获取核心文件,还必须指定 mysqld_safe--core-file-size选项 在某些系统上,如Solaris,如果您也在使用该选项,则不会获得核心文件 可能有其他限制或限制。例如, 在启动服务器之前可能需要执行ulimit -c unlimited请咨询您的系统文档。 --user

  • --daemonize, -D

    属性
    命令行格式--daemonize[={OFF|ON}]
    类型布尔
    默认OFF

    此选项使服务器作为传统的分叉守护程序运行,允许它与使用systemd进行过程控制的操作系统一起使用。

    如果服务器使用该--daemonize选项启动 并且未连接到tty设备,--log-error=""则在没有显式日志记录选项的情况下使用默认错误日志 记录选项来将错误输出指向缺省日志文件。

    -D是一个同义词 --daemonize

  • --datadir=dir_name, -h dir_name

    属性
    命令行格式--datadir=dir_name
    系统变量datadir
    范围全球
    动态没有
    SET_VAR提示应用没有
    类型目录名称

    MySQL服务器数据目录的路径。该选项设置datadir系统变量。请参阅该变量的说明。

  • --debug[=debug_options], -# [debug_options]

    属性
    命令行格式--debug[=debug_options]
    系统变量debug
    范围全球,会议
    动态
    SET_VAR提示应用没有
    类型(Windows)
    类型(Unix)
    默认(Windows)d:t:i:O,\mysqld.trace
    默认(Unix)d:t:i:o,/tmp/mysqld.trace

    如果MySQL配置了 CMake选项,则可以使用此选项获取mysqld正在执行的跟踪文件一个典型的字符串是 默认是在Unix和Windows上。 -DWITH_DEBUG=1debug_optionsd:t:o,file_named:t:i:o,/tmp/mysqld.traced:t:i:O,\mysqld.trace

    使用-DWITH_DEBUG=1通过调试支持来配置MySQL使您--debug="d,parser_debug"可以在启动服务器时使用该 选项。这会导致用于处理SQL语句的Bison解析器将解析器跟踪转储到服务器的标准错误输出。通常,该输出写入错误日志。

    该选项可能会多次提供。以先前的值开头+-添加或从之前的值中减去的值。例如, 将值设置为 。 --debug=T --debug=+PP:T

    有关更多信息,请参见第29.5.3节“DBUG包”

  • --debug-sync-timeout[=N]

    属性
    命令行格式--debug-sync-timeout[=#]
    类型整数

    控制是否启用了用于测试和调试的调试同步工具。使用Debug Sync要求使用CMake选项配置MySQL (请参见 第2.8.4节“MySQL源配置选项”)。如果调试同步未被编译,则此选项不可用。选项值是以秒为单位的超时值。默认值为0,禁用调试同步。要启用它,请指定一个大于0的值; 此值也会成为各个同步点的默认超时值。如果给出的选项没有值,则超时设置为300秒。 -DENABLE_DEBUG_SYNC=1

    有关调试同步工具以及如何使用同步点的说明,请参阅 MySQL内部:测试同步

  • --default-storage-engine=type

    属性
    命令行格式--default-storage-engine=name
    系统变量default_storage_engine
    范围全球,会议
    动态
    SET_VAR提示应用没有
    类型列举
    默认InnoDB

    设置表格的默认存储引擎。请参阅 第16章,备用存储引擎该选项仅设置永久表的存储引擎。要设置TEMPORARY表格的存储引擎,请设置 default_tmp_storage_engine 系统变量。

    如果在服务器启动时禁用默认存储引擎,则必须将永久和TEMPORARY的默认引擎设置为 不同的引擎,否则服务器将无法启动。

  • --default-time-zone=timezone

    属性
    命令行格式--default-time-zone=name
    类型

    设置默认服务器时区。该选项设置全局 time_zone系统变量。如果未给出此选项,则默认时区与系统时区相同(由system_time_zone系统变量的值给出) 

  • --defaults-extra-file=file_name

    在全局选项文件之后读取此选项文件,但在用户选项文件之前(在Unix上)。如果文件不存在或无法访问,则会发生错误。 file_name如果作为相对路径名而非完整路径名给出,则相对于当前目录进行解释。如果使用它,它必须是命令行中的第一个选项。

    有关此选项的其他信息,请参见 第4.2.7节“影响选项文件处理的命令行选项”

  • --defaults-file=file_name

    只读取给定的选项文件。如果文件不存在或无法访问,则会发生错误。 file_name如果作为相对路径名而非完整路径名给出,则相对于当前目录进行解释。

    例外:即使有 --defaults-file, mysqld的读取 mysqld-auto.cnf

    注意

    这必须是在命令行中的第一个选项,如果它被使用,只是如果服务器开始使用 --defaults-file和 --install(或 --install-manual)选项, --install(或 --install-manual)必须是第一个。

    有关此选项的其他信息,请参见 第4.2.7节“影响选项文件处理的命令行选项”

  • --defaults-group-suffix=str

    不仅要阅读常用选项组,还要阅读具有常用名称和后缀的组 str例如, mysqld通常读取该 [mysqld]组。如果--defaults-group-suffix=_other 给出该 选项,mysqld也会读取该 [mysqld_other]组。

    有关此选项的其他信息,请参见 第4.2.7节“影响选项文件处理的命令行选项”

  • --delay-key-write[={OFF|ON|ALL}]

    属性
    命令行格式--delay-key-write[=name]
    系统变量delay_key_write
    范围全球
    动态
    SET_VAR提示应用没有
    类型列举
    默认ON
    有效值

    ON

    OFF

    ALL

    指定如何使用延迟键写入。延迟键写入会导致键缓冲区在MyISAM写入之间不会被刷新 OFF 禁用延迟键写入。ON为使用该DELAY_KEY_WRITE选项创建的表启用延迟键写入 ALL延迟所有MyISAM表的关键写入 请参见 第5.1.1节“配置服务器”和 第16.2.1节“MyISAM启动选项”

    注意

    如果将此变量设置为ALL,则在使用MyISAM表时,不应使用其他程序内的表(例如另一个MySQL服务器或 myisamchk)。这样做会导致索引损坏。

  • --des-key-file=file_name

    属性
    命令行格式--des-key-file=file_name
    弃用是的(在8.0.3中删除)

    这个选项在MySQL 8.0.3中被删除。

  • --early-plugin-load=plugin_list

    属性
    命令行格式--early-plugin-load=plugin_list
    类型
    默认empty string

    该选项告诉服务器在加载强制内置插件之前和存储引擎初始化之前加载哪些插件。如果--early-plugin-load给出多个 选项,则只使用最后一个。

    选项值是以分号分隔的列表 值。每个 都是要加载的插件的名称,并且是包含插件代码的库文件的名称。如果插件库的名称没有任何前面的插件名称,则服务器会加载库中的所有插件。服务器在由系统变量命名的目录中查找插件库文件 。 name=plugin_libraryplugin_librarynameplugin_libraryplugin_dir

    例如,如果插件命名myplug1并 myplug2有库文件, myplug1.so并 myplug2.so使用此选项来执行早期插件加载:

    shell> mysqld --early-plugin-load="myplug1=myplug1.so;myplug2=myplug2.so"

    引号用于参数值,否则分号(;)会被某些命令解释器解释为特殊字符。(例如,Unix shell将它视为命令终止符。)

    每个指定的插件都会提前加载,只能调用一次 mysqld重新启动后,插件不会提前加载,除非 --early-plugin-load再次使用。

    如果服务器开始使用 --initialize或 --initialize-insecure,则指定的插件 --early-plugin-load未加载。

    如果服务器运行 --help,则由指定的插件 --early-plugin-load加载但未初始化。此行为可确保插件选项显示在帮助消息中。

    默认--early-plugin-load 值为空。要加载keyring_file 插件,必须使用--early-plugin-load带有非空值的显式 选项。

    InnoDB表空间加密功能依赖于keyring_file插件加密密钥管理和 keyring_file插件之前必须存储引擎初始化加载,以便 InnoDB为加密表恢复。希望keyring_file 在启动时加载插件的管理员应使用适当的非空选项值; 例如,keyring_file.so 在Unix和类Unix系统上以及 keyring_file.dll在Windows上。

    有关InnoDB表空间加密的信息,请参见 第15.7.11节“InnoDB表空间加密”有关插件加载的一般信息,请参见 第5.6.1节“安装和卸载插件”

  • --enable-named-pipe

    属性
    命令行格式--enable-named-pipe
    平台特定视窗

    启用对命名管道的支持。该选项仅适用于Windows。

  • --event-scheduler[=value]

    属性
    命令行格式--event-scheduler[=value]
    系统变量event_scheduler
    范围全球
    动态
    SET_VAR提示应用没有
    类型列举
    默认(> = 8.0.3)ON
    默认(<= 8.0.2)OFF
    有效值

    ON

    OFF

    DISABLED

    启用或禁用,并启动或停止事件调度程序。

    有关详细信息,请参阅 该 --event-scheduler选项

  • --exit-info[=flags], -T [flags]

    属性
    命令行格式--exit-info[=flags]
    类型整数

    这是一个可以用来调试mysqld服务器的不同标志的位掩码除非你确切地知道它做什么,否则不要使用这个选项

  • --external-locking

    属性
    命令行格式--external-locking
    类型布尔
    默认FALSE

    启用外部锁定(系统锁定),默认情况下禁用。如果你在一个lockd没有完全工作的系统上(例如Linux)使用这个选项 mysqld很容易死锁。

    要显式禁用外部锁定,请使用 --skip-external-locking

    外部锁仅影响 MyISAM表访问。有关更多信息,包括可以使用和不可使用的条件,请参见第8.11.5节“外部锁定”

  • --flush

    属性
    命令行格式--flush
    系统变量flush
    范围全球
    动态
    SET_VAR提示应用没有
    类型布尔
    默认OFF

    在每个SQL语句之后刷新(同步)对磁盘的所有更改。通常情况下,只有在每个SQL语句之后,MySQL才会写入对磁盘的所有更改,并让操作系统处理与磁盘的同步。参见 第B.5.3.3节“如果MySQL保持崩溃怎么办”

    注意

    如果--flush指定,则值flush_time无关紧要,并且更改为 flush_time对刷新行为没有影响。

  • --gdb

    属性
    命令行格式--gdb
    类型布尔
    默认FALSE

    安装中断处理程序SIGINT (停止所需的mysqld与 ^C设置断点),并且禁止堆栈跟踪和核心文件处理。请参见第29.5节“调试和移植MySQL”

    从MySQL 8.0.11开始,此选项对抑制用于实现RESTART语句的分叉的Windows具有额外的作用:分叉使一个进程能够充当另一个进程的监视器,而另一个作为服务器。然而,分叉使得确定服务器进程以附加调试更加困难,所以启动服务器时--gdb 抑制分叉。副作用是对于以此选项启动的服务器,RESTART 只需退出并不重新启动。

  • --general-log[={0|1}]

    属性
    命令行格式--general-log
    系统变量general_log
    范围全球
    动态
    SET_VAR提示应用没有
    类型布尔
    默认OFF

    指定初始的一般查询日志状态。如果没有参数或参数为1,则该 --general-log选项将启用日志。如果省略或用0的参数给出,则该选项将禁用日志。

  • --initialize, -I

    属性
    命令行格式--initialize
    类型布尔
    默认OFF

    此选项用于通过创建数据目录并填充mysql系统数据库中的表来初始化MySQL安装 有关更多信息,请参见 第2.9.1.1节“使用mysqld手动初始化数据目录”

    当服务器启动时 --initialize,某些功能不可用,从而限制了该--init-file选项指定的任何文件中允许的语句 有关更多信息,请参阅该选项的说明。另外,disabled_storage_engines 系统变量不起作用。

    --initialize与...互斥--daemonize

    -I是一个同义词 --initialize

  • --initialize-insecure

    属性
    命令行格式--initialize-insecure
    类型布尔
    默认OFF

    该选项用于通过创建数据目录并填充mysql系统数据库中的表来初始化MySQL安装 这个选项意味着 --initialize有关更多信息,请参阅该选项的说明以及 第2.9.1.1节“使用mysqld手动初始化数据目录”

    --initialize-insecure与...互斥 --daemonize

  • --init-file=file_name

    属性
    命令行格式--init-file=file_name
    系统变量init_file
    范围全球
    动态没有
    SET_VAR提示应用没有
    类型文件名

    在启动时从这个文件读取SQL语句。每条声明必须在一行中,不应包含注释。

    如果服务器使用--initializeor --initialize-insecure选项启动 ,它将以bootstap模式运行,并且某些功能不可用,从而限制文件中允许的语句。这些包括与帐户管理(例如CREATE USER或 GRANT),复制和全局事务标识符相关的语句请参见 第18.1.3节“使用全局事务标识符进行复制”

  • --innodb-xxx

    InnoDB存储引擎设置一个选项这些InnoDB选项在第15.13节“InnoDB启动选项和系统变量”中列出 

  • --install [service_name]

    属性
    命令行格式--install [service_name]
    平台特定视窗

    (仅限Windows)将服务器安装为在Windows启动期间自动启动的Windows服务。默认的服务名称是MySQL如果没有 service_name给出值。有关更多信息,请参见第2.3.5.8节“将MySQL作为Windows服务启动”

    注意

    如果服务器使用--defaults-file和 --install选项 启动,则 --install必须先启动。

  • --install-manual [service_name]

    属性
    命令行格式--install-manual [service_name]
    平台特定视窗

    (仅限Windows)将服务器安装为必须手动启动的Windows服务。它不会在Windows启动过程中自动启动。默认的服务名称是 MySQL如果没有 service_name给出值。有关更多信息,请参见第2.3.5.8节“将MySQL作为Windows服务启动”

    注意

    如果服务器使用--defaults-file和 --install-manual选项 启动,则 --install-manual必须先启动。

  • --language=lang_name, -L lang_name

    属性
    命令行格式--language=name
    弃用是; 使用lc-messages-dir
    系统变量language
    范围全球
    动态没有
    SET_VAR提示应用没有
    类型目录名称
    默认/usr/local/mysql/share/mysql/english/

    用于错误消息的语言。 lang_name可以作为语言名称或作为安装语言文件的目录的完整路径名给出。请参见 第10.11节“设置错误消息语言”

    --lc-messages-dir并且 --lc-messages应该被使用,而不是--language被弃用(并且作为别名被处理 --lc-messages-dir)。该 --language选项将在未来的MySQL版本中被删除。

  • --large-pages

    属性
    命令行格式--large-pages
    系统变量large_pages
    范围全球
    动态没有
    SET_VAR提示应用没有
    平台特定Linux的
    类型(Linux)布尔
    默认(Linux)FALSE

    某些硬件/操作系统体系结构支持的内存页面大于默认值(通常为4KB)。这种支持的实际实施取决于底层硬件和操作系统。执行大量内存访问的应用程序可能通过使用大页面来获得性能改进,这是因为减少了翻译旁视缓冲区(TLB)缺失。

    MySQL支持大型页面支持的Linux实现(在Linux中称为HugeTLB)。请参见 第8.12.3.2节“启用大页面支持”有关Solaris支持大页面的信息,请参阅该--super-large-pages选项的说明 

    --large-pages 在默认情况下被禁用。

  • --lc-messages=locale_name

    属性
    命令行格式--lc-messages=name
    系统变量lc_messages
    范围全球,会议
    动态
    SET_VAR提示应用没有
    类型
    默认en_US

    用于错误消息的语言环境。默认是 en_US服务器将参数转换为语言名称并将其与值组合 --lc-messages-dir以生成错误消息文件的位置。请参见 第10.11节“设置错误消息语言”

  • --lc-messages-dir=dir_name

    属性
    命令行格式--lc-messages-dir=dir_name
    系统变量lc_messages_dir
    范围全球
    动态没有
    SET_VAR提示应用没有
    类型目录名称

    错误消息所在的目录。服务器使用该值和值 --lc-messages来生成错误消息文件的位置。请参见 第10.11节“设置错误消息语言”

  • --local-service

    属性
    命令行格式--local-service

    (仅限Windows)--local-service服务名称后面的选项会导致服务器使用LocalService具有有限系统特权Windows帐户运行 如果两个 --defaults-file和 --local-service给出以下服务名称,他们可以在任何顺序。请参见 第2.3.5.8节“将MySQL作为Windows服务启动”

  • --log-error[=file_name]

    属性
    命令行格式--log-error[=file_name]
    系统变量log_error
    范围全球
    动态没有
    SET_VAR提示应用没有
    类型文件名

    将默认错误日志目标设置为指定文件。这会影响将其自己的输出目标基于默认目标的日志编写器。请参见第5.4.2节“错误日志”

    如果该选项不命名文件,则Unix和类Unix系统上的默认错误日志目标是host_name.err 在数据目录中命名的文件 除非--pid-file 指定选项,否则Windows上的默认目标是相同的在这种情况下,文件名是PID文件基本名称,后缀为.err数据目录中的后缀

    如果该选项命名文件,则默认目标是.err位于数据目录下的该文件(如果名称没有后缀,则添加后缀),除非给出绝对路径名指定其他位置。

    如果错误日志输出无法重定向到错误日志文件,则会发生错误并且启动失败。

    在Windows中,如果两者都给出--console则优先--log-error在这种情况下,默认错误日志目标是控制台而不是文件。

  • --log-isam[=file_name]

    属性
    命令行格式--log-isam[=file_name]
    类型文件名

    记录MyISAM对此文件的所有更改(仅在调试时使用MyISAM)。

  • --log-output=value,...

    属性
    命令行格式--log-output=name
    系统变量log_output
    范围全球
    动态
    SET_VAR提示应用没有
    类型
    默认FILE
    有效值

    TABLE

    FILE

    NONE

    该选项确定一般查询日志和慢速查询日志输出的目的地。选项值可作为一个或一个以上的话TABLE, FILENONE。 TABLE选择将日志记录 general_log和 数据库中的slow_log表 mysql作为目标。 FILE选择日志记录以将文件记录为目标。NONE禁用日志记录。如果 NONE出现在选项值中,则优先于任何其他存在的单词。 TABLE并且FILE可以同时选择两个日志输出目标。

    该选项选择日志输出目标,但不启用日志输出。要做到这一点,请使用 --general_log和 --slow_query_log选项。对于 FILE日志记录, --general_log_file和 -slow_query_log_file选项确定日志文件的位置。有关更多信息,请参见 第5.4.1节“选择常规查询和慢速查询日志输出目标”

  • --log-queries-not-using-indexes

    属性
    命令行格式--log-queries-not-using-indexes
    系统变量log_queries_not_using_indexes
    范围全球
    动态
    SET_VAR提示应用没有
    类型布尔
    默认OFF

    如果在启用了慢速查询日志的情况下使用此选项,则会记录预期检索所有行的查询。请参见 第5.4.5节“慢速查询日志”该选项不一定表示不使用索引。例如,使用完整索引扫描的查询使用索引,但会被记录,因为索引不会限制行数。

  • --log-raw

    属性
    命令行格式--log-raw[=value]
    类型布尔
    默认OFF

    在写入一般查询日志,慢速查询日志和二进制日志的某些语句中,密码被服务器重写为不会以纯文本形式出现。通过使用该--log-raw选项启动服务器,可以为通用查询日志禁用密码重写 此选项对于诊断目的可能很有用,可以查看服务器收到的语句的确切文本,但出于安全原因不建议用于生产用途。

    如果安装了查询重写插件,则该 --log-raw选项会影响语句记录,如下所示:

    • 如果没有--log-raw,服务器将记录查询重写插件返回的语句。这可能与收到的声明有所不同。

    • 使用时--log-raw,服务器将收到的原始语句记录下来。

    有关更多信息,请参见第6.1.2.3节“密码和日志记录”

  • --log-short-format

    属性
    命令行格式--log-short-format
    类型布尔
    默认FALSE

    将较少的信息记录到慢查询日志中(如果它已被激活)。

  • --log-tc=file_name

    属性
    命令行格式--log-tc=file_name
    类型文件名
    默认tc.log

    内存映射事务协调器日志文件的名称(对于禁用二进制日志时影响多个存储引擎的XA事务)。默认名称是 tc.log如果未以完整路径名称的形式给出该文件,则该文件将在数据目录下创建。此选项未使用。

  • --log-tc-size=size

    属性
    命令行格式--log-tc-size=#
    类型(64位平台)整数
    类型(32位平台)整数
    默认(64位平台)6 * page size
    默认(32位平台)6 * page size
    最低(64位平台)6 * page size
    最低(32位平台)6 * page size
    最大(64位平台)18446744073709551615
    最大(32位平台)4294967295

    内存映射事务协调器日志的大小(以字节为单位)。默认值和最小值是页面大小的6倍,并且该值必须是页面大小的倍数。

  • --log-warnings[=level], -W [level]

    属性
    命令行格式--log-warnings[=#]
    弃用是的(在8.0.3中删除)
    系统变量log_warnings
    范围全球
    动态
    SET_VAR提示应用没有
    类型(64位平台)整数
    类型(32位平台)整数
    默认(64位平台)2
    默认(32位平台)2
    最低(64位平台)0
    最低(32位平台)0
    最大(64位平台)18446744073709551615
    最大(32位平台)4294967295

    这个选项在MySQL 8.0.3中被删除。改用 log_error_verbosity系统变量。

  • --low-priority-updates

    属性
    命令行格式--low-priority-updates
    系统变量low_priority_updates
    范围全球,会议
    动态
    SET_VAR提示应用没有
    类型布尔
    默认FALSE

    得到表修改操作(INSERT, REPLACE, DELETE, UPDATE),比选择较低优先级。这也可以{INSERT | REPLACE | DELETE | UPDATE} LOW_PRIORITY ...用来降低只有一个查询的优先级,或者通过SET LOW_PRIORITY_UPDATES=1改变一个线程的优先级来完成。这会影响只使用表级锁(仅存储引擎MyISAM, MEMORYMERGE)。北大青鸟学校

  • --min-examined-row-limit=number

    属性
    命令行格式--min-examined-row-limit=#
    系统变量min_examined_row_limit
    范围全球,会议
    动态
    SET_VAR提示应用没有
    类型(64位平台)整数
    类型(32位平台)整数
    默认(64位平台)0
    默认(32位平台)0
    最低(64位平台)0
    最低(32位平台)0
    最大(64位平台)18446744073709551615
    最大(32位平台)4294967295

    设置此选项时,检查少于 number行的查询不写入慢速查询日志。默认值是0。

  • --memlock

    属性
    命令行格式--memlock
    类型布尔
    默认FALSE

    mysqld进程锁定在内存中。如果您在操作系统导致mysqld交换到磁盘时遇到问题,此选项可能会有所帮助

    --memlock适用于支持mlockall()系统调用系统; 这包括Solaris,大多数使用2.4或更高版本内核的Linux发行版以及其他Unix系统。在Linux系统上,您可以 mlockall()通过检查系统mman.h文件中是否定义它来判断是否支持(以及此选项),如下所示:

    shell> grep mlockall /usr/include/sys/mman.h

    如果mlockall()被支持,你应该在前面的命令的输出中看到如下内容:

    extern int mlockall (int __flags) __THROW;
    重要

    使用此选项可能需要您运行服务器 root,因为出于安全原因,通常不是一个好主意。请参见 第6.1.5节“如何以普通用户身份运行MySQL”

    在Linux和其他系统上,您可以避免root通过更改 limits.conf文件来运行服务器请参阅第8.12.3.2节“启用大页面支持”中关于memlock限制的说明 

    您不能尝试在不支持mlockall()系统调用系统上使用此选项如果你这样做的话,一旦你尝试启动它mysqld很可能会崩溃。

  • --myisam-block-size=N

    属性
    命令行格式--myisam-block-size=#
    类型整数
    默认1024
    最低限度1024
    最大16384

    要用于MyISAM索引页面的块大小

  • --myisam-recover-options[=option[,option]...]]

    属性
    命令行格式--myisam-recover-options[=name]
    类型列举
    默认OFF
    有效值

    OFF

    DEFAULT

    BACKUP

    FORCE

    QUICK

    设置MyISAM存储引擎恢复模式。该选项值的值的任意组合 OFFDEFAULT, BACKUPFORCE,或 QUICK如果您指定多个值,请用逗号分隔它们。指定没有参数的选项与指定相同DEFAULT,并指定"" 禁用恢复的显式值(与值相同OFF)。如果恢复已启用,则每次mysqld 打开一个MyISAM表,它检查表是否标记为崩溃或未正确关闭。(最后一个选项仅在禁用外部锁定的情况下运行。)如果是这种情况, mysqld在表上运行检查。如果表被破坏,mysqld会尝试修复它。

    以下选项会影响修复的工作方式。

    选项描述
    OFF没有恢复。
    DEFAULT没有备份的恢复,强制或快速检查。
    BACKUP如果数据文件在恢复期间发生更改,请将该tbl_name.MYD 文件的备份保存 为 tbl_name-datetime.BAK
    FORCE即使我们会丢失.MYD文件中的多行,也要运行恢复 
    QUICK如果没有任何删除块,请不要检查表中的行。

    在服务器自动修复表之前,它会将关于修复的注释写入错误日志。如果您希望能够在没有用户干预的情况下从大多数问题中恢复,则应该使用这些选项BACKUP,FORCE这会强制修复表,即使某些行将被删除,但它会将旧数据文件保留为备份,以便您可以稍后检查发生了什么。

    请参见第16.2.1节“MyISAM启动选项”

  • --no-defaults

    不要阅读任何选项文件。如果由于从选项文件读取未知选项而导致程序启动失败, --no-defaults可用于防止读取它们。如果使用它,它必须是命令行中的第一个选项。

    有关此选项的其他信息,请参见 第4.2.7节“影响选项文件处理的命令行选项”

  • --no-dd-upgrade

    属性
    命令行格式--no-dd-upgrade
    介绍8.0.4
    类型布尔
    默认FALSE

    防止在启动MySQL服务器时自动升级数据字典表。在将MySQL服务器就地升级到新版本之后启动MySQL服务器时,通常会使用此选项,该版本可能包含数据字典表定义的更改。

    --no-dd-upgrade指定时,并且服务器发现服务器的数据字典版本与数据字典中存储的版本不同时,启动将失败,并显示错误,指出禁止数据字典升级。

    在正常启动期间,将服务器的数据字典版本与存储在数据字典中的版本进行比较,以确定是否应升级数据字典表定义。如果需要升级并支持升级,则服务器将创建具有更新定义的数据字典表,将持久元数据复制到新表中,用新元素原子级替换旧表,然后重新初始化数据字典。如果不需要升级,启动将继续而不更新数据字典表。

  • --old-alter-table

    属性
    命令行格式--old-alter-table
    系统变量old_alter_table
    范围全球,会议
    动态
    SET_VAR提示应用没有
    类型布尔
    默认OFF

    当给出该选项时,服务器不使用处理ALTER TABLE操作的优化方法它恢复为使用临时表,复制数据,然后将临时表重新命名为原始表,正如MySQL 5.0及更早版本所使用的那样。有关操作的更多信息 ALTER TABLE,请参见 第13.1.8节“ALTER TABLE语法”

  • --old-style-user-limits

    属性
    命令行格式--old-style-user-limits
    类型布尔
    默认FALSE

    启用旧式用户限制。(在MySQL 5.0.3之前,账户资源限制是针对每个用户连接的主机而不是user中的每个账户行分别计算的 。)请参见 第6.3.6节“设置账户资源限制”

  • --open-files-limit=count

    属性
    命令行格式--open-files-limit=#
    系统变量open_files_limit
    范围全球
    动态没有
    SET_VAR提示应用没有
    类型整数
    默认5000, with possible adjustment
    最低限度0
    最大platform dependent

    更改可用于mysqld的文件描述符的数量 如果mysqld给你错误,你应该尝试增加这个选项的值Too many open files。 mysqld使用选项值来保留描述符setrlimit()在内部,该选项的最大值是最大无符号整数值,但实际最大值是平台相关的。如果所请求的文件描述符数量不能分配,mysqld会向错误日志写入警告。

    mysqld的可能试图比描述符的请求数量的分配更多的(如果它们可用),使用的值 max_connections和 table_open_cache估计是否将需要更多的描述符。

    在Unix上,该值不能大于ulimit -n

  • --performance-schema-xxx

    配置性能架构选项。有关详细信息,请参见 第26.13节“性能架构命令选项”

  • --pid-file=file_name

    属性
    命令行格式--pid-file=file_name
    系统变量pid_file
    范围全球
    动态没有
    SET_VAR提示应用没有
    类型文件名

    进程ID文件的路径名称。服务器在数据目录中创建文件,除非给出绝对路径名来指定不同的目录。如果您指定此选项,则必须指定一个值。如果您不指定此选项,则MySQL使用默认值 host_name.pid,其中host_name是主机名称。

    其他程序(如mysqld_safe)使用进程ID文件 来确定服务器的进程ID。在Windows上,该变量也会影响默认的错误日志文件名称。请参见第5.4.2节“错误日志”

  • --plugin-xxx

    指定与服务器插件有关的选项。例如,许多存储引擎可以构建为插件,并且对于这样的引擎,它们的选项可以用--plugin前缀来指定 因此, --innodb_file_per_table选项InnoDB可以被指定为 --plugin-innodb_file_per_table

    对于可以启用或禁用的布尔选项,也支持 --skip前缀和其他格式(请参见 第4.2.5节“程序选项修饰符”)。例如, --skip-plugin-innodb_file_per_table 禁用innodb_file_per_table

    --plugin前缀 的基本原理是,如果与内置服务器选项存在名称冲突,则可以明确指定插件选项。例如,插件编写者为插件“ sql ”命名 并实现“ 模式 ”选项,选项名称可能 --sql-mode会与相同名称的内置选项冲突。在这种情况下,对冲突名称的引用将被解析为有利于内置选项。为避免含糊不清,用户可以将插件选项指定为 --plugin-sql-mode使用 --plugin 推荐使用插件选项的前缀以避免任何含糊不清的问题。

  • --plugin-load=plugin_list

    属性
    命令行格式--plugin-load=plugin_list
    类型

    该选项告诉服务器在启动时加载指定的插件。如果--plugin-load给出多个 选项,则只使用最后一个。可以使用--plugin-load-add选项指定要加载的其他插件 

    选项值是以分号分隔的列表 值。每个 都是要加载的插件的名称,并且是包含插件代码的库文件的名称。如果插件库的名称没有任何前面的插件名称,则服务器会加载库中的所有插件。服务器在由系统变量命名的目录中查找插件库文件 。 name=plugin_libraryplugin_librarynameplugin_libraryplugin_dir

    例如,如果插件命名myplug1并 myplug2有库文件, myplug1.so并 myplug2.so使用此选项来执行早期插件加载:

    shell> mysqld --plugin-load="myplug1=myplug1.so;myplug2=myplug2.so"

    引号在这里用于参数值,因为否则semicolon(;)被某些命令解释器解释为特殊字符。(例如,Unix shell将它视为命令终止符。)

    每个已命名的插件仅用于单个mysqld调用 重新启动后,插件不会被加载,除非--plugin-load 再次使用。与之相反 INSTALL PLUGIN,它在mysql.plugins表中添加一个条目,以便为每个普通服务器启动加载插件。

    在正常启动时,服务器通过读取mysql.plugins系统表来确定要加载的插件如果服务器使用该--skip-grant-tables选项启动 ,它不会查询mysql.plugins表格,也不会加载列表中的插件。 --plugin-load即使--skip-grant-tables给出插件也可以加载 。 --plugin-load还可以使插件在启动时加载,而不能在运行时加载。

    有关插件加载的更多信息,请参见 第5.6.1节“安装和卸载插件”

  • --plugin-load-add=plugin_list

    属性
    命令行格式--plugin-load-add=plugin_list
    类型

    该选项补充了该 --plugin-load选项。 --plugin-load-add将一个插件或插件添加到启动时要加载的一组插件中。参数格式与for相同 --plugin-load。 --plugin-load-add可以用来避免指定一大组插件作为一个冗长笨拙的--plugin-load 参数。

    --plugin-load-add可以在没有的情况下给出 --plugin-load,但是--plugin-load-add之前出现的任何情况--plugin-load没有效果,因为 --plugin-load重置要加载的插件集。换句话说,这些选项:

    --plugin-load=x --plugin-load-add=y

    相当于这个选项:

    --plugin-load="x;y"

    但是这些选项:

    --plugin-load-add=y --plugin-load=x

    相当于这个选项:

    --plugin-load=x

    有关插件加载的更多信息,请参见 第5.6.1节“安装和卸载插件”

  • --port=port_num, -P port_num

    属性
    命令行格式--port=#
    系统变量port
    范围全球
    动态没有
    SET_VAR提示应用没有
    类型整数
    默认3306
    最低限度0
    最大65535

    侦听TCP / IP连接时使用的端口号。在Unix和类Unix系统上,除非服务器由root系统用户启动,否则端口号必须为1024或更高 

  • --port-open-timeout=num

    属性
    命令行格式--port-open-timeout=#
    类型整数
    默认0

    在某些系统上,当服务器停止时,TCP / IP端口可能不会立即变为可用。如果之后服务器很快重新启动,则尝试重新打开端口可能会失败。此选项指示服务器在无法打开时等待TCP / IP端口变为空闲的秒数。默认不等待。

  • --print-defaults

    打印程序名称以及从选项文件中获取的所有选项。密码值被屏蔽。这必须是在命令行上的第一个选项,如果使用它,除了它可能立即后使用 --defaults-file或 --defaults-extra-file

    有关此选项的其他信息,请参见 第4.2.7节“影响选项文件处理的命令行选项”

  • --remove [service_name]

    属性
    命令行格式--remove [service_name]
    平台特定视窗

    (仅限Windows)删除MySQL Windows服务。默认的服务名称是MySQL如果没有 service_name给出值。有关更多信息,请参见第2.3.5.8节“将MySQL作为Windows服务启动”

  • --safe-user-create

    属性
    命令行格式--safe-user-create
    类型布尔
    默认FALSE

    如果启用此选项,则用户不能通过使用该GRANT 语句来创建新的MySQL用户,除非该用户具有INSERTmysql.user表或表中任何列的 特权 如果您希望用户有能力创建具有用户有权授予的权限的新用户,则应授予该用户以下特权:

    GRANT INSERT(user) ON mysql.user TO 'user_name'@'host_name';

    这确保用户不能直接更改任何权限列,但必须使用该 GRANT语句向其他用户授予权限。

  • --secure-auth

    属性
    命令行格式--secure-auth
    弃用是的(在8.0.3中删除)
    系统变量secure_auth
    范围全球
    动态
    SET_VAR提示应用没有
    类型布尔
    默认ON
    有效值ON

    这个选项在MySQL 8.0.3中被删除。

  • --secure-file-priv=dir_name

    属性
    命令行格式--secure-file-priv=dir_name
    系统变量secure_file_priv
    范围全球
    动态没有
    SET_VAR提示应用没有
    类型
    默认platform specific
    有效值

    empty string

    dirname

    NULL

    该选项设置 secure_file_priv系统变量,该变量用于限制数据导入和导出操作的效果,例如由LOAD DATAand和 SELECT ... INTO OUTFILE语句和 LOAD_FILE()函数执行的操作 有关更多信息,请参阅说明 secure_file_priv

  • --shared-memory

    属性
    命令行格式--shared-memory[={0,1}]
    系统变量shared_memory
    范围全球
    动态没有
    SET_VAR提示应用没有
    平台特定视窗
    类型布尔
    默认FALSE

    由本地客户端启用共享内存连接。该选项仅在Windows上可用。

  • --shared-memory-base-name=name

    属性
    命令行格式--shared-memory-base-name=name
    系统变量shared_memory_base_name
    范围全球
    动态没有
    SET_VAR提示应用没有
    平台特定视窗
    类型
    默认MYSQL

    用于共享内存连接的共享内存的名称。该选项仅在Windows上可用。默认名称是MYSQL名称区分大小写。

  • --skip-concurrent-insert

    关闭在MyISAM表格上同时选择和插入的功能 (只有在您认为您在此功能中发现错误时才会使用该功能。)请参见 第8.11.3节“并发插入”

  • --skip-event-scheduler

    属性
    命令行格式

    --skip-event-scheduler

    --disable-event-scheduler

    打开事件调度程序OFF这与禁用需要设置的Event Scheduler不同 --event-scheduler=DISABLED看到 该 --event-scheduler选项,以获取更多信息。

  • --skip-grant-tables

    此选项使服务器根本无需使用权限系统即可启动,这使得访问服务器的任何人都可以不受限制地访问所有数据库您可以通过在系统shell中执行mysqladmin flush-privilegesmysqladmin reload命令,或者FLUSH PRIVILEGES 在连接到服务器后发出MySQL 语句,使运行中的服务器再次开始使用授权表

    如果服务器启动时 --skip-grant-tables禁用身份验证检查选项,服务器将--skip-networking自动启用 以防止远程连接。

    此选项还会导致服务器在其启动序列中禁止加载用户定义函数(UDF),预定事件和随INSTALL PLUGIN语句安装的插件 无论如何要导致插件被加载,请使用该 --plugin-load选项。 --skip-grant-tables也会导致disabled_storage_engines 系统变量无效。

    此选项不会导致在服务器启动过程中加载服务器组件。

    FLUSH PRIVILEGES可能会由启动后执行的其他操作隐式执行。例如,mysql_upgrade在升级过程中刷新权限。

  • --skip-host-cache

    禁用内部主机缓存以加快名称到IP解析的速度。在这种情况下,每次客户端连接时,服务器都会执行DNS查找。请参见 第8.12.4.2节“DNS查找优化和主机高速缓存”

    使用--skip-host-cache类似于将host_cache_size系统变量设置 为0,但 host_cache_size更灵活,因为它也可用于在运行时调整,启用或禁用主机缓存,而不仅仅是在服务器启动时。

    如果启动服务器时 --skip-host-cache,不会阻止对其值进行 host_cache_size更改,但此类更改不起作用,即使host_cache_size设置为大于0 ,缓存也不会重新启用 

  • --skip-innodb

    禁用InnoDB存储引擎。在这种情况下,因为默认存储引擎是 InnoDB,服务器将不会启动,除非您还使用 --default-storage-engine并将 --default-tmp-storage-engine默认值设置为其他引擎的永久和 TEMPORARY表。

    InnoDB存储引擎不能被禁用,而 --skip-innodb 选项已被弃用,没有任何效果。它的使用导致警告。该选项将在未来的MySQL版本中删除。

  • --skip-name-resolve

    检查客户端连接时不要解析主机名。只使用IP地址。如果使用此选项,Host授予表中的所有列值都 必须是IP地址。请参见第8.12.4.2节“DNS查找优化和主机高速缓存”

    根据系统的网络配置和 Host帐户值,客户端可能需要使用显式--host 选项(如--host=127.0.0.1或) 进行连接--host=::1

    尝试连接到主机127.0.0.1 通常会解析为该localhost帐户。但是,如果服务器使用该--skip-name-resolve选项运行,则会失败 ,因此请确保存在可以接受连接的帐户。例如,要能够root 使用--host=127.0.0.1或 --host=::1创建这些帐户,请执行以下操作:

    CREATE USER 'root'@'127.0.0.1' IDENTIFIED BY 'root-password';
    CREATE USER 'root'@'::1' IDENTIFIED BY 'root-password';
  • --skip-networking

    根本不要听TCP / IP连接。所有与mysqld的交互都必须使用命名管道或共享内存(在Windows上)或Unix套接字文件(在Unix上)进行。强烈建议仅允许本地客户端的系统使用此选项。请参见第8.12.4.2节“DNS查找优化和主机高速缓存”

    如果服务器启动时 --skip-grant-tables选择了禁用身份验证检查,则服务器可以 --skip-networking阻止远程连接。

  • --ssl*

    开头的选项--ssl 指定是否允许客户端使用SSL进行连接,并指明在哪里可以找到SSL密钥和证书。请参见 第6.4.2节“加密连接的命令选项”

  • --standalone

    属性
    命令行格式--standalone
    平台特定视窗

    仅在Windows上可用; 指示MySQL服务器不作为服务运行。

  • --super-large-pages

    属性
    命令行格式--super-large-pages
    平台特定的Solaris
    类型(Solaris)布尔
    默认(Solaris)FALSE

    标准使用MySQL中的大页面将尝试使用支持的最大大小,最大为4MB。在Solaris下, “ 超大页面 ”功能可以使用高达256MB的页面。此功能适用于最新的SPARC平台。可以使用--super-large-pages或 --skip-super-large-pages 选项启用或禁用它 

  • --symbolic-links, --skip-symbolic-links

    属性
    命令行格式--symbolic-links
    弃用8.0.2
    类型布尔
    默认(> = 8.0.2)OFF
    默认(<= 8.0.1)ON

    启用或禁用符号链接支持。在Unix上,启用符号链接意味着您可以使用语句或 选项 MyISAM索引文件或数据文件链接 到另一个目录如果删除或重命名该表,其符号链接指向的文件也将被删除或重命名。请参见 第8.12.2.2节“在Unix上使用MyISAM表的符号链接”。 INDEX DIRECTORYDATA DIRECTORYCREATE TABLE

    注意

    符号链接支持以及--symbolic-links控制它的 选项已被弃用,并将在未来版本的MySQL中删除。另外,该选项默认是禁用的。相关的 have_symlink系统变量也被弃用,并且将在未来版本的MySQL中被删除。

    这个选项在Windows上没有意义。

  • --skip-show-database

    属性
    命令行格式--skip-show-database
    系统变量skip_show_database
    范围全球
    动态没有
    SET_VAR提示应用没有

    该选项设置skip_show_database控制谁可以使用该SHOW DATABASES语句的 系统变量 请参见 第5.1.5节“服务器系统变量”

  • --skip-stack-trace

    属性
    命令行格式--skip-stack-trace

    不要写入堆栈跟踪。当您在调试器下运行mysqld时,此选项很有用在某些系统上,您还必须使用此选项来获取核心文件。请参见 第29.5节“调试和移植MySQL”

  • --slow-query-log[={0|1}]

    属性
    命令行格式--slow-query-log
    系统变量slow_query_log
    范围全球
    动态
    SET_VAR提示应用没有
    类型布尔
    默认OFF

    指定最初的慢查询日志状态。如果没有参数或参数为1,则该 --slow-query-log选项将启用日志。如果省略或用0的参数给出,则该选项将禁用日志。

  • --slow-start-timeout=timeout

    属性
    命令行格式--slow-start-timeout=#
    类型(Windows)整数
    默认(Windows)15000

    该选项控制Windows服务控制管理器的服务启动超时。该值是在启动期间尝试终止Windows服务之前服务控制管理器等待的最大毫秒数。默认值是15000(15秒)。如果MySQL服务启动时间过长,则可能需要增加此值。值为0意味着没有超时。

  • --socket=path

    属性
    命令行格式--socket={file_name|pipe_name}
    系统变量socket
    范围全球
    动态没有
    SET_VAR提示应用没有
    类型(其他)
    类型(Windows)
    默认(其他)/tmp/mysql.sock
    默认(Windows)MySQL

    在Unix上,该选项指定侦听本地连接时使用的Unix套接字文件。默认值是 /tmp/mysql.sock如果给出该选项,服务器将在数据目录中创建文件,除非给出绝对路径名来指定不同的目录。在Windows上,该选项指定在侦听使用命名管道的本地连接时使用的管道名称。默认值是MySQL(不区分大小写)。

  • --sql-mode=value[,value[,value...]]

    属性
    命令行格式--sql-mode=name
    系统变量sql_mode
    范围全球,会议
    动态
    SET_VAR提示应用
    类型(> = 8.0.1)
    类型
    默认(> = 8.0.1)ONLY_FULL_GROUP_BY STRICT_TRANS_TABLES NO_ZERO_IN_DATE NO_ZERO_DATE ERROR_FOR_DIVISION_BY_ZERO NO_AUTO_CREATE_USER NO_ENGINE_SUBSTITUTION
    默认ONLY_FULL_GROUP_BY STRICT_TRANS_TABLES NO_ZERO_IN_DATE NO_ZERO_DATE ERROR_FOR_DIVISION_BY_ZERO NO_AUTO_CREATE_USER NO_ENGINE_SUBSTITUTION
    有效值(> = 8.0.1)

    ALLOW_INVALID_DATES

    ANSI_QUOTES

    ERROR_FOR_DIVISION_BY_ZERO

    HIGH_NOT_PRECEDENCE

    IGNORE_SPACE

    NO_AUTO_CREATE_USER

    NO_AUTO_VALUE_ON_ZERO

    NO_BACKSLASH_ESCAPES

    NO_DIR_IN_CREATE

    NO_ENGINE_SUBSTITUTION

    NO_FIELD_OPTIONS

    NO_KEY_OPTIONS

    NO_TABLE_OPTIONS

    NO_UNSIGNED_SUBTRACTION

    NO_ZERO_DATE

    NO_ZERO_IN_DATE

    ONLY_FULL_GROUP_BY

    PAD_CHAR_TO_FULL_LENGTH

    PIPES_AS_CONCAT

    REAL_AS_FLOAT

    STRICT_ALL_TABLES

    STRICT_TRANS_TABLES

    TIME_TRUNCATE_FRACTIONAL

    有效值

    ALLOW_INVALID_DATES

    ANSI_QUOTES

    ERROR_FOR_DIVISION_BY_ZERO

    HIGH_NOT_PRECEDENCE

    IGNORE_SPACE

    NO_AUTO_CREATE_USER

    NO_AUTO_VALUE_ON_ZERO

    NO_BACKSLASH_ESCAPES

    NO_DIR_IN_CREATE

    NO_ENGINE_SUBSTITUTION

    NO_FIELD_OPTIONS

    NO_KEY_OPTIONS

    NO_TABLE_OPTIONS

    NO_UNSIGNED_SUBTRACTION

    NO_ZERO_DATE

    NO_ZERO_IN_DATE

    ONLY_FULL_GROUP_BY

    PAD_CHAR_TO_FULL_LENGTH

    PIPES_AS_CONCAT

    REAL_AS_FLOAT

    STRICT_ALL_TABLES

    STRICT_TRANS_TABLES

    设置SQL模式。

    注意

    MySQL安装程序可能会在安装过程中配置SQL模式。

    如果SQL模式与默认或预期不同,请检查服务器在启动时读取的选项文件中的设置。

  • --sysdate-is-now

    属性
    命令行格式--sysdate-is-now
    类型布尔
    默认FALSE

    SYSDATE()默认情况下返回它执行的时间,而不是它开始执行的语句的时间。这与行为有所不同NOW()该选项会SYSDATE()成为别名NOW()有关二进制日志和复制的影响的信息,请参阅用于描述 SYSDATE()在 12.7节,“日期和时间函数”SET TIMESTAMP在 第5.1.5节,“服务器系统变量”

  • --tc-heuristic-recover={COMMIT|ROLLBACK}

    属性
    命令行格式--tc-heuristic-recover=name
    类型列举
    默认COMMIT
    有效值

    COMMIT

    ROLLBACK

    在启发式恢复过程中使用的决策类型。要使用此选项,必须安装两个或多个支持XA事务的存储引擎 

  • --temp-pool

    属性
    命令行格式--temp-pool
    弃用是(在8.0.1中删除)
    类型(其他)布尔
    类型(Linux)布尔
    默认(其他)FALSE
    默认(Linux)TRUE

    该选项已过时,并在MySQL 8.0.1中被删除。

  • --transaction-isolation=level

    属性
    命令行格式--transaction-isolation=name
    系统变量transaction_isolation
    范围全球,会议
    动态
    SET_VAR提示应用没有
    类型列举
    默认REPEATABLE-READ
    有效值

    READ-UNCOMMITTED

    READ-COMMITTED

    REPEATABLE-READ

    SERIALIZABLE

    设置默认事务隔离级别。该 level值可以是 READ-UNCOMMITTED, READ-COMMITTED, REPEATABLE-READ,或 SERIALIZABLE请参见 第13.3.7节“SET TRANSACTION语法”

    默认事务隔离级别也可以在运行时使用该SET TRANSACTION语句或通过设置transaction_isolation系统变量来设置 

  • --transaction-read-only

    属性
    命令行格式--transaction-read-only
    系统变量transaction_read_only
    范围全球,会议
    动态
    SET_VAR提示应用没有
    类型布尔
    默认OFF

    设置默认的事务访问模式。默认情况下,只读模式被禁用,所以模式是可读写的。

    要在运行时设置默认事务访问模式,请使用该 SET TRANSACTION语句或设置transaction_read_only 系统变量。请参见第13.3.7节“SET TRANSACTION语法”

  • --tmpdir=dir_name, -t dir_name

    属性
    命令行格式--tmpdir=dir_name
    系统变量tmpdir
    范围全球
    动态没有
    SET_VAR提示应用没有
    类型目录名称

    用于创建临时文件的目录的路径。如果您的默认/tmp 目录驻留在太小而不能容纳临时表的分区上,可能会很有用该选项接受几种以循环方式使用的路径。路径应该由:Unix上的冒号()和;Windows上的分号(分隔如果MySQL服务器充当复制从服务器,则不应将其设置 --tmpdir为指向基于内存的文件系统上的目录或指向服务器主机重新启动时清除的目录。有关临时文件存储位置的更多信息,请参阅 第B.5.3.5节“MySQL存储临时文件的位置”复制从服务器需要一些临时文件才能在计算机重新启动后存活,以便它可以复制临时表或 LOAD DATA INFILE操作。如果服务器重新启动时临时文件目录中的文件丢失,则复制失败。

  • --user={user_name|user_id}, -u {user_name|user_id}

    属性
    命令行格式--user=name
    类型

    具有名称或数字用户标识的用户身份运行mysqld服务器在这种情况下,“ 用户 ”是指系统登录帐户,而不是授权表中列出的MySQL用户。) user_nameuser_id

    此选项强制启动时 的mysqldroot服务器在其启动顺序期间更改其用户标识,使其作为特定用户而不是作为特定用户运行 root请参见 第6.1.1节“安全指南”

    为了避免用户--user=rootmy.cnf文件中添加选项 (从而导致服务器运行root的可能的安全漏洞 mysqld 仅使用--user 指定的第一个选项,并在存在多个--user选项时生成警告 在选项 /etc/my.cnf和 $MYSQL_HOME/my.cnf之前的命令行选项的处理方法,所以建议你把 --user在选项 /etc/my.cnf并指定以外的值root选项in/etc/my.cnf在任何其他--user选项之前找到 ,这确保了服务器以非 root,如果--user找到其他选项,则会发出警告学什么技术好

  • --verbose, -v

    使用此选项和--help 选项可获得详细帮助。

  • --version, -V

    显示版本信息并退出。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值