MySQL Status Opened_table_definitions 数据库状态作用意思及如何正确
本站中文解释
MySQL status变量Opened_table_definitions,也称为表定义句柄,是MySQL中每次从数据字典缓存中取得表定义对应申请的句柄数量。更确切来说,Opened_table_definitions是记录了已打开的表定义句柄的数量,用于缓存表元数据的共享字典缓存的大小的终身使用的时间。
使用 Opened_table_definitions 变量可以优化 MySQL 的表定义器状态。在System Status and Performance Variables变量页面中,Opened_table_definitions 变量是一个非常重要的变量,可以在任何情况下提高MySQL性能。
要设置Opened_table_definitions,只需在my.cnf配置文件中添加如下行:
[mysqld]
opened_table_definitions = 200
在上面的例子中,表定义句柄的最大值是200。这意味着MySQL的表定义句柄将被设置为200,并且在运行过程中被不断增加、减少,而不会超过设定值。这也就是说, 缓存表元数据的共享字典缓存的大小的终身使用的时间也将相应的变更。
使用此变量可以根据给定应用程序的需求和性能调整MySQL服务器。此外,Opened_table_definitions 还允许优化系统执行时间和资源浪费。所以,适当设置Opened_table_definitions变量可以大大增加MySQL服务器的性能。
所以,当考虑为MySQL服务器增加任何更新或改善时,必须考虑Opened_table_definitions变量。储存引擎变量和连接变量也可以影响MySQL性能,所以在改善MySQL性能方面,最好的建议是得到专业审核,并评估哪些变量需要调整以获得最佳性能。