#### 27.12.14.2 性能模式变量\_信息表

这[`变量信息`](performance-schema-variables-info-table.html)表显示，对于每个系统变量，它最近设置的来源，以及它的值范围。

这[`变量信息`](performance-schema-variables-info-table.html)表有这些列：

-   `变量名`

    变量名。

-   `VARIABLE_SOURCE`

    最近设置变量的来源：

    -   `命令行`

        该变量是在命令行上设置的。

    -   `已编译`

        该变量具有其编译的默认值。`已编译`是用于未以任何其他方式设置的变量的值。

    -   `动态的`

        该变量是在运行时设置的。这包括在使用指定的文件中设置的变量[`初始化文件`](server-system-variables.html#sysvar_init_file)系统变量。

    -   `明确的`

        该变量是从一个名为的选项文件中设置的[`--defaults 文件`](server-options.html#option_mysqld_defaults-file)选项。

    -   `额外的`

        该变量是从一个名为的选项文件中设置的[`--defaults-额外文件`](server-options.html#option_mysqld_defaults-extra-file)选项。

    -   `全球的`

        该变量是从全局选项文件中设置的。这包括未涵盖的选项文件`明确的`,`额外的`,`登录`,`坚持`,`服务器`， 要么`用户`.

    -   `登录`

        该变量是从特定于用户的登录路径文件（`~/.mylogin.cnf`）。

    -   `坚持`

        该变量是从特定于服务器的`mysqld-auto.cnf`选项文件。如果服务器启动时没有行有这个值[`persisted_globals_load`](server-system-variables.html#sysvar_persisted_globals_load)禁用。

    -   `服务器`

        该变量是从特定于服务器的``$MYSQL_HOME`/my.cnf`选项文件。有关如何的详细信息`MYSQL_HOME`已设置，请参阅[第 4.2.2.2 节，“使用选项文件”](option-files.html).

    -   `用户`

        该变量是从特定于用户的`~/.my.cnf`选项文件。

-   `VARIABLE_PATH`

    如果变量是从选项文件中设置的，`VARIABLE_PATH`是该文件的路径名。否则，值为空字符串。

-   `MIN_VALUE`,`MAX_VALUE`

    变量的最小和最大允许值。对于没有此类值的变量（即非数字变量），两者均为 0。

-   `设置时间`

    最近设置变量的时间。默认值是服务器在启动期间初始化全局系统变量的时间。

-   `SET_USER`,`SET_HOST`

    最近设置变量的客户端用户的用户名和主机名。如果客户端连接为`用户 17`来自主机`host34.example.com`使用帐户`'user17'@'%.example.com`,`SET_USER`和`SET_HOST`是`用户 17`和`host34.example.com`， 分别。对于代理用户连接，这些值对应于外部（代理）用户，而不是针对其执行权限检查的代理用户。每列的默认值为空字符串，表示自服务器启动后未设置该变量。

    这[`变量信息`](performance-schema-variables-info-table.html)表没有索引。

[`截断表`](truncate-table.html)不允许[`变量信息`](performance-schema-variables-info-table.html)桌子。

如果一个变量带有`VARIABLE_SOURCE`以外的价值`动态的`在运行时设置，`VARIABLE_SOURCE`变成`动态的`和`VARIABLE_PATH`成为空字符串。

只有一个会话值的系统变量（例如[`调试同步`](server-system-variables.html#sysvar_debug_sync)) 不能在启动时设置或持久化。对于仅限会话的系统变量，`VARIABLE_SOURCE`只能`已编译`要么`动态的`.

如果系统变量有意外`VARIABLE_SOURCE`值，请考虑您的服务器启动方法。例如，[**mysqld\_安全的**](mysqld-safe.html)读取选项文件并将在那里找到的某些选项作为用于启动的命令行的一部分传递[**mysqld**](mysqld.html).因此，您在选项文件中设置的某些系统变量可能会显示在[`变量信息`](performance-schema-variables-info-table.html)作为`命令行`, 而不是作为`全球的`要么`服务器`正如您可能期望的那样。

一些使用[`变量信息`](performance-schema-variables-info-table.html)表，具有代表性的输出：

-   显示在命令行上设置的变量：

    ```
    mysql> SELECT VARIABLE_NAME
           FROM performance_schema.variables_info
           WHERE VARIABLE_SOURCE = 'COMMAND_LINE'
           ORDER BY VARIABLE_NAME;
    +---------------+
    | VARIABLE_NAME |
    +---------------+
    | basedir       |
    | datadir       |
    | log_error     |
    | pid_file      |
    | plugin_dir    |
    | port          |
    +---------------+
    ```

-   显示从持久存储中设置的变量：

    ```
    mysql> SELECT VARIABLE_NAME
           FROM performance_schema.variables_info
           WHERE VARIABLE_SOURCE = 'PERSISTED'
           ORDER BY VARIABLE_NAME;
    +--------------------------+
    | VARIABLE_NAME            |
    +--------------------------+
    | event_scheduler          |
    | max_connections          |
    | validate_password.policy |
    +--------------------------+
    ```

-   加入[`变量信息`](performance-schema-variables-info-table.html)与[`全局变量`](performance-schema-system-variable-tables.html)表来显示持久变量的当前值，以及它们的值范围：

    ```
    mysql> SELECT
             VI.VARIABLE_NAME, GV.VARIABLE_VALUE,
             VI.MIN_VALUE,VI.MAX_VALUE
           FROM performance_schema.variables_info AS VI
             INNER JOIN performance_schema.global_variables AS GV
             USING(VARIABLE_NAME)
           WHERE VI.VARIABLE_SOURCE = 'PERSISTED'
           ORDER BY VARIABLE_NAME;
    +--------------------------+----------------+-----------+-----------+
    | VARIABLE_NAME            | VARIABLE_VALUE | MIN_VALUE | MAX_VALUE |
    +--------------------------+----------------+-----------+-----------+
    | event_scheduler          | ON             | 0         | 0         |
    | max_connections          | 200            | 1         | 100000    |
    | validate_password.policy | STRONG         | 0         | 0         |
    +--------------------------+----------------+-----------+-----------+
    ```
