mysql tips
While testing of mysql using sysbench I wanted to ensure that sysbench client is using SSL connection. For this performance_schema came handy.
mysql> SELECT CONNECTION_TYPE from performance_schema.threads where processlist_command='Query';
+-----------------+
| CONNECTION_TYPE |
+-----------------+
| SSL/TLS |
+-----------------+
mysql> desc performance_schema.threads ;
+---------------------+---------------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------------------+---------------------+------+-----+---------+-------+
| THREAD_ID | bigint(20) unsigned | NO | PRI | NULL | |
| NAME | varchar(128) | NO | MUL | NULL | |
| TYPE | varchar(10) | NO | | NULL | |
| PROCESSLIST_ID | bigint(20) unsigned | YES | MUL | NULL | |
| PROCESSLIST_USER | varchar(32) | YES | MUL | NULL | |
| PROCESSLIST_HOST | varchar(60) | YES | MUL | NULL | |
| PROCESSLIST_DB | varchar(64) | YES | | NULL | |
| PROCESSLIST_COMMAND | varchar(16) | YES | | NULL | |
| PROCESSLIST_TIME | bigint(20) | YES | | NULL | |
| PROCESSLIST_STATE | varchar(64) | YES | | NULL | |
| PROCESSLIST_INFO | longtext | YES | | NULL | |
| PARENT_THREAD_ID | bigint(20) unsigned | YES | | NULL | |
| ROLE | varchar(64) | YES | | NULL | |
| INSTRUMENTED | enum('YES','NO') | NO | | NULL | |
| HISTORY | enum('YES','NO') | NO | | NULL | |
| CONNECTION_TYPE | varchar(16) | YES | | NULL | |
| THREAD_OS_ID | bigint(20) unsigned | YES | MUL | NULL | |
| RESOURCE_GROUP | varchar(64) | YES | MUL | NULL | |
+---------------------+---------------------+------+-----+---------+-------+
18 rows in set (0.08 sec)
mysql>
mysql> SELECT CONNECTION_TYPE from performance_schema.threads where processlist_command='Query';
+-----------------+
| CONNECTION_TYPE |
+-----------------+
| SSL/TLS |
+-----------------+
mysql> desc performance_schema.threads ;
+---------------------+---------------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------------------+---------------------+------+-----+---------+-------+
| THREAD_ID | bigint(20) unsigned | NO | PRI | NULL | |
| NAME | varchar(128) | NO | MUL | NULL | |
| TYPE | varchar(10) | NO | | NULL | |
| PROCESSLIST_ID | bigint(20) unsigned | YES | MUL | NULL | |
| PROCESSLIST_USER | varchar(32) | YES | MUL | NULL | |
| PROCESSLIST_HOST | varchar(60) | YES | MUL | NULL | |
| PROCESSLIST_DB | varchar(64) | YES | | NULL | |
| PROCESSLIST_COMMAND | varchar(16) | YES | | NULL | |
| PROCESSLIST_TIME | bigint(20) | YES | | NULL | |
| PROCESSLIST_STATE | varchar(64) | YES | | NULL | |
| PROCESSLIST_INFO | longtext | YES | | NULL | |
| PARENT_THREAD_ID | bigint(20) unsigned | YES | | NULL | |
| ROLE | varchar(64) | YES | | NULL | |
| INSTRUMENTED | enum('YES','NO') | NO | | NULL | |
| HISTORY | enum('YES','NO') | NO | | NULL | |
| CONNECTION_TYPE | varchar(16) | YES | | NULL | |
| THREAD_OS_ID | bigint(20) unsigned | YES | MUL | NULL | |
| RESOURCE_GROUP | varchar(64) | YES | MUL | NULL | |
+---------------------+---------------------+------+-----+---------+-------+
18 rows in set (0.08 sec)
mysql>
So, if you are using TCP or Socket, using CONNECTION_TYPE column data of table performance_schema.threads we can find what's being used for connection.
Comments
Post a Comment