Verwenden Sie SHOW VARIABLES, um MySQL-Systemvariablenwerte anzuzeigen. Für diese Anweisung sind keine Privilegien erforderlich. Sie müssen lediglich eine Verbindung zum Server herstellen können.
SHOW [GLOBAL | SESSION] VARIABLES [LIKE 'pattern' | WHERE expr]
Die LIKE-Klausel (falls vorhanden) teilt SHOW VARIABLES mit, welche Variablennamen übereinstimmen sollen. Um Zeilen anhand umfassenderer Kriterien auszuwählen, verwenden Sie die WHERE-Klausel.
SHOW VARIABLES akzeptiert optionale globale oder Sitzungsvariablenbereichsänderungen -
Wenn GLOBAL als Modifikator verwendet wird, zeigt diese Anweisung den Wert der globalen Systemvariablen an. Bei neuen Verbindungen zu MySQL sind dies die Werte, die zur Initialisierung der zugehörigen Sitzungsvariablen verwendet werden. Wenn eine Variable keinen globalen Wert hat, wird der Wert der Variablen nicht angezeigt.
Diese Anweisung zeigt die Systemvariablenwerte an, die für die aktuelle Verbindung gültig sind, wenn der Modifikator SESSION verwendet wird. Wenn eine Variable keinen Sitzungswert hat, wird der globale Wert der Variablen angezeigt. SESSION ist eine andere Art, LOKAL zu sagen.
Wenn kein Modifikator angegeben ist, wird standardmäßig SESSION verwendet.
VARIABLEN ANZEIGEN Es gibt versionbedingte Einschränkungen in der Anzeigebreite. Verwenden Sie SELECT als Workaround für Variablen mit extrem langen Werten, die nicht vollständig angezeigt werden. Zum Beispiel -
SELECT @@GLOBAL.innodb_data_file_path;
Die meisten Systemvariablen können beim Serverstart konfiguriert werden, eine Ausnahme bilden jedoch schreibgeschützte Variablen wie version_comment. Mit der SET-Anweisung kann zur Laufzeit viel verändert werden.
Dies ist Teil der Ausgabe. Der Name und die Werteliste können für Ihren Server unterschiedlich sein.
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 | +--------------------------------------------+------------------------------+
Wenn die LIKE-Klausel einbezogen wird, zeigt die Anweisung nur Zeilen für Variablen an, deren Namen mit dem Muster übereinstimmen. Verwenden Sie die LIKE-Klausel (wie gezeigt), um Zeilen für eine bestimmte Variable abzurufen -
% ist ein Platzhalterzeichen, das in einer LIKE-Klausel verwendet werden kann, um eine Liste von Variablen abzurufen, deren Namen mit dem Muster übereinstimmen:
SHOW VARIABLES LIKE '%auto%'; SHOW GLOBAL VARIABLES LIKE '%auto%';
+--------------------------+-------+ | Variable_name | Value | +--------------------------+-------+ | auto_attach | ON | | auto_increment_increment | 1 | | auto_increment_offset | 1 | | auto_replicate | OFF | | autocommit | ON | +--------------------------+-------+
SHOW GLOBAL VARIABLES LIKE 'version%';
+-------------------------+------------------------------+ | Variable_name | Value | +-------------------------+------------------------------+ | version | 5.1.16-beta | | version_comment | MySQL Community Server (GPL) | | version_compile_machine | i686 | | version_compile_os | pc-linux-gnu | +-------------------------+------------------------------+
Das zu vergleichende Muster akzeptiert überall Platzhalter. Um es wörtlich zu finden, sollten Sie es maskieren, da es sich um einen Platzhalter handelt, der mit jedem Zeichen übereinstimmt. In der Praxis ist dies selten notwendig.
Mit diesen Befehlen können Sie MySQL verwenden, um alle seine Systemvariablen anzuzeigen. Wie bereits erwähnt, sind für deren Nutzung keine Berechtigungen erforderlich; es ist lediglich eine Verbindung zum Datenbankserver erforderlich.
Das obige ist der detaillierte Inhalt vonWie zeige ich Systemvariablen des MySQL-Servers an?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!