`

mysqld(服务器)命令行选项

    博客分类:
  • java
阅读更多

· --help,-?
显示简短的帮助消息并退出。使用--verbose和--help选项来看全部内容。
· --allow-suspicious-udfs
该选项控制是否用户定义的函数只有一个xxx符,用作可载入的主函数。默认情况下,该选项被关闭,只有至少有一个附属符的UDF 可以载入。
这样可以防止从未包含合法UDF的共享文件装载函数。
· --ansi
使用标准(ANSI)SQL语法代替MySQL语法。参见1.8.3节,“在ANSI模式下运行MySQL”。使用--sql-mode选项可以更精确控制服务器SQL模式。
· --basedir=path, -b path
MySQL安装目录的路径。通常所有路径根据该路径来解析。
· --bind-address=IP
待绑定的IP地址。
· --bootstrap
mysql_install_db脚本使用该选项来创建MySQL授权表,不需要启动MySQL服务器。
· --console
将错误日志消息写入stderr和stdout,即使指定了--log-error。在Windows中,如果使用该选项,mysqld不关闭控制台窗口。
· --character-sets-dir=path
字符集安装的目录。
· --chroot=path
通过chroot()系统调用在启动过程中将mysqld服务器放入一个封闭环境中。这是推荐的一个安全措施。请注意使用该选项可以 限制LOAD DATA
INFILE和SELECT ... INTO OUTFILE。
· --character-set-server=charset
使用charset作为 默认服务器字符集。

· --core-file
如果mysqld终止,写内核文件。在某些系统中,你还必须为mysqld_safe指定--core-file-size 选项。本”。请注意对于一些系统,例如Solaris,如果你使用--user选项不会获得内核文件。
· --collation-server=collation
使用collation作为 默认服务器校对规则。
· --datadir=path, -h path
数据目录的路径。
· --debug[=debug_options], -# [debug_options]
如果MySQL配置了--with-debug,你可以使用该选项来获得一个跟踪文件,跟踪mysqld正进行的操作。debug_options字符串通常为'd:t:o,file_name'。

· (DEPRECATED) --default-character-set=charset
使用char设置作为 默认字符集。由于--character-set-server,反对使用该选项。

· --default-collation=collation
使用collation 作为默认校对规则。由于--collation-server,反对使用该选项。

· --default-storage-engine=type
该选项为--default-table-type的同义词。
· --default-table-type=type
设置表的默认类型。
· --default-time-zone=type
设置默认服务器时区。该选项设置全局time_zone系统变量。如果未给出该选项, 默认时区与系统时区相同(用system_time_zone系统变量值给定)。
· --delay-key-write[= OFF | ON | ALL]
如何使用DELAYED KEYS选项。键写入延迟会造成再次写MyISAM表时键缓冲区不能被清空。OFF禁用延迟的键写入。ON启用用DELAYED KEYS选项
创建的表的延迟的键写入。ALL延迟所有MyISAM表的键写入。

注释:如果你将该变量设置为ALL,你不应从另一个正使用MyISAM表的程序中使用MyISAM表(例如从另一个MySQL服务器或用myisamchk)。这样
操作会导致索引破坏。
· --des-key-file=file_name
从该文件读DES_ENCRYPT()和DES_DECRYPT()使用的 默认键。
· --enable-named-pipe
启用命名管道支持。该选项只适用Windows NT、2000、XP和2003系统,并且只适用支持命名管道连接的mysqld-nt和mysqld-max-nt服务器。
· --exit-info[=flags], -T [flags]
这是不同标志的一个位掩码,你可以用来调试mysqld服务器。不要使用该选项,除非你确切知道它在做什么!
· --external-locking
启用系统锁定。请注意如果你在lockd不能完全工作的系统上使用该选项(例如在Linux中),mysqld容易死锁。该选项以前叫--enable-locking。
注释:如果你在许多MySQL进程中使用该选项来更新MyISAM表,你必须确保满足下述条件:
o 使用正被另一个进程更新的表的查询的缓存不可使用。
o 不应在共享表中使用--delay-key-write=ALL或DELAY_KEY_WRITE=1。
最简单的方法是结合使用--external-locking和--delay-key-write=OFF --query-cache-size=0。
(默认不能实现,因为在许多设置中,结合使用上述选项很有用)。
· --flush
执行SQL语句后向硬盘上清空更改。一般情况执行SQL语句后 MySQL向硬盘写入所有更改,让操作系统处理与硬盘的同步。

· --init-file=file
启动时从该文件读SQL语句。每个语句必须在同一行中并且不应包括注释。
· --language=lang_name, -L lang_name
用给定语言给出客户端错误消息。lang_name可以为语言名或语言文件安装目录的全路径名。

· --large-pages
一些硬件/操作系统架构支持大于 默认值(通常4 KB)的内存页。实际支持取决于使用的硬件和OS。大量访问内存的应用程序通过使用较大的页,
降低了Translation Lookaside Buffer (TLB)损失,可以改善性能。
目前,MySQL只在Linux中支持大页面(在Linux中被称作HugeTLB)。我们已经计划将该支持扩展到FreeBSD、Solaris和其它可能的平台。
在Linux中可以使用大页面前,需要配置HugeTLB内存池。参考Linux内核源码中的hugetlbpage.txt文件。
默认情况下该选项被禁用。
· ---log[=file], -l [file]
日志连接和对文件的查询。如果你不指定文件名,MySQL使用host_name.log作为文件名。
· --log-bin=[file]
二进制日志文件。将更改数据的所有查询记入该文件。用于备份和复制。建议指定一个文件名,否则MySQL使用host_name-bin作为日志文件基本名。
· --log-bin-index[=file]
二进制日志文件名的索引文件。如果你不指定文件名,并且如果你没有在--log-bin中指定,MySQL使用host_namebin.
index作为文件名。
· --log-bin-trust-routine-creators[={0|1}]
没有参数或参数为1,该选项将系统变量log_bin_trust_routine_creators设置为1。为参数 0时,该选项将系统变量设置为0。log_bin_trust_routine_creators影响
MySQL如何对保存的程序的创建强加限制。
· --log-error[=file]
该文件的日志错误和启动消息。如果你不指定文件名,MySQL使用host_name.err作为文件名。如果文件名没有扩展名,则加上.err扩展名。
· --log-isam[=file]
将所有MyISAM更改记入该文件(只有调试MyISAM时才使用)。
· (DEPRECATED) --log-long-format
记录激活的更新日志、二进制更新日志、和慢查询日志的大量信息。例如,所有查询的用户名和时间戳将记录下来。不赞成选用该选项,因为它
现在代表 默认记录行为。(参见--log-short-format描述)。--log-queries-not-using-indexes选项适合将未使用索引的查询记录到慢查询日志中。
· --log-queries-not-using-indexes
如果你结合--log-slow-queries使用该选项,未使用索引的查询也被记录到慢查询日志中。· --log-short-format
记录激活的更新日志、二进制更新日志、和慢查询日志的少量信息。例如,用户名和时间戳不记录下来。
· ---log-slow-admin-statements
将慢管理语句例如OPTIMIZE TABLE、ANALYZE TABLE和ALTER TABLE记入慢查询日志。
· --log-slow-queries[=file]
将所有执行时间超过long_query_time 秒的查询记入该文件。参见5.11.4节,“慢速查询日志”。详细信息参见--log-long-format和--log-short-format选项描述。
· --log-warnings, -W
将警告例如Aborted connection...打印到错误日志。建议启用该选项,例如,如果你使用复制 (你可以得到关于所发生事情的详细信息,例如关于网络
故障和重新连接的消息)。默认情况下启用该选项;要想禁用它,使用--skip-log-warnings。中断的连接不会记入错误日志,除非值大于1。

· --low-priority-updates
表修改(INSERT, REPLACE, DELETE, UPDATE)比选择的优先级要低。也可以通过{INSERT | REPLACE | DELETE | UPDATE} LOW_PRIORITY ... 来降低某个查
询的优先级来实现,或通过SET LOW_PRIORITY_UPDATES=1来更改一个线程的优先级。

· --memlock
将mysqld 进程锁定在内存中。在支持mlockall()系统调用的系统上有效,例如Solaris。如果操作系统使mysqld在硬盘上交换时出现问题,可以为你提
供帮助。请注意使用该选项时需要以root运行服务器,但从安全考虑并不是一个好注意。
· --myisam-recover [=option[,option...]]]
将存储引擎MyISAM设置为恢复模式。该选项值是DEFAULT、BACKUP、FORCE或QUICK值的任何组合。如果你指定多个值,用逗号间隔开。你还
可以使用""值来禁用该选项。使用如果该选项,当mysqld打开MyISAM表时,检查是否表标记为崩溃或没有正确关闭。(只有用--skip-externallockingare
运行时,最后的选项才工作)。 如果是这种情况,mysqld则检查 表。如果表被破坏,mysqld试图维护它。
下面的选项影响维护工作:
选项描述
DEFAULT 与没有使用--myisam-recover选项相同。
BACKUP 如果在恢复过程中,数据文件被更改了,将tbl_name.MYD文件备份为tbl_name-datetime.BAK。
FORCE 即使.MYD文件将丢掉多个行也进行恢复。
QUICK 如果没有删除块,不要检查表中的行。
在表自动修复前,MySQL错误日志添加一条注解。如果你不想用户干涉干涉大多数问题,你应使用BACKUP,FORCE选项。该选项强制维护表,即
使一些行将会被删除也不例外,但它保持旧的数据文件做为备份,以便你可以在后来进行检查。
· --ndb-connectstring=connect_string
当使用NDB存储引擎时,可以指出通过设置连接字符串选项来分发群集配置的管理服务器。

· --ndbcluster
如果二进制支持NDB CLUSTER存储引擎,使用该选项可以代替禁用MySQL Cluster支持的 默认设置。· --old-passwords
强制服务器为新密码生成短(4.1前)密码哈希。如果服务器必须支持旧客户端程序,为保证兼容性这很有用。

· --one-thread
只使用一个线程(用于在Linux中调试)。只有服务器启用了调试,该选项才可用。

· --open-files-limit=count
用来更改mysqld文件描述符的数量。如果没有设置或设置为0,则mysqld通过setrlimit()使用该值来保存文件描述符。如果该值为0,则mysqld 保存
max_connections*5或max_connections + table_cache*2(取较大者)个文件。如果mysqld给出你错误"打开的文件太多。",你应试试增加该值。
· --pid-file=path
mysqld_safe使用的进程ID文件的路径。
· --port=port_num, -P port_num
帧听TCP/IP连接时使用的端口号。
· --safe-mode
跳过一些优化阶段。
· (DEPRECATED) --safe-show-database

· --safe-user-create
启用后如果用户没有mysql.user表或表中列的INSERT权限,则用户不能用GRANT语句创建新用户。
· --secure-auth
不允许使用旧(4.1之前)密码的账户进行鉴定。
· --shared-memory
启用本地客户端的共享内存连接。该选项只用于Windows。
· --shared-memory-base-name=name
共享内存连接名。该选项只用于Windows。
· --skip-bdb
禁用BDB存储引擎。这样可以节省内存,并可能加速某些操作。如果你需要BDB表则不要使用该选项。
· --skip-concurrent-insert
关闭在同一时间在MyISAM表中选择和插入的能力。(只有你发现缺陷时才使用该选项)。
· --skip-external-locking
不要使用系统锁定。要想使用myisamchk,你必须关闭服务器。要避免该需求,使用MySQL Monitor中的
CHECK TABLE和REPAIR TABLE来检查并维护MyISAM表。
· --skip-grant-tables
该选项使服务器不使用权限系统。该权限允许访问服务器的用户不受限制地访问所有数据库。你可以从系统外壳命令行执行mysqladmin flushprivileges
或mysqladmin reload命令,或执行MySQL FLUSH PRIVILEGES语句让运行的服务器重新开始使用 授权表。
· --skip-host-cache
为了更快地在名称-IP之间进行解析,不要使用内部主机名缓存。相反,每次客户端连接时查询DNS服务器。

· --skip-innodb
禁用InnoDB存储引擎。这样可以节省内存,并可能加速某些操作。如果你需要BDB表则不要使用该选项。
· --skip-name-resolve
不要解析正检查客户端连接的主机名。只使用IP号。如果你使用该项, 授权表中的所有Host列值必须为IP号或localhost。

· --skip-ndbcluster
禁用NDB CLUSTER存储引擎。这是支持NDB CLUSTER存储引擎的二进制的默认设置,说明只有用--ndbcluster选项显式覆盖--skip-ndbcluster选项时,系
统才为该存储引擎分配内存和其它资源。
· --skip-networking
不帧听TCP/IP连接。必须通过命名管道或共享内存(在Windows中)或Unix套接字文件(在Unix中)完成mysqld的相互操作。对于只允许本地客户端的
系统,大力推荐该选项。
· --standalone
只适合基于Windows-NT的系统;指导MySQL服务器不做为服务来运行。
· --symbolic-links, --skip-symbolic-links
启用或禁用符号链接支持。在Windows和Unix中,该选项的作用是不同的:
o 在Windows中,启用符号链接,你可以通过创建包含实际目录路径的directory.sym文件来建立数据库目录的符号链接。
节,“在Windows平台上使用关于数据库的符号链接”。
在Unix中,启用符号链接表示你可以用CREATE TABLE语句的INDEX DIRECTORY或DATA DIRECTORY选项将MyISAM索引文件或数据文件链接到另一个目
录。如果你删除或重新命名表,符号链接所指的文件也被删除或重新命名。

· --skip-safemalloc
如果MySQL配置了--with-debug=full,所有MySQL程序在内存分配和释放时检查内存是否溢出。检查很慢,因此如果你不需要你可以用--skipsafemalloc
选项来避免。
· --skip-show-database
使用该选项,只允许具有SHOW DATABASES权限的用户执行SHOW DATABASES语句,该语句显示所有数据库名。不使用该选项,允许所有用户执
行SHOW DATABASES,但只向具有SHOW DATABASES权限或部分数据库权限的用户显示每个数据库名。请注意全局权限为数据库的一种权限。
· --skip-stack-trace
不跟踪写堆栈。当调试运行mysqld时该选项有用。在一些系统中,你还必须使用该选项来获得内核文件。
· --skip-thread-priority
在快速响应中禁用线程优先级。
· --socket=path
在Unix中,该选项指定用于本地连接的Unix套接字文件。 默认值是/tmp/mysql.sock。在Windows中,该选项指定本地连接所使用的管道名。 默认值
是MySQL。
· --sql-mode=value[,value[,value...]]
将MySQL设置为SQL模式。
· --temp-pool
该选项使服务器创建的大多数临时文件使用一系列文件名,而不是每个新文件使用唯一的文件名。这样解决了在Linux内核中用 不同的名创建许
多新文件的问题。在以前,Linux似乎“泄漏”内存,因为它被直接分配到directory entry缓存而不是硬盘缓存。
· --transaction-isolation=level
设置默认事务隔离级别,可以READ-UNCOMMITTED、READ-COMMITTEE、REPEATABLE-READ或SERIALIZABLE。

· --tmpdir=path, -t path
创建临时文件的目录路径。默认/tmp目录在太小不能容纳临时表的分区时该选项很有用。该选项接受round-robin模式的几个路径。在Unix中路径
应用冒号(‘:’) 间隔开,在Windows、NetWare和OS/2中用分号(‘;’) 间隔开。如果MySQL服务器为复制从机,你不应让--tmpdir指向基于内存
的文件系统中的目录或服务器主机重启时会清除的目录。复制从机需要临时文件,机器重启时可以复制临时表或执行LOAD DATA INFILE操作。如
果服务器重启时临时文件目录中的文件丢失,复制失败。
· --user={user_name | user_id}, -u {user_name | user_id}
用user_name或数字用户ID user_id运行mysqld服务器。(“用户”指系统登录账户,而不是 授权表中所列的MySQL用户)。
用root启动mysqld时强制使用该选项。服务器在启动序列中更改用户ID,让它做为具体用户而不是root运行。
要避免用户在my.cnf文件中添加--user=root选项(使服务器用root运行)时可能出现的安全漏洞,mysqld只使用指定的第1个--user选项,如果有多个--user
选项则会出现警告。在命令行选项前处理/etc/my.cnf和$MYSQL_HOME/my.cnf中的选项,因此建议你在/etc/my.cnf中放一个--user选项,并指定root之外
的其它值。在其它--user选项前先找到/etc/my.cnf中的选项,确保服务器用其它用户运行,如果找到其它--user选项则会出现警告。
· --version, -V
显示版本信息并退出。

 

分享到:
评论

相关推荐

    Mysqld配置选项详细介绍

    Mysqld 配置选项详细介绍 Mysqld 是 MySQL 数据库管理系统的核心组件之一,负责处理数据库查询、管理数据库文件、维护数据库安全等任务。为了确保 MySQL 数据库的稳定运行和高效性能,需要对 mysqld 程序的配置选项...

    mysqld_exporter安装包mysqld_exporter-0.10.0.linux-amd64.tar.gz

    在执行前,你需要提供MySQL服务器的连接参数,通常通过命令行选项指定,例如: ``` ./mysqld_exporter --web.listen-address=:9104 --mysql.user=root --mysql.password=your_password --mysql.server-host=...

    MySQL中文手册MySQL中文手册

    5.3.1. mysqld命令行选项 5.3.2. SQL服务器模式 5.3.3. 服务器系统变量 5.3.4. 服务器状态变量 5.4. mysql_fix_privilege_tables:升级MySQL系统表 5.5. MySQL服务器关机进程 5.6. 一般安全问题 5.6.1. 通用安全指南...

    MySQL-指定程序选项.pdf

    本文档详细介绍了如何为MySQL的各种程序(包括服务器mysqld、客户端工具mysql等)指定选项的方法,主要包括三种途径:命令行选项、选项文件和环境变量。掌握这些方法不仅有助于提高日常运维效率,还能增强对MySQL...

    Mysql服务器配置.pdf

    1. **命令行选项**:通过在启动mysqld服务时指定特定的命令行选项来进行临时性的配置调整。 2. **配置文件**(选项文件):通过编辑my.ini(Windows平台)或my.cnf(Linux等非Windows平台)文件来实现持久化的配置。...

    MySQl数据库管理

    ##### 5.3.1 `mysqld` 命令行选项 `mysqld` 是MySQL服务器的主程序。通过命令行选项,用户可以调整服务器的行为,如指定数据目录、设置缓存大小等。这些选项对于优化服务器性能至关重要。 ##### 5.3.2 SQL服务器...

    影响MySQL中mysqld安全的四个选项

    - 若要重启MySQL服务并启用此选项,可以在命令行中输入如下命令: ``` mysqld --skip-grant-tables ``` - 之后可以通过执行`mysqladmin reload`命令使服务器重新加载权限表,并恢复正常的权限验证。 #### 三、`-...

    mysql安全启动脚本mysqld_safe详细介绍

    MySQL的mysqld_safe是一个安全启动脚本,用于在Unix和NetWare系统中启动mysqld服务器。这个脚本增加了额外的安全特性,如错误时自动重启服务器和记录运行时间信息到错误日志,以增强MySQL服务的稳定性和安全性。本文...

    Windows命令行启动和停止MySQL.doc

    如果尝试启动mysqld服务器时遇到问题,可以按照以下步骤进行排查: 1. **查看错误日志**:检查位于`C:\Program Files\MySQL\MySQL Server 5.1\data`目录下的`.err`文件,查找可能的错误信息。 2. **使用`mysqld --...

    mysqld_safe启动脚本源码阅读、分析

    在处理命令行参数的部分,`mysqld_safe`通过`case`语句检查用户传入的选项,如`--no-defaults`、`--defaults-file`和`--ledir`等,这些选项允许用户自定义MySQL服务器的启动行为,比如使用特定的配置文件或指定...

    mysql基础:mysqld_safe 启动执行流程详解

    2. 允许在配置文件或命令行中设置特定选项,其中`[mysqld_safe]`组内的选项只在`mysqld_safe`启动时生效。 3. 可以通过`mysqld_safe`调整系统资源限制,如核心文件大小和打开文件数量。 4. 优先考虑命令行参数,提供...

    MySql服务器系统变量和状态变量介绍

    mysqld服务器维护两种变量。全局变量影响服务器的全局操作。会话变量影响具体客户端连接相关操作。 服务器启动时,将所有全局变量初始化为默认值。可以在选项文件或命令行中指定的选项来更改这些默认值。服务器启动...

    mysql 数据库常用操作

    - `safe_mysqld` 是一个Unix平台上的脚本,它会尝试为`mysqld`设置正确的选项,并确保在遇到问题时能够重启服务器。`safe_mysqld`会将错误输出重定向到错误日志,并监视服务器状态。 2. **脚本或守护程序的位置**...

    MySQL 5.7 Database Administrator 1z0-888认证题库.docx

    在新安装MySQL服务器后,如果发现数据目录和mysql系统数据库中的表缺失,应使用`mysqld`命令行工具并添加`--initialize`选项来创建数据目录的内容(选项C正确)。这将执行必要的初始化步骤,创建系统表和其他必需的...

    银河麒麟服务器、centos7服务器mysql离线安装

    6. `mysql-community-client-5.7.41-1.el7.x86_64.rpm`:MySQL的命令行客户端工具,用于与服务器交互。 7. `mysql-community-embedded-compat-5.7.41-1.el7.x86_64.rpm`:提供兼容性库,确保与旧版本的API兼容。 8. ...

Global site tag (gtag.js) - Google Analytics