当你开始mysqld服务器,您可以指定程序选择使用任何方法中描述4.2.2节,“指定程序选项”。最常见的方法是提供一个选项选择文件或在命令行上。然而,在大多数情况下它是可取的,以确保在每次运行服务器使用相同的选项。最好的办法,以确保这是在一个选项列表文件。看到4.2.2.2节,“使用选项文件”。这一节还描述了选择文件格式和语法。
mysqld读选项的(mysqld)
和(服务器)
组。mysqld_safe读选项的(mysqld)
,(服务器)
,(mysqld_safe)
,(safe_mysqld)
组。mysql.server读选项的(mysqld)
和(mysql.server)
组。
通常嵌入式MySQL服务器读取的选项(服务器)
,(嵌入式)
,(
组,xxxxx
_SERVER]xxxxx
是应用程序的服务器的名称是嵌入式。
mysqld接受很多命令选项。对于一个简短的总结,执行这个命令:
mysqld——帮助
查看完整列表,使用这个命令:
mysqld——详细的帮助
列表中的某些产品实际上是系统变量,可以在服务器启动时设置。这些可以显示在运行时使用显示变量
声明。之前显示的一些项目mysqld命令不会出现在显示变量
输出;这是因为他们只选择而不是系统变量。
下面的列表显示了一些最常见的服务器选项。额外的其他部分中描述的选项是:
选择影响安全:明白了6.1.4节”,与安全相关的mysqld选择和变量”。
SSL-related选项:看到加密连接的命令选项。
二进制日志控制选项:明白了5.4.4部分,“二进制日志”。
Replication-related选项:看到部分16.1.6,“复制和二进制日志记录选项和变量”。
加载插件选项,如可插拔存储引擎:明白了5.5.1部分,“安装和卸载插件”。
选择特定于特定的存储引擎:明白了14.15节,“InnoDB启动选项和系统变量”和15.2.1部分,“MyISAM启动选项”。
一些选项控制缓冲区的大小或缓存。对于一个给定的缓冲区,服务器可能需要分配内部数据结构。这些结构通常分配的总分配的内存缓冲区,和所需的空间可能依赖于平台。这意味着当你赋值一个选项控制缓冲区大小,实际可用的空间可能不同于指定的值。在某些情况下,可能会小于指定值。也有可能服务器调整值上升。例如,如果您指定一个值为0的一个选择,最小值为1024,服务器将值设置为1024。
值缓冲区大小、长度和堆栈大小的字节,除非另有说明。
一些选项文件名称的值。除非另有说明,默认文件位置数据目录如果值是一个相对路径名。显式地指定位置,使用绝对路径名。假设数据目录/var/mysql/data
。如果file-valued选择相对路径名称,它位于/var/mysql/data
。如果该值是一个绝对路径名,它的位置是由路径名。
还可以设置服务器系统变量的值在服务器启动时通过使用变量名作为选项。赋值到一个服务器系统变量,使用表单的一个选项- - -
。例如,var_name
=价值
——sort_buffer_size = 384
设置sort_buffer_size
变量值为384 mb。
当你分配一个值到一个变量,MySQL可能自动纠正值保持在给定的范围内,或调整值最接近的容许值,如果只有某些值是允许的。
限制一个系统变量的最大值可以在运行时设置集
声明中指定这个最大使用表单的一个选项——最大
在服务器启动。var_name
=价值
您可以在运行时改变大多数系统变量的值的集
声明。看到部分13.7.4.1,“为变量赋值语法”。
5.1.7部分,“服务器系统变量”所有的变量,提供了一个完整的描述,和额外的信息在服务器启动和运行时设置它们。改变系统变量的信息,请参阅5.1.1节”,配置服务器”。
——帮助
,- - - - - - ?
命令行格式 ——帮助
-
命令行格式 ——allow-suspicious-udfs[={|在}]
类型 布尔 默认值 从
这个选项控制是否只有一个用户定义的函数
xxx
主要功能可以加载符号。默认情况下,选择是,只有udf,至少有一个辅助符号可以加载;这可以防止尝试加载函数共享对象文件包含合法的udf以外。看到UDF安全预防措施。 -
命令行格式 ——ansi
使用标准(ANSI) SQL语法而不是MySQL语法。为更精确的控制服务器SQL模式,使用
——sql模式
选项。看到1.7节,“MySQL标准遵从性”,部分5.1.10,“服务器SQL模式”。 ——basedir =
,dir_name
- b
dir_name
命令行格式 ——basedir = dir_name
系统变量 basedir
范围 全球 动态 没有 类型 目录名称 默认值 默认的外力
MySQL安装目录的路径。这个选项设置
basedir
系统变量。-
命令行格式 ——引导
弃用 是的 使用这个选项mysql_install_db程序来创建MySQL表特权而不必启动一个完整的MySQL服务器。
请注意mysql_install_db弃用,因为它的功能被集成到吗mysqldMySQL服务器。因此,
——引导
服务器选项,mysql_install_db传递给mysqld也不赞成。初始化一个MySQL安装、调用mysqld与——初始化
或——initialize-insecure
选择。有关更多信息,请参见2.10.1部分,“初始化数据目录”。预计mysql_install_db和——引导
服务器选项MySQL在将来的版本中被删除。——引导
是相互排斥的——daemonize
,——初始化
,——initialize-insecure
。全局事务标识符(GTIDs)不是残疾人
——引导
使用。——引导
(错误# 20980271)。看到部分16.1.3,“与全局事务标识符复制”。当服务器运行在bootstap模式下,一些功能不可用,限制了语句允许在任何文件命名的
init_file
系统变量。有关更多信息,请参见该变量的描述。此外,disabled_storage_engines
系统变量没有影响。 ——character-set-client-handshake
命令行格式 ——character-set-client-handshake[={|在}]
类型 布尔 默认值 在
不要忽视字符集由客户端发送的信息。忽略客户信息和使用默认服务器字符集,使用
——skip-character-set-client-handshake
;这使得MySQL像MySQL 4.0。——chroot =
,dir_name
- r
dir_name
命令行格式 ——chroot = dir_name
类型 目录名称 把mysqld服务器在一个封闭的环境中启动使用
chroot ()
系统调用。这是一个推荐的安全措施。使用这个选项有所限制加载数据
和选择……到输出文件
。-
命令行格式 ——控制台
特定于平台的 窗户 (Windows)。写错误日志
stderr
和stdout
(控制台)。mysqld不关闭控制台窗口使用这个选项。——控制台
优先于——日志错误
如果两个。(在MySQL 5.5和5.6,这是扭转:——日志错误
优先于——控制台
如果两个。) -
命令行格式 ——核心文件(={|在})
类型 布尔 默认值 从
写一个核心文件mysqld死亡。核心文件的名称和位置是依赖于系统的。在Linux上,核心文件命名
核心。
写入进程的当前工作目录,这mysqld数据目录。pid
pid
代表服务器进程的进程ID。在macOS核心文件命名核心。
被写入pid
/核心
目录中。在Solaris中,使用coreadm命令来指定编写核心文件的位置和名称。对一些系统中,您还必须指定一个核心文件
——核心文件大小
选项mysqld_safe。看到4.3.2节,“mysqld_safe——MySQL服务器启动脚本”。在一些系统中,比如Solaris,你不会得到一个核心文件,如果你也在使用——用户
选择。可能会有额外的限制或限制。例如,它可能需要执行ulimit - c无限之前启动服务器。请咨询您的系统文档。10bet官方网站 -
命令行格式 ——daemonize[={|在}]
类型 布尔 默认值 从
这个选项会导致服务器运行作为一个传统,分叉守护进程,允许它使用操作系统,使用systemd过程控制。有关更多信息,请参见部分2.5.10发行,“与systemd管理MySQL服务器”。
——datadir =
,dir_name
- h
dir_name
命令行格式 ——datadir = dir_name
系统变量 datadir
范围 全球 动态 没有 类型 目录名称 MySQL服务器数据目录的路径。这个选项设置
datadir
系统变量。看到这个变量的描述。——调试(=
,debug_options
]- # (
debug_options
]命令行格式 ——调试(= debug_options)
系统变量 调试
范围 全球、会话 动态 是的 类型 字符串 默认值(Unix) d:师:我:啊,/ tmp / mysqld.trace
默认值(Windows) d:师:我:啊,\ mysqld.trace
如果MySQL配置了
-DWITH_DEBUG = 1
CMake选项,您可以使用这个选项的跟踪文件mysqld在干什么。一个典型的debug_options
字符串是d:师:啊,
。默认值是file_name
d:师:我:啊,/ tmp / mysqld.trace
在Unix和d:师:我:啊,\ mysqld.trace
在Windows上。使用
-DWITH_DEBUG = 1
配置和调试支持允许您使用MySQL- debug = " d, parser_debug”
选择当您启动服务器。这导致野牛解析器,用于处理SQL语句将解析器跟踪服务器的标准错误输出。通常,这个输出写入错误日志。这个选项可以很多次了。值,首先
+
或- - - - - -
添加或减去前一个值。例如,——调试= T
——调试= + P
将值设置为P: T
。有关更多信息,请参见部分5.8.3,“DBUG包”。
-
命令行格式 ——debug-sync-timeout (= #)
类型 整数 控制是否启用了调试设备同步进行测试和调试。使用调试要求配置了MySQL同步
-DENABLE_DEBUG_SYNC = 1
CMake选项(见2.9.7部分,“MySQL源配置选项”)。如果没有编译调试同步,该选项不可用。的选项值是一个超时秒数。默认值是0,禁用调试同步。要启用它,指定一个值大于0;这个值也成为单独的同步点的默认超时。如果选择没有价值,超时设置为300秒。为调试同步功能的描述以及如何使用同步点,看到的MySQL内部:测试同步。
-
命令行格式 ——时区=名字
类型 字符串 设置默认服务器时区。这个选项设置全球
time_zone
系统变量。如果没有这个选项,默认时区系统时区(一样的价值system_time_zone
系统变量。 ——defaults-extra-file =
file_name
这个选项文件在全球选项文件读取但(在Unix)之前,用户选择文件。如果文件不存在或难以进入的,出现一个错误。如果
file_name
解释不是一个绝对路径名,它相对于当前目录。这一定是第一个选项在命令行上使用。额外的信息和其他文件选项,看看4.2.2.3部分,“影响文件的命令行选项处理”。
只读文件给定的选项。如果文件不存在或难以进入的,出现一个错误。如果
file_name
解释不是一个绝对路径名,它相对于当前目录。请注意这一定是第一个选项在命令行上如果使用它,除非如果服务器已启动
——defaults-file
和——安装
(或——install-manual
)选项,——安装
(或——install-manual
)必须放在第一位。额外的信息和其他文件选项,看看4.2.2.3部分,“影响文件的命令行选项处理”。
阅读不仅通常选择组,但也与一般的组织名称的后缀
str
。例如,mysqld正常读取(mysqld)
组。如果此选项——defaults-group-suffix = _other
,mysqld还读(mysqld_other)
组。额外的信息和其他文件选项,看看4.2.2.3部分,“影响文件的命令行选项处理”。
-
命令行格式 ——des-key-file = file_name
弃用 是的 从这个文件中读取默认DES密钥。这些键的使用
DES_ENCRYPT ()
和DES_DECRYPT ()
功能。请注意的
DES_ENCRYPT ()
和DES_DECRYPT ()
函数是不赞成在MySQL 5.7中,删除在MySQL 8.0,不应该再使用。因此,——des-key-file
也被弃用,在MySQL 8.0中删除。 ——disable-partition-engine-check
命令行格式 ——disable-partition-engine-check[={|在}]
介绍了 5.7.17 弃用 5.7.17 类型 布尔 默认值(≥5.7.21) 在
默认值(≥5.7.17,≤5.7.20) 从
是否要禁用启动检查表与非本地的分区。
MySQL 5.7.17,通用分区处理程序的MySQL服务器被弃用,并删除在MySQL 8.0中,当用于给定表的存储引擎将提供其自己的(”本机”)分区处理程序。目前,只有
InnoDB
和NDB
存储引擎。在一个使用外来的表分区结果
ER_WARN_DEPRECATED_SYNTAX
警告。在MySQL 5.7.17 5.7.20,服务器在启动时自动执行一个检查来确定使用非本地的分区表;对任何发现,服务器写错误日志消息。禁用此检查,使用——disable-partition-engine-check
选择。在MySQL 5.7.21和之后,这张支票不执行;在这些版本中,必须启动服务器——disable-partition-engine-check = false
为服务器,如果您希望使用通用分区处理程序来检查表(错误# 85830,错误# 25846957)。在一个使用外来的表分区结果
ER_WARN_DEPRECATED_SYNTAX
警告。同时,服务器在启动时执行一个检查来确定使用非本地的分区表;对任何发现,错误日志服务器写消息。禁用此检查,使用——disable-partition-engine-check
选择。准备迁移到MySQL 8.0,与外来任何表分区应该改为使用一个引擎,提供本地分区,或分区。例如,改变一个表
InnoDB
执行这个语句:ALTER TABLEtable_name引擎= INNODB;
——early-plugin-load =
plugin_list
命令行格式 ——early-plugin-load = plugin_list
介绍了 5.7.11 类型 字符串 默认值(≥5.7.12) 空字符串
默认值(5.7.11) keyring_file插件库文件的名字
这个选项告诉服务器插件加载在装货前强制性内置插件之前,存储引擎初始化。如果多个
——early-plugin-load
选项,只有最后一个适用。选项值是一个以分号分隔的列表
plugin_library
和的名字
=
plugin_library
值。每一个plugin_library
是一个库文件的名称,包含插件代码,并且每个的名字
是一个插件加载的名字。如果一个插件库命名之前没有任何插件名称、服务器负载在图书馆所有的插件。与之前的插件名称,服务器负载从图书馆只有指定的插件。服务器查找插件库文件目录中命名的plugin_dir
系统变量。例如,如果插件命名
myplug1
和myplug2
包含在插件库文件myplug1.so
和myplug2.so
使用这个选项,执行一个早期插件加载:mysqld——early-plugin-load = " myplug1 = myplug1.so; myplug2 = myplug2.so”
引号包围的参数值,否则一些命令解释器解释分号(
;
)作为一个特殊字符。(例如,Unix shell把它当作一个命令结束符)。每一个名叫早期的单一调用加载插件mysqld只有。重启后,早期,除非没有加载插件
——early-plugin-load
再次使用。如果服务器开始使用
——初始化
或——initialize-insecure
规定,插件——early-plugin-load
不加载。如果服务器运行
——帮助
规定,插件——early-plugin-load
加载但是没有初始化。这种行为可以确保插件选项中显示帮助消息。InnoDB
表空间加密依赖于加密密钥管理MySQL密匙环,和使用的密匙环插件之前必须加载存储引擎初始化促进InnoDB
恢复为加密的表。例如,管理员希望keyring_file
插件加载在启动时应该使用——early-plugin-load
适当的选项值(如keyring_file.so
Unix和类Unix系统上keyring_file.dll
在Windows上)。重要的在MySQL 5.7.11,默认
——early-plugin-load
值的名称keyring_file
插件库文件,导致插件默认加载。MySQL 5.7.12和更高的违约——early-plugin-load
值为空;加载keyring_file
插件,您必须显式地指定选项值的命名keyring_file
插件库文件。这种变化的违约
——early-plugin-load
值引入一个不相容的InnoDB
表空间加密升级5.7.11 5.7.12或更高。管理员已加密InnoDB
表空间必须采取明确的行动,以确保继续加载的密匙环插件:启动服务器了——early-plugin-load
插件库文件选项名称。有关更多信息,请参见部分6.4.4.1,“密匙环插件安装”。和有关信息。
InnoDB
表空间加密,看到14.14节,“InnoDB静止数据加密”。对于一般信息加载插件,看看5.5.1部分,“安装和卸载插件”。——exit-info [=
,旗帜
]- t [
旗帜
]命令行格式 ——exit-info(=旗帜)
类型 整数 这是一位掩码不同的标志,您可以使用调试mysqld服务器。不要使用这个选项,除非你知道吗完全它所做的!
-
命令行格式 ——外部锁(={|在})
类型 布尔 默认值 从
使外部锁(系统锁定),默认情况下是禁用的。如果你使用这个选项在系统上
lockd
不完全工作(比如Linux),很容易mysqld死锁。显式禁用外部锁,使用
——skip-external-locking
。外部锁只影响
MyISAM
表的访问。更多信息,包括条件可以,不能使用,明白了部分8.11.5,“外部锁”。 -
命令行格式 ——冲洗(={|在})
系统变量 冲洗
范围 全球 动态 是的 类型 布尔 默认值 从
(同步)的所有更改刷新到磁盘后每个SQL语句。通常,MySQL并写入到磁盘的所有更改后,让每个SQL语句处理同步到磁盘上的操作系统。看到部分B.3.3.3,“做什么如果MySQL持续崩溃”。
请注意如果
——平
指定的值flush_time
没有关系和变化flush_time
对冲洗行为没有影响。 -
命令行格式 ——gdb(={|在})
类型 布尔 默认值 从
安装一个中断处理程序
信号情报
(需要停止mysqld与C ^
设置断点)和禁用堆栈跟踪和核心文件处理。看到部分5.8.1.4,“在gdb调试mysqld”。 -
命令行格式 ——ignore-db-dir = dir_name
弃用 5.7.16 类型 目录名称 这个选项告诉服务器忽略给定目录名称的目的
显示数据库
语句或INFORMATION_SCHEMA
表。例如,如果一个MySQL配置定位数据在Unix文件系统的根目录,系统可能会创建一个发现了+
目录服务器应该忽略。启动服务器和——ignore-db-dir = +发现丢失
导致这个名字不被列为数据库。指定超过一个名字,多次使用这个选项,一旦为每一个名字。指定的选项(也就是说,一个空值
——ignore-db-dir =
空列表)重置的目录列表。这个选项在服务器启动的实例是用于设置
ignore_db_dirs
系统变量。在MySQL 5.7中不建议使用这个选项。通过引入MySQL 8.0中的数据字典,它变成了多余的和被删除的版本。
-
命令行格式 ——初始化(={|在})
类型 布尔 默认值 从
这个选项是用来初始化一个MySQL安装通过创建和填充表的数据目录
mysql
系统数据库。有关更多信息,请参见2.10.1部分,“初始化数据目录”。当服务器启动
——初始化
一些功能不可用,限制了允许在任何文件命名的语句init_file
系统变量。有关更多信息,请参见该变量的描述。此外,disabled_storage_engines
系统变量没有影响。在MySQL集群NDB 7.5.4后来,
——ndbcluster
选项一起使用时被忽略——初始化
。(错误# 81689,错误# 23518923)——初始化
是相互排斥的——引导
和——daemonize
。 -
命令行格式 ——initialize-insecure[={|在}]
类型 布尔 默认值 从
这个选项是用来初始化一个MySQL安装通过创建和填充表的数据目录
mysql
系统数据库。这个选项意味着——初始化
。有关更多信息,请参见选择的描述,和2.10.1部分,“初始化数据目录”。 ——innodb
xxx
设置一个选项
InnoDB
存储引擎。的InnoDB
选项中列出14.15节,“InnoDB启动选项和系统变量”。-
命令行格式 ——安装(service_name)
特定于平台的 窗户 (Windows)安装服务器作为一个Windows服务,在Windows启动时自动启动。默认的服务名称
MySQL
如果没有service_name
价值。有关更多信息,请参见部分2.3.4.8”,启动MySQL作为Windows服务”。请注意如果服务器已启动
——defaults-file
和——安装
选项,——安装
必须放在第一位。 ——install-manual [
service_name
]命令行格式 ——install-manual [service_name]
特定于平台的 窗户 (Windows)安装服务器作为一个Windows服务,必须手动开始。它不能在Windows启动时自动启动。默认的服务名称
MySQL
如果没有service_name
价值。有关更多信息,请参见部分2.3.4.8”,启动MySQL作为Windows服务”。请注意如果服务器已启动
——defaults-file
和——install-manual
选项,——install-manual
必须放在第一位。-
命令行格式 ——语言=名字
弃用 是的,使用 lc-messages-dir
而不是系统变量 语言
范围 全球 动态 没有 类型 目录名称 默认值 /usr/local/mysql/share/mysql/english/
使用的语言错误消息。
lang_name
可以作为语言名称或名称的目录的完整路径安装语言文件。看到10.12节,“语言”设置错误消息。——lc-messages-dir
和——lc-messages
应该使用而不是——语言
弃用(作为一个同义词和处理——lc-messages-dir
)。你应该期待——语言
在将来的版本中选择要删除的MySQL。 -
命令行格式 ——大页面(={|在})
系统变量 large_pages
范围 全球 动态 没有 特定于平台的 Linux 类型 布尔 默认值 从
一些硬件/操作系统架构支持内存页大于默认(通常是4 kb)。这种支持的实际实现取决于底层硬件和操作系统。应用程序执行大量的内存访问可能获得性能改进使用大页面由于减少Translation Lookaside Buffer (TLB)了。
MySQL支持的Linux实现大页支持(在Linux中叫做HugeTLB)。看到部分8.12.4.2”,使大页支持“。Solaris支持大内存页,看到的描述
——super-large-pages
选择。——大页面
默认情况下是禁用的。 -
命令行格式 ——lc-messages =名字
系统变量 lc_messages
范围 全球、会话 动态 是的 类型 字符串 默认值 en_US
现场使用的错误消息。默认值是
en_US
。服务器转换语言的参数名称和相结合的价值——lc-messages-dir
产生错误消息文件的位置。看到10.12节,“语言”设置错误消息。 -
命令行格式 ——lc-messages-dir = dir_name
系统变量 lc_messages_dir
范围 全球 动态 没有 类型 目录名称 错误消息所在的目录。服务器使用价值与价值
——lc-messages
产生错误消息文件的位置。看到10.12节,“语言”设置错误消息。 -
命令行格式 ——本地服务
(Windows)
——本地服务
选择服务名称后导致服务器运行使用LocalService
Windows帐户限制了系统的特权。如果两个——defaults-file
和——本地服务
给出了服务名称后,他们可以在任何顺序。看到部分2.3.4.8”,启动MySQL作为Windows服务”。 -
命令行格式 ——日志错误[= file_name]
系统变量 log_error
范围 全球 动态 没有 类型 文件名称 写错误日志和启动消息到这个文件中。看到5.4.2节,“错误日志”。
如果选项名称没有文件,错误日志文件名称在Unix和与Unix相似的系统
在数据目录中。Windows上的文件名是一样的,除非host_name
.err——pid文件
选项指定。在这种情况下,文件的名字是PID文件基本名称的后缀.err
在数据目录中。如果选择一个文件名字,名字的错误日志文件(一个
.err
后缀添加如果名称没有后缀),坐落在数据目录,除非绝对路径名指定一个不同的位置。在Windows上,
——控制台
优先于——日志错误
如果两个。在这种情况下,服务器将错误日志写入控制台,而不是一个文件。(在MySQL 5.5和5.6,这是扭转:——日志错误
优先于——控制台
如果两个。) -
命令行格式 ——log-isam [= file_name]
类型 文件名称 记录所有
MyISAM
修改这个文件(仅在调试时使用MyISAM
)。 -
命令行格式 ——log-raw[={|在}]
类型 布尔 默认值 从
在某些语句写入密码通用查询日志,慢速查询日志和二进制日志服务器重写的不是字面上发生在纯文本。密码可以抑制重写查询日志通过启动服务器
——log-raw
选择。这个选项可以用于诊断目的,看到的具体文本语句由服务器收到的,但是出于安全考虑,不建议生产使用。如果一个查询重写插件安装,
——log-raw
日志记录选项影响声明如下:有关更多信息,请参见6.1.2.3节,“密码和登录”。
-
命令行格式 ——log-short-format[={|在}]
类型 布尔 默认值 从
慢速查询日志日志更少的信息,如果已经激活。
-
命令行格式 ——log-tc = file_name
类型 文件名称 默认值 tc.log
内存映射事务协调员日志文件的名称(XA事务时影响多个存储引擎二进制日志被禁用)。默认的名称是
tc.log
。数据目录下创建文件如果没有给出一个完整的路径名。这个选项是未使用的。 -
命令行格式 ——log-tc-size = #
类型 整数 默认值(64位平台上,≥5.7.21) 6 *页面大小
默认值(64位平台上,≤5.7.20) 24576年
默认值(32位平台,≥5.7.21) 6 *页面大小
默认值(32位平台,≤5.7.20) 24576年
最小值 6 *页面大小
最大值(64位平台) 18446744073709551615
最大值(32位平台) 4294967295
大小字节的内存映射事务协调员日志。默认和最小值是6 *页面大小,的值必须是一个多个页面大小。(MySQL 5.7.21之前,默认大小是24 kb)。
——log-warnings [=
,水平
]- w (
水平
]命令行格式 ——log-warnings (= #)
弃用 是的 系统变量 log_warnings
范围 全球 动态 是的 类型 整数 默认值 2
最小值 0
最大值(64位平台) 18446744073709551615
最大值(32位平台) 4294967295
请注意的
log_error_verbosity
系统变量是首选,而应该使用的——log-warnings
选择或log_warnings
系统变量。有关更多信息,请参见的描述log_error_verbosity
和log_warnings
。的——log-warnings
命令行选项和log_warnings
系统变量是弃用;希望他们在将来的版本中被删除的MySQL。是否产生额外的警告消息的错误日志。这个选项是默认启用。要禁用它,使用
——log-warnings = 0
。没有指定选项水平
值增量的当前值1。不安全的服务器日志信息报表statement-based日志如果该值大于0。流产的连接和访问拒绝错误的新连接尝试登录如果大于1的值。看到部分B.3.2.9,“沟通错误和失败连接”。-
命令行格式 ——memlock[={|在}]
类型 布尔 默认值 从
锁住mysqld进程在内存中。这个选项可以帮助如果你有一个操作系统导致的问题mysqld交换到磁盘。
——memlock
作用于系统,支持mlockall ()
系统调用;这包括Solaris,大多数Linux发行版,使用2.4或更高版本的内核,也许其他Unix系统。在Linux系统中,您可以告诉是否mlockall ()
支持(因此这个选项)检查系统中是否被定义mman.h
文件,是这样的:壳> grep mlockall /usr/include/sys/mman.h
如果
mlockall ()
支持,您应该看到在前面的命令的输出类似如下:extern int mlockall (int __flags) __THROW;
重要的使用这个选项可能需要你运行服务器
根
出于安全,通常不是一个好主意。看到6.1.5节”,如何运行MySQL作为普通用户”。也许在Linux和其他系统,可以避免需要运行服务器
根
通过改变limits.conf
文件。看到笔记关于memlock极限部分8.12.4.2”,使大页支持“。你不能使用这个选项在系统不支持
mlockall ()
系统调用;如果你这样做,mysqld很有可能退出一旦你试图启动它。 -
命令行格式 ——myisam-block-size = #
类型 整数 默认值 1024年
最小值 1024年
最大值 16384年
要使用的块大小
MyISAM
索引页。 不读任何选项文件。如果程序启动时失败由于阅读从一个选项文件未知选项,
——已
可以用来防止他们阅读。这一定是第一个选项在命令行上使用。额外的信息和其他文件选项,看看4.2.2.3部分,“影响文件的命令行选项处理”。
-
命令行格式 ——old-style-user-limits[={|在}]
类型 布尔 默认值 从
让老式的用户限制。(MySQL 5.0.3之前,账户资源限制被数分别为每个主机的用户而不是每个账户行连接
用户
表)。看到部分6.2.16,“设置账户资源限制”。 -
命令行格式 ——分区(={|在})
弃用 5.7.16 残疾的 skip-partition
类型 布尔 默认值 在
启用或禁用用户定义分区支持MySQL服务器。
不建议使用这个选项在MySQL 5.7.16,从MySQL 8.0因为在MySQL 8.0,分区引擎取代本地分区,无法禁用。
——performance-schema-xxx
配置性能模式的选择。有关详细信息,请参见25.14节,“性能模式命令选项”。
-
命令行格式 ——plugin-load = plugin_list
系统变量 plugin_load
范围 全球 动态 没有 类型 字符串 这个选项告诉服务器在启动时加载指定的插件。如果多个
——plugin-load
选项,只有最后一个适用。额外的插件加载可能指定使用——plugin-load-add
选项。选项值是一个以分号分隔的列表
plugin_library
和的名字
=
plugin_library
值。每一个plugin_library
是一个库文件的名称,包含插件代码,并且每个的名字
是一个插件加载的名字。如果一个插件库命名之前没有任何插件名称、服务器负载在图书馆所有的插件。与之前的插件名称,服务器负载从图书馆只有指定的插件。服务器查找插件库文件目录中命名的plugin_dir
系统变量。例如,如果插件命名
myplug1
和myplug2
包含在插件库文件myplug1.so
和myplug2.so
使用这个选项,执行一个早期插件加载:mysqld——plugin-load = " myplug1 = myplug1.so; myplug2 = myplug2.so”
引号包围的参数值,否则一些命令解释器解释分号(
;
)作为一个特殊字符。(例如,Unix shell把它当作一个命令结束符)。每一个命名为单个调用插件加载mysqld只有。在重启之后,插件不加载,除非
——plugin-load
再次使用。这是形成鲜明对比安装插件
将一个条目添加到mysql.plugins
表导致插件加载每个正常的服务器启动。在服务器正常启动顺序,确定哪些插件加载通过阅读
mysql.plugins
系统表。如果服务器已启动——skip-grant-tables
选项,注册插件mysql.plugins
表不加载,不可用。——plugin-load
支持插件加载即使——skip-grant-tables
是给定的。——plugin-load
还允许在启动时加载插件,不能在运行时被加载。插件加载额外的信息,请参阅5.5.1部分,“安装和卸载插件”。
——plugin-load-add =
plugin_list
命令行格式 ——plugin-load-add = plugin_list
系统变量 plugin_load_add
范围 全球 动态 没有 类型 字符串 这个选项的补充
——plugin-load
选择。——plugin-load-add
增加了一组插件和插件的插件在启动时加载。参数格式是一样的——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.5.1部分,“安装和卸载插件”。
指定一个选项,属于服务器插件。例如,许多存储引擎可以以插件实现,和这样的引擎,可以指定一个选项
——插件
前缀。因此,——innodb-file-per-table
选择InnoDB
可以指定——plugin-innodb-file-per-table
。布尔选项,可以启用或禁用
——跳过
前缀和支持其他格式(见4.2.2.4部分,“项目选择修饰符”)。例如,——skip-plugin-innodb-file-per-table
禁用innodb-file-per-table
。的基本原理
——插件
前缀是它使插件选项明确指定如果有与一个内置的服务器选项名称冲突。例如,一个插件插件作家的名字”sql”并实现”模式”选项,选项名称——sql模式
,这将与内置的选项的同名冲突。在这种情况下,引用名称冲突解决的内置的选项。为避免歧义,用户可以指定插件选项——plugin-sql-mode
。的使用——插件
前缀插件选项建议避免模棱两可的问题。——港口=
,port_num
- p
port_num
命令行格式 ——港口= port_num
系统变量 港口
范围 全球 动态 没有 类型 整数 默认值 3306年
最小值 0
最大值 65535年
时所使用的端口号监听TCP / IP连接。Unix和类Unix系统上,端口号必须是1024或更高,除非服务器已启动的
根
操作系统的用户。此选项设置为0的原因要使用默认值。-
命令行格式 ——port-open-timeout = #
类型 整数 默认值 0
在一些系统中,服务器停止时,TCP / IP端口可能不会立即可用。如果服务器重启之后迅速,其试图开放端口可以失败。这个选项显示服务器多少秒等待TCP / IP端口应该成为自由如果不能被打开。默认的不是等待。
打印程序名称和所有选项,从选择文件。戴面具的密码值。这一定是第一个选项在命令行上如果使用它,除非它后立即可以使用
——defaults-file
或——defaults-extra-file
。额外的信息和其他文件选项,看看4.2.2.3部分,“影响文件的命令行选项处理”。
-
命令行格式 ——删除(service_name)
特定于平台的 窗户 (Windows)删除一个MySQL Windows服务。默认的服务名称
MySQL
如果没有service_name
价值。有关更多信息,请参见部分2.3.4.8”,启动MySQL作为Windows服务”。 -
命令行格式 ——safe-user-create[={|在}]
类型 布尔 默认值 从
如果启用了此选项,用户不能创建新的MySQL用户使用
格兰特
声明,除非用户插入
特权的mysql.user
系统表或表中的任何列。如果你想让用户能够创建新用户,这些用户有权授予特权,你应该授予用户以下特权:格兰特在mysql插入(用户)。用户的user_name“@”host_name”;
这可以确保用户无法改变任何特权直接列,但使用
格兰特
声明给其他用户的权限。 -
命令行格式 ——skip-grant-tables[={|在}]
类型 布尔 默认值 从
这个选项会影响服务器的启动顺序:
——skip-grant-tables
导致服务器不授读表mysql
系统数据库,因此开始不使用特权系统。这使任何访问服务器不受限制的访问所有数据库。导致服务器开始
——skip-grant-tables
在运行时加载格兰特表,执行privilege-flushing操作,可以通过这些方法:问题一个MySQL
冲洗的特权
声明后连接到服务器。执行一个mysqladmin flush-privileges或mysqladmin重载命令从命令行。
特权冲洗也可能发生隐式执行的其他操作结果启动后,造成服务器开始使用授权表。例如,mysql_upgrade在升级过程中刷新权限。
——skip-grant-tables
导致服务器负载中的某些其他对象注册mysql
系统数据库:插件安装使用
安装插件
和注册mysql.plugin
系统表。导致插件加载即使使用
——skip-grant-tables
,可以使用——plugin-load
或——plugin-load-add
选择。预定事件安装使用
创建事件
和注册mysql.event
系统表。用户定义的函数(udf)安装使用
创建函数
和注册mysql.func
系统表。
——skip-grant-tables
导致disabled_storage_engines
系统变量没有影响。
-
命令行格式 ——skip-host-cache
禁用使用内部主机缓存快name-to-IP决议。禁用缓存,服务器执行一个DNS查找每当客户机连接。
使用
——skip-host-cache
类似于设置host_cache_size
系统变量为0,但是host_cache_size
更灵活,因为它也可以用来调整,允许或禁用缓存主机在运行时,而不是在服务器启动时。启动服务器和
——skip-host-cache
并不能防止运行时改变的价值host_cache_size
,但这样的改变没有影响,不重新启用即使缓存host_cache_size
设置大于0。主机缓存是如何工作的详细信息,明白了部分5.1.11.2,“DNS查找和主机缓存”。
禁用
InnoDB
存储引擎。在这种情况下,因为默认的存储引擎InnoDB
服务器不能启动,除非你也使用——default-storage-engine
和——default-tmp-storage-engine
设置默认为永久和一些其他的引擎临时
表。的
InnoDB
存储引擎不能被禁用,——skip-innodb
选择是弃用,也没有效果。它的使用导致了一个警告。希望这个选项在将来的版本中被删除的MySQL。-
命令行格式 ——skip-new
这个选项禁用曾经被认为是新的,可能不安全的行为。这导致这些设置:
delay_key_write =了
,concurrent_insert =没有
,automatic_sp_privileges =了
。也会使优化表
被映射到ALTER TABLE
为存储引擎优化表
不支持。 -
命令行格式 ——skip-partition
——disable-partition
弃用 5.7.16 禁用用户定义的分区。使用分区表可以看到
显示表
或通过查询INFORMATION_SCHEMA.TABLES
表,但不能创建或修改,也不能这样的表中的数据被访问。所有分区特定列INFORMATION_SCHEMA.PARTITIONS
表格显示零
。自
删除表
删除表定义(.frm
)文件中,这句话适用于分区表即使分区使用的选项是禁用的。声明中,然而,不删除分区定义与分区表在这种情况下。出于这个原因,你应该避免删除分区表和分区禁用,或采取行动消除孤立.par
文件手动(如果存在)。请注意在MySQL 5.7中,分区定义(
.par
)文件不再创建分区InnoDB
表。相反,分区定义存储在InnoDB
内部数据字典。分区定义(.par
)文件继续被用于分区MyISAM
表。不建议使用这个选项在MySQL 5.7.16,从MySQL 8.0因为在MySQL 8.0,分区引擎取代本地分区,无法禁用。
-
命令行格式 ——skip-show-database
系统变量 skip_show_database
范围 全球 动态 没有 类型 布尔 默认值 从
这个选项设置
skip_show_database
系统变量控制允许使用显示数据库
声明。看到5.1.7部分,“服务器系统变量”。 -
命令行格式 ——skip-stack-trace
不写堆栈跟踪。这个选项是有用的,当你正在运行mysqld在一个调试器。在一些系统上,您也必须使用这个选项核心文件。看到MySQL 5.8节,“调试”。
-
命令行格式 ——slow-start-timeout = #
类型 整数 默认值 15000年
这个选项控制了Windows服务控制管理器的服务启动超时。值是最大的服务控制管理器之前等待的毫秒数试图杀死在启动windows服务。默认值为15000(15秒)。如果MySQL服务花费的时间太长,你可能需要增加这个值。值0表示没有超时。
-
命令行格式 ——套接字= {file_name | pipe_name}
系统变量 套接字
范围 全球 动态 没有 类型 字符串 默认值(Windows) MySQL
默认值(其他) / tmp / mysql.sock
在Unix中,该选项指定了Unix监听本地连接时使用套接字文件。默认值是
/ tmp / mysql.sock
。如果此选项,服务器数据目录中创建文件,除非绝对路径名指定一个不同的目录。在Windows上,选项指定管道名称监听本地连接时使用,使用一个命名管道。默认值是MySQL
(不区分大小写)。 -
命令行格式 ——sql模式=名字
系统变量 sql_mode
范围 全球、会话 动态 是的 类型 集 默认值 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
有效值 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模式。看到部分5.1.10,“服务器SQL模式”。
请注意MySQL安装程序会在安装过程中配置SQL模式。如果SQL模式不同于默认的或你期望什么,检查设置一个选项文件中,服务器在启动时读取。
-
命令行格式 ——ssl(={|在})
残疾的 skip-ssl
类型 布尔 默认值 在
的
——ssl
选项指定服务器允许但不需要加密连接。这个选项是默认启用。——ssl
可以指定在否定形式——skip-ssl
或同义词(——ssl =了
,——禁用ssl
)。在这种情况下,选项指定服务器不允许加密连接,不管的设置tls_
和xxx
ssl_
系统变量。xxx
更多信息关于服务器配置是否允许客户端连接使用SSL和指示在哪里找到SSL密钥和证书,明白了6.3.1节”,配置MySQL使用加密连接”也描述了服务器功能的证书和密钥文件自动生成和自动发现。考虑设置至少
ssl_cert
和ssl_key
在服务器端,系统变量——ssl-ca
(或——ssl-capath
在客户端)选项。 -
命令行格式 ——独立
特定于平台的 窗户 仅在Windows上可用;指示不作为一个服务运行MySQL服务器。
-
命令行格式 ——super-large-pages[={|在}]
特定于平台的 Solaris 类型 布尔 默认值 从
标准在MySQL中使用大页面试图使用支持的最大尺寸,4 mb。在Solaris中,”超级大页面”特性允许使用256 mb的页面。此功能可用于最近SPARC平台。它可以通过启用或禁用
——super-large-pages
或——skip-super-large-pages
选择。 -
命令行格式 ——符号链接(={|在})
类型 布尔 默认值 在
启用或禁用符号链接的支持。在Unix,使符号链接意味着您可以链接一个
MyISAM
索引文件或数据文件到另一个目录索引目录
或数据目录
选择的创建表
声明。如果您删除或重命名表,其符号链接指向的文件也删除或重命名。看到部分8.12.3.2,“MyISAM表在Unix上使用符号链接”。这个选项在Windows上没有意义。
-
命令行格式 ——sysdate-is-now[={|在}]
类型 布尔 默认值 从
SYSDATE ()
默认返回它执行的时间,而不是时间的语句开始执行。这不同于的行为现在()
。这个选项会导致SYSDATE ()
的同义词现在()
。信息的二进制日志记录和复制,看到描述SYSDATE ()
在12.7节,“日期和时间函数”和设置时间戳
在5.1.7部分,“服务器系统变量”。 ——tc-heuristic-recover ={提交|回滚}
命令行格式 ——tc-heuristic-recover =名字
类型 枚举 默认值 从
有效值 从
提交
回滚
决定在手册中使用启发式复苏。
如果一个
——tc-heuristic-recover
指定选项,服务器出口无论手动启发式恢复成功。系统与多个存储引擎能够两阶段提交
回滚
选择是不安全,使复苏停止以下错误:【错误】——tc-heuristic-recover回滚策略是不安全系统与多个2-phase-commit-capable存储引擎。流产崩溃恢复。
-
命令行格式 ——temp-pool[={|在}]
弃用 5.7.18 类型 布尔 默认值(Linux) 在
默认值(其他) 从
这个选项被忽略除了Linux。在Linux上,它会导致大多数创建的临时文件服务器使用少量的名字,而不是一个唯一的名称为每个新文件。这是围绕一个问题在Linux内核中处理与不同的名称创建许多新的文件。与旧的行为,Linux似乎”泄漏”内存,因为它是被分配到缓存,而不是磁盘缓存目录条目。
MySQL 5.7.18,不建议使用这个选项,在MySQL 8.0删除。
-
命令行格式 ——事务隔离=名字
系统变量(≥5.7.20) transaction_isolation
范围(≥5.7.20) 全球、会话 动态(≥5.7.20) 是的 类型 枚举 默认值 可重复读取
有效值 读未提交
读取提交
可重复读取
可序列化的
设置默认的事务隔离级别。的
水平
值可以是读未提交
,读取提交
,可重复读取
,或可序列化的
。看到部分13.3.6,“设置事务声明”。默认的事务隔离级别也可以在运行时使用
设置事务
声明或通过设置tx_isolation
(或者,正如MySQL 5.7.20,transaction_isolation
)系统变量。 -
命令行格式 ——transaction-read-only[={|在}]
系统变量(≥5.7.20) transaction_read_only
范围(≥5.7.20) 全球、会话 动态(≥5.7.20) 是的 类型 布尔 默认值 从
设置默认事务访问模式。默认情况下,只读模式是禁用的,所以读/写模式。
设置默认事务在运行时访问模式,使用
设置事务
语句或设置tx_read_only
(或者,正如MySQL 5.7.20,transaction_read_only
)系统变量。看到部分13.3.6,“设置事务声明”。 ——tmpdir =
,dir_name
- t
dir_name
命令行格式 ——tmpdir = dir_name
系统变量 tmpdir
范围 全球 动态 没有 类型 目录名称 目录的路径用于创建临时文件。它可能是有用的,如果你违约
/ tmp
目录驻留在一个分区太小临时表。这个选项接受几个路径以循环方式使用。路径应该是由冒号字符(:
在Unix和分号字符(;
在Windows上)。——tmpdir
可以是一个非永久性的位置,如基于内存的文件系统上的一个目录或一个目录时清除服务器主机重启。如果MySQL服务器充当的是一件复制品,你正在使用的非永久性的位置——tmpdir
,可以考虑设置一个不同的临时目录中复制使用slave_load_tmpdir
系统变量。复制复制,复制使用的临时文件加载数据
语句是存储在该目录中,所以他们可以在机器重启与一个永久的位置,虽然复制现在可以重启后继续,如果临时文件已被移除。更多关于临时文件的存储位置的信息,明白了部分B.3.3.5”, MySQL存储临时文件”。
——用户= {
,user_name
|user_id
}- u {
user_name
|user_id
}命令行格式 ——用户=名字
类型 字符串 运行mysqld服务器的用户名称
user_name
或数字的用户IDuser_id
。(”用户”在这种情况下是指一个系统登录账户,不是一个MySQL用户授权表中列出)。这个选项是强制性的当开始mysqld作为
根
。服务器改变其用户ID在启动顺序,导致其运行特定用户而不是根
。看到但是,“安全指南”。为了避免可能的安全漏洞,用户添加一个
——用户=根
选择一个my.cnf
文件(造成服务器运行根
),mysqld只使用第一——用户
选项指定并产生一个警告如果有多个——用户
选项。选项/etc/my.cnf
和$ MYSQL_HOME / my.cnf
处理命令行选项之前,那么建议你把——用户
选项/etc/my.cnf
除了并指定一个值根
。的选项/etc/my.cnf
被发现在其他之前——用户
选项,确保服务器以外的用户身份运行根
,一个警告如果任何其他结果——用户
选择是发现。——validate-user-plugins[={|在}]
命令行格式 ——validate-user-plugins[={|在}]
类型 布尔 默认值 在
如果启用了这个选项(默认),服务器会检查每一个用户帐户并产生一个警告如果找到条件的账户不可用:
账户需要身份验证插件不加载。
账户需要
sha256_password
服务器身份验证插件但开始启用了SSL和RSA根据这个插件。
启用
——validate-user-plugins
服务器初始化和减缓冲洗的特权
。如果你不需要额外的检查,您可以禁用这个选项在启动时避免性能衰减。使用这个选项
——帮助
选择详细的帮助。——版本
,- v
显示版本信息并退出。