MySQL Status Performance_schema_rwlock_classes_lost 数据库状态作用意思及如何正确


本站中文解释

:

MySQL status变量Performance_schema_rwlock_classes_lost可以用来检测运行时RWLOCK(读写锁)在系统中的存活状态。该值表示被删除的RWLOCK实例的总数,RWLOCK实例是用来根据运行时的内存和访问权限完成同步处理的一种逻辑模型,所以一旦被删除,就会引起数据库性能下降,因此通过使用这个变量非常有必要监控系统RWLOCK实例的变化情况,从而实现性能优化。

要设置MySQL Performance_schema_rwlock_classes_lost状态变量,首先应该在MySQL服务器上启用performance_schema,并确认rwlock_instances表是否可用:

1. 使用show variables like ‘%performance_schema%’命令查看performance_schema状态是否被启用,如果OFF,则使用set global performance_schema=ON语句启用performance_schema;

2. 使用show status like ‘%Performance_schema_rwlock_classes_lost%’命令查看rwlock_instances表的可用性,其中存在的值表示删除的rwlock实例的总数;

3. 如果Performance_schema_rwlock_classes_lost变量未被设置,则使用以下set global语句将其值设置为所需数值:

SET GLOBAL Performance_schema_rwlock_classes_lost=;

4. 表rwlock_instances操作完成后,应该使用以下flush status命令重置Performance_schema_rwlock_classes_lost状态变量的值:

FLUSH STATUS;

通过设置Performance_schema_rwlock_classes_lost Status变量可以实现在系统中监测被删除的RWLOCK实例数量,以此提高数据库性能优化的能力。