Heim >Datenbank >MySQL-Tutorial >So fragen Sie den Datenbankverbindungsstatus und die Verbindungsinformationen in MySQL ab
mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | INVOICE | | mysql | | performance_schema | | test | +--------------------+ 5 rows in set (0.00 sec) mysql>
mysql> select database(); +------------+ | database() | +------------+ | INVOICE | +------------+ 1 row in set (0.00 sec) mysql>
mysql> show variables like 'port'; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | port | 3306 | +---------------+-------+ 1 row in set (0.00 sec)
Wenn ich beispielsweise die Größe der INVOICE-Datenbank überprüfen möchte, kann ich sie anzeigen IT durch die folgenden SQL
mysql> use information_schema Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed mysql> select concat(round(sum(data_length)/(1024*1024),2) + round(sum(index_length)/(1024*1024),2),'MB') as 'DB Size' -> from tables -> where table_schema='INVOICE'; +-----------+ | DB Size | +-----------+ | 7929.58MB | +-----------+ 1 row in set, 1 warning (0.00 sec)
character_set_server ist die Verschlüsselung des Datenbankservers;
Wie Solange die oben verwendete Codierungsmethode dieselbe ist, tritt kein Problem mit verstümmeltem Code auf.
mysql> use information_schema; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed mysql> select concat(round(sum(data_length)/(1024*1024),2),'MB') as 'DB Size' -> from tables -> where table_schema='INVOICE'; +-----------+ | DB Size | +-----------+ | 6430.26MB | +-----------+ 1 row in set, 1 warning (0.00 sec) mysql>
mysql> select concat(round(sum(index_length)/(1024*1024),2),'MB') as 'DB Size' -> from tables -> where table_schema='INVOICE'; +-----------+ | DB Size | +-----------+ | 1499.32MB | +-----------+ 1 row in set, 1 warning (0.13 sec) mysql>
Die Tabelleninformationen der Datenbank anzeigen
mysql> show variables like 'character%'; +--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | utf8 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | latin1 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+ 8 rows in set (0.00 sec)
mysql> show variables like 'collation%'; +----------------------+-------------------+ | Variable_name | Value | +----------------------+-------------------+ | collation_connection | utf8_general_ci | | collation_database | utf8_general_ci | | collation_server | latin1_swedish_ci | +----------------------+-------------------+ 3 rows in set (0.00 sec)
Informationen einer bestimmten Tabelle anzeigen
mysql> status; -------------- mysql Ver 14.14 Distrib 5.6.20, for Linux (x86_64) using EditLine wrapper Connection id: 1 Current database: INVOICE Current user: root@localhost SSL: Not in use Current pager: stdout Using outfile: '' Using delimiter: ; Server version: 5.6.20-enterprise-commercial-advanced MySQL Enterprise Server - Advanced Edition (Commercial) Protocol version: 10 Connection: Localhost via UNIX socket Server characterset: latin1 Db characterset: latin1 Client characterset: utf8 Conn. characterset: utf8 UNIX socket: /var/lib/mysql/mysql.sock Uptime: 5 hours 18 min 51 sec Threads: 1 Questions: 10884 Slow queries: 0 Opens: 650 Flush tables: 1 Open tables: 268 Queries per second avg: 0.568 -------------- mysql>
mysql> show tables; +---------------------------------------+ | Tables_in_information_schema | +---------------------------------------+ | CHARACTER_SETS | | COLLATIONS | | COLLATION_CHARACTER_SET_APPLICABILITY | | COLUMNS | | COLUMN_PRIVILEGES | | ENGINES | | EVENTS | | FILES | | GLOBAL_STATUS | | GLOBAL_VARIABLES | | KEY_COLUMN_USAGE | | OPTIMIZER_TRACE | | PARAMETERS | | PARTITIONS | | PLUGINS | | PROCESSLIST | | PROFILING | | REFERENTIAL_CONSTRAINTS | | ROUTINES | | SCHEMATA | | SCHEMA_PRIVILEGES | | SESSION_STATUS | | SESSION_VARIABLES | | STATISTICS | | TABLES | | TABLESPACES | | TABLE_CONSTRAINTS | | TABLE_PRIVILEGES | | TRIGGERS | | USER_PRIVILEGES | | VIEWS | | INNODB_LOCKS | | INNODB_TRX | | INNODB_SYS_DATAFILES | | INNODB_LOCK_WAITS | | INNODB_SYS_TABLESTATS | | INNODB_CMP | | INNODB_METRICS | | INNODB_CMP_RESET | | INNODB_CMP_PER_INDEX | | INNODB_CMPMEM_RESET | | INNODB_FT_DELETED | | INNODB_BUFFER_PAGE_LRU | | INNODB_SYS_FOREIGN | | INNODB_SYS_COLUMNS | | INNODB_SYS_INDEXES | | INNODB_FT_DEFAULT_STOPWORD | | INNODB_SYS_FIELDS | | INNODB_CMP_PER_INDEX_RESET | | INNODB_BUFFER_PAGE | | INNODB_CMPMEM | | INNODB_FT_INDEX_TABLE | | INNODB_FT_BEING_DELETED | | INNODB_SYS_TABLESPACES | | INNODB_FT_INDEX_CACHE | | INNODB_SYS_FOREIGN_COLS | | INNODB_SYS_TABLES | | INNODB_BUFFER_POOL_STATS | | INNODB_FT_CONFIG | +---------------------------------------+ 59 rows in set (0.00 sec)
Die Berechtigungen eines bestimmten Benutzers anzeigen
select * from information_schema.tables where table_schema=‘databasename';
select * from information_schema.tables where table_name =‘table_name'
Die aktuelle Anzahl anzeigen Verbindungen und die Anzahl gleichzeitiger Verbindungen in der Datenbank.
mysql> select distinct concat('user: ''',user,'''@''',host,''';') as query from mysql.user; +-------------------------------------+ | query | +-------------------------------------+ | user: 'root'@'127.0.0.1'; | | user: 'root'@'::1'; | | user: 'root'@'gettesx20.test.com'; | | user: 'root'@'localhost'; | +-------------------------------------+ 4 rows in set (0.00 sec) mysql>
Threads_cached: Stellt dar, wie viele inaktive Threads sich derzeit im Thread-Cache befinden.
Threads_created: stellt die Anzahl der Threads dar, die seit dem letzten Dienststart erstellt wurden.
Dieser Satz kann wie folgt umgeschrieben werden: Threads_running gibt an, wie viele Threads derzeit aktiv sind, also nicht schlafen. Es stellt nicht die Anzahl der verwendeten Threads dar. Manchmal wurde die Verbindung hergestellt, aber die Verbindung befindet sich im Ruhezustand, und der entsprechende Thread befindet sich hier ebenfalls im Ruhezustand.
mysql> show grants for 'root'@'localhost'; +---------------------------------------------------------------------------------------------------------------------------------+ | Grants for root@localhost | +---------------------------------------------------------------------------------------------------------------------------------+ | GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*C7B1594FD74578DA3A92A61720AC67C6DBE6FC23' WITH GRANT OPTION | | GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION | +---------------------------------------------------------------------------------------------------------------------------------+ 2 rows in set (0.00 sec)
Das obige ist der detaillierte Inhalt vonSo fragen Sie den Datenbankverbindungsstatus und die Verbindungsinformationen in MySQL ab. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!