10bet网址
MySQL 5.7参考手册
相关的文档10bet官方网站 本手册下载 本手册摘录

5.1.1配置服务器

MySQL服务器,mysqld,有许多命令选项和系统变量,可以在启动时设置,以配置其操作。要确定服务器使用的默认命令选项和系统变量值,执行以下命令:

Shell > mysqld——verbose——help

该命令生成一个“所有”的列表mysqld选项和可配置的系统变量。它的输出包括默认选项和变量值,看起来像这样:

FALSE archive ON auto-increment-increment 1 auto-increment-offset 1 autocommit TRUE auto- sp-privileges TRUE避免临时升级FALSE backlog 80 basedir /home/ jun /bin/mysql-5.7/…tmpdir /tmp transaction-alloc-block-size 8192 transaction-isolation REPEATABLE-READ transaction-prealloc-size 4096 transaction-read FALSE transaction-write-set-extraction OFF updatabase -view -with-limit YES validate-user-plugins TRUE verbose TRUE wait-timeout 28800

要查看服务器运行时实际使用的当前系统变量值,请连接到服务器并执行以下语句:

mysql >显示变量;

要查看正在运行的服务器的一些统计和状态指示器,请执行以下语句:

mysql >显示状态;

系统变量和状态信息也可以使用mysqladmin命令:

Shell > mysqladmin extended-status . exe mysqladmin . exe

有关所有命令选项、系统变量和状态变量的完整描述,请参见以下章节:

Performance Schema提供了更详细的监控信息;看到25章,MySQL性能模式.另外,MySQLsysschema是一组对象,可以方便地访问Performance schema收集的数据;看到26章,MySQL系统模式

MySQL使用的算法具有很强的可伸缩性,因此通常可以在很少的内存中运行。然而,给MySQL更多内存通常会带来更好的性能。

在优化MySQL服务器时,需要配置的两个最重要的变量是key_buffer_sizetable_open_cache.在尝试更改任何其他变量之前,您应该首先确信您已经适当地设置了这些变量。

下面的示例指出了不同运行时配置的一些典型变量值。

  • 如果你有至少1-2GB的内存和许多表,并希望在适当数量的客户端上获得最大性能,请使用如下内容:

    shell> mysqld_safe——key_buffer_size=384M——table_open_cache=4000 \——sort_buffer_size=4M——read_buffer_size=1M &
  • 如果你只有256MB的内存和几个表,但你仍然可以做很多排序,你可以使用这样的方法:

    mysqld_safe——key_buffer_size=64M——sort_buffer_size=1M

    如果同时存在很多连接,则可能会出现交换问题,除非mysqld已配置为每个连接使用很少的内存。mysqld如果您有足够的内存用于所有连接,则性能更好。

  • 内存少而连接多的情况下,可以这样使用:

    shell> mysqld_safe——key_buffer_size=512K——sort_buffer_size=100K \——read_buffer_size=100K &

    甚至是这样的:

    shell> mysqld_safe——key_buffer_size=512K——sort_buffer_size=16K \——table_open_cache=32——read_buffer_size=8K \——net_buffer_length=1K &

如果你在表演集团命令对于比可用内存大得多的表的操作,增加read_rnd_buffer_size加快排序操作后的行读取速度。

如果您在命令行上为mysqldmysqld_safe,它只对服务器的调用有效。要在服务器每次运行时使用该选项,请将其放入一个选项文件中。看到第4.2.2.2节,“使用选项文件”