36-三十六、MySQL 获取服务器元数据
如果想要获取服务器的元数据,可以使用下表的语句
命令 | 说明 |
---|---|
SELECTVERSION() | 返回服务器版本信息 |
SELECTDATABASE() | 返回当前数据库名(或者返回空) |
SELECTUSER() | 返回当前用户名 |
SHOWSTATUS | 返回服务器状态 |
SHOWVARIABLES | 返回服务器配置变量 |
SELECT VERSION()
获取服务器版本信息
MariaDB [ycbbs]> SELECT VERSION();
+-----------------+
| VERSION() |
+-----------------+
| 10.2.13-MariaDB |
+-----------------+
row in set (0.01 sec)
SELECT DATABASE()
获取当前数据库名
MariaDB [ycbbs]> SELECT DATABASE();
+------------+
| DATABASE() |
+------------+
| ycbbs |
+------------+
row in set (0.00 sec)
如果当前没有选择任何数据库,则返回 NULL
MariaDB [(none)]> SELECT DATABASE();
+------------+
| DATABASE() |
+------------+
| NULL |
+------------+
row in set (0.00 sec)
SELECT USER()
获取当前用户名
MariaDB [(none)]> SELECT USER();
+----------------+
| USER() |
+----------------+
| root@localhost |
+----------------+
row in set (0.00 sec)
SHOW STATUS
获取服务器状态
MariaDB [(none)]> SHOW STATUS;
+----------------------+----------------------------------+
| Variable_name | Value |
+----------------------+----------------------------------+
| Aborted_clients | 14 |
| Aborted_connects | 0 |
| Access_denied_errors | 0 |
| Acl_column_grants | 0 |
| Acl_database_grants | 2 |
| Acl_function_grants | 0 |
| Acl_procedure_grants |
| Binlog_commits | 0 |
....
....
rows in set (0.02 sec)
非常多数据,看不完,我们一般会使用 LIKE
语句查询某些具体的值,比如使用下面的语句查询缓存命中率相关的信息
SHOW STATUS LIKE '%Qcache%';
运行结果如下
MariaDB [(none)]> SHOW STATUS LIKE '%Qcache%';
+-------------------------+---------+
| Variable_name | Value |
+-------------------------+---------+
| Qcache_free_blocks | 1 |
| Qcache_free_memory | 1031312 |
| Qcache_hits | 0 |
| Qcache_inserts | 0 |
| Qcache_lowmem_prunes | 0 |
| Qcache_not_cached | 0 |
| Qcache_queries_in_cache | 0 |
| Qcache_total_blocks | 1 |
+-------------------------+---------+
rows in set (0.00 sec)
SHOW VARIABLES
获取服务器配置变量
MariaDB [(none)]> SHOW VARIABLES\G;
*********************** 626. row ***********************
Variable_name: wsrep_slave_threads
Value: 1
*********************** 627. row ***********************
Variable_name: wsrep_sst_auth
Value:
*********************** 628. row ***********************
Variable_name: wsrep_sst_donor
Value:
*********************** 629. row ***********************
Variable_name: wsrep_sst_donor_rejects_queries
Value: OFF
*********************** 630. row ***********************
Variable_name: wsrep_sst_method
Value: rsync
*********************** 631. row ***********************
Variable_name: wsrep_sst_receive_address
Value: AUTO
*********************** 632. row ***********************
Variable_name: wsrep_start_position
Value: 00000000-0000-0000-0000-000000000000:-1
*************************** 633. row ********************
Variable_name: wsrep_sync_wait
Value: 0
rows in set (0.01 sec)
...
...
rows in set (0.02 sec)
非常多数据,看不完,我们一般会使用 LIKE
语句查询某些具体的值,比如使用下面的语句查询编码相关信息
SHOW VARIABLES LIKE '%character%';
运行结果如下
MariaDB [(none)]> 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 | utf8 |
| character_set_system | utf8 |
| character_sets_dir | .../share/mysql/charsets/ |
+--------------------------+--------------------------------+
rows in set (0.00 sec)
希望读者能够给小编留言,也可以点击[此处扫下面二维码关注微信公众号](https://www.ycbbs.vip/?p=28 "此处扫下面二维码关注微信公众号")
看完两件小事
如果你觉得这篇文章对你挺有启发,我想请你帮我两个小忙:
- 把这篇文章分享给你的朋友 / 交流群,让更多的人看到,一起进步,一起成长!
- 关注公众号 「方志朋」,公众号后台回复「666」 免费领取我精心整理的进阶资源教程
本文著作权归作者所有,如若转载,请注明出处
转载请注明:文章转载自「 Java极客技术学习 」https://www.javajike.com