How to display system variables of MySQL server?
Use SHOW VARIABLES to display MySQL system variable values. This statement does not require any privileges. Just need to be able to connect to the server.
grammar
SHOW [GLOBAL | SESSION] VARIABLES [LIKE 'pattern' | WHERE expr]
The LIKE clause, if present, tells SHOW VARIABLES which variable names to match. To select rows based on broader criteria, use the WHERE clause.
SHOW VARIABLES accepts optional global or session variable scope modifications -
When GLOBAL is used as a modifier, this statement displays the value of the global system variable. For new connections to MySQL, these are the values used to initialize the associated session variables. If a variable does not have a global value, the variable's value will not be displayed.
This statement displays the system variable values that are valid for the current connection when using the SESSION modifier. If a variable has no session value, the variable's global value is displayed. SESSION is another way of saying LOCAL.
If no modifier is specified, it defaults to SESSION.
SHOW VARIABLES There are version-dependent display width limitations. Use SELECT as a workaround for variables with extremely long values that are not fully displayed. For example -
SELECT @@GLOBAL.innodb_data_file_path;
Most system variables can be configured at server startup, although read-only variables like version_comment are an exception. Using the SET statement, a lot can be changed at runtime.
This is part of the output. The name and value list can be different for your server.
mysql> SHOW VARIABLES; +--------------------------------------------+------------------------------+ | Variable_name | Value | +--------------------------------------------+------------------------------+ | activate_all_roles_on_login | OFF | | auto_generate_certs | ON | | auto_increment_increment | 1 | | auto_increment_offset | 1 | | autocommit | ON | | automatic_sp_privileges | ON | | avoid_temporal_upgrade | OFF | | back_log | 151 | | basedir | /usr/ | | big_tables | OFF | | bind_address | * | | binlog_cache_size | 32768 | | binlog_checksum | CRC32 | | binlog_direct_non_transactional_updates | OFF | | binlog_error_action | ABORT_SERVER | | binlog_expire_logs_seconds | 2592000 | | binlog_format | ROW | | binlog_group_commit_sync_delay | 0 | | binlog_group_commit_sync_no_delay_count | 0 | | binlog_gtid_simple_recovery | ON | | binlog_max_flush_queue_time | 0 | | binlog_order_commits | ON | | binlog_row_image | FULL | | binlog_row_metadata | MINIMAL | | binlog_row_value_options | | | binlog_rows_query_log_events | OFF | | binlog_stmt_cache_size | 32768 | | binlog_transaction_dependency_history_size | 25000 | | binlog_transaction_dependency_tracking | COMMIT_ORDER | | block_encryption_mode | aes-128-ecb | | bulk_insert_buffer_size | 8388608 | | max_allowed_packet | 67108864 | | max_binlog_cache_size | 18446744073709547520 | | max_binlog_size | 1073741824 | | max_binlog_stmt_cache_size | 18446744073709547520 | | max_connect_errors | 100 | | max_connections | 151 | | max_delayed_threads | 20 | | max_digest_length | 1024 | | max_error_count | 1024 | | max_execution_time | 0 | | max_heap_table_size | 16777216 | | max_insert_delayed_threads | 20 | | max_join_size | 18446744073709551615 | | thread_handling | one-thread-per-connection | | thread_stack | 286720 | | time_zone | SYSTEM | | timestamp | 1530906638.765316 | | tls_version | TLSv1.2,TLSv1.3 | | tmp_table_size | 16777216 | | tmpdir | /tmp | | transaction_alloc_block_size | 8192 | | transaction_allow_batching | OFF | | transaction_isolation | REPEATABLE-READ | | transaction_prealloc_size | 4096 | | transaction_read_only | OFF | | transaction_write_set_extraction | XXHASH64 | | unique_checks | ON | | updatable_views_with_limit | YES | | version | 8.0.12 | | version_comment | MySQL Community Server - GPL | | version_compile_machine | x86_64 | | version_compile_os | Linux | | version_compile_zlib | 1.2.11 | | wait_timeout | 28800 | | warning_count | 0 | | windowing_use_high_precision | ON | +--------------------------------------------+------------------------------+
When the LIKE clause is included, the statement displays only rows for variables whose names match the pattern. Use the LIKE clause (as shown) to get rows for a specific variable -
% is a wildcard character that can be used in a LIKE clause to get a list of variables whose names match the pattern:
SHOW VARIABLES LIKE '%auto%'; SHOW GLOBAL VARIABLES LIKE '%auto%';
Output
+--------------------------+-------+ | Variable_name | Value | +--------------------------+-------+ | auto_attach | ON | | auto_increment_increment | 1 | | auto_increment_offset | 1 | | auto_replicate | OFF | | autocommit | ON | +--------------------------+-------+
SHOW GLOBAL VARIABLES LIKE 'version%';
Output
+-------------------------+------------------------------+ | Variable_name | Value | +-------------------------+------------------------------+ | version | 5.1.16-beta | | version_comment | MySQL Community Server (GPL) | | version_compile_machine | i686 | | version_compile_os | pc-linux-gnu | +-------------------------+------------------------------+
The pattern to match accepts wildcards anywhere. To match it literally, you should escape it since it is a wildcard character that matches any character. In practice, this is rarely necessary.
Using these commands, you can use MySQL to display all of its system variables. As mentioned before, no privileges are required to use them; all that is required is a connection to the database server.
The above is the detailed content of How to display system variables of MySQL server?. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

This article explores optimizing MySQL memory usage in Docker. It discusses monitoring techniques (Docker stats, Performance Schema, external tools) and configuration strategies. These include Docker memory limits, swapping, and cgroups, alongside

This article addresses MySQL's "unable to open shared library" error. The issue stems from MySQL's inability to locate necessary shared libraries (.so/.dll files). Solutions involve verifying library installation via the system's package m

The article discusses using MySQL's ALTER TABLE statement to modify tables, including adding/dropping columns, renaming tables/columns, and changing column data types.

This article compares installing MySQL on Linux directly versus using Podman containers, with/without phpMyAdmin. It details installation steps for each method, emphasizing Podman's advantages in isolation, portability, and reproducibility, but also

This article provides a comprehensive overview of SQLite, a self-contained, serverless relational database. It details SQLite's advantages (simplicity, portability, ease of use) and disadvantages (concurrency limitations, scalability challenges). C

This guide demonstrates installing and managing multiple MySQL versions on macOS using Homebrew. It emphasizes using Homebrew to isolate installations, preventing conflicts. The article details installation, starting/stopping services, and best pra

Article discusses configuring SSL/TLS encryption for MySQL, including certificate generation and verification. Main issue is using self-signed certificates' security implications.[Character count: 159]

Article discusses popular MySQL GUI tools like MySQL Workbench and phpMyAdmin, comparing their features and suitability for beginners and advanced users.[159 characters]
