内容提要
本文介绍了从InnoDB集群中提取关键信息的方法,包括查询命令、网络测试、实例配置、GR和Replica配置/状态、连接线程内存消耗、连接类型统计和连接统计。作者分享了一些有用的命令和链接供读者参考。
关键要点
-
本文介绍了从InnoDB集群中提取关键信息的方法。
-
提供了查询命令以获取集群的基本信息,如集群ID、名称和描述。
-
列出了集群成员及其角色的查询命令。
-
提供了GR应用程序和恢复线程的状态查询命令。
-
建议检查所有集群成员的拓扑理解,以避免分裂脑拓扑。
-
提供了MySQL路由器的状态查询命令。
-
强调了网络测试的重要性,并提供了相关命令。
-
提供了获取实例配置的查询命令。
-
列出了GR和副本的配置及状态查询命令。
-
提供了连接线程内存消耗的统计查询命令。
-
列出了连接类型的统计信息查询命令。
-
提供了一些连接统计的查询命令。
-
提供了有关用户发送/接收字节的查询命令。
-
列出了表现不佳的用户的查询命令。
-
提供了一个GitHub链接,供读者参考更多信息。
延伸问答
如何从InnoDB集群中提取基本信息?
可以使用查询命令:select cluster_id, cluster_name, description, cluster_type, primary_mode, clusterset_id from mysql_innodb_cluster_metadata.clusters;
如何检查InnoDB集群成员的角色?
使用查询命令:select * from performance_schema.replication_group_members order by MEMBER_ROLE;
如何获取GR应用程序和恢复线程的状态?
可以使用以下命令:select CHANNEL_NAME, SERVICE_STATE, COUNT_RECEIVED_HEARTBEATS, RECEIVED_TRANSACTION_SET, LAST_ERROR_NUMBER, LAST_ERROR_MESSAGE, LAST_ERROR_TIMESTAMP, LAST_QUEUED_TRANSACTION, QUEUEING_TRANSACTION from performance_schema.replication_connection_status;
如何进行网络测试以确保集群正常?
可以使用命令:netstat -l | grep mysql 和 tracepath -b -p 3306 dbnode1,确保从所有服务器到所有服务器都运行这些测试。
如何获取实例的配置?
使用查询命令:select @@hostname,@@port, @@external_user, @@proxy_user,@@read_only, @@pid_file, @@pseudo_thread_id, @@socket, @@wait_timeout, @@init_connect, @@init_file, @@init_replica, @@innodb_status_output, @@net_retry_count;
如何统计连接线程的内存消耗?
可以使用命令:select type,sum(TOTAL_MEMORY)/1048576 'Memory(Mb)' from performance_schema.threads group by type;