MySQL Status Opened_tables 数据库状态作用意思及如何正确
本站中文解释
Opened_tables变量用于记录MySQL中目前打开的表的数量,当表打开或关闭时,该变量会发生变化。
设置方法:
方法一:可以通过在MySQL中使用 show global status语句来显示此变量的值,如下所示:
show global status like ‘Opened_tables’;
方法二:可以在MySQL中使用show variables语句来查看此变量的值,如下所示:
show variables like ‘opened_tables’;
方法三:也可以使用information_schema数据库中的表来查看此变量的值,如下所示:
select * from information_schema.global_status where variable_name=’opened_tables’;
设置此变量的值:
实际上,由于此变量是由MySQL提供的一个动态变量,所以它的值是不可更改 的。只有通过改变MySQL服务器的相关参数,以调整打开表的限制,来改变此变量的 值。因此,可以根据需要,使用set语句在MySQL服务器中设置table_open_cache参数, 以改变服务器可以一次打开的表的数量,如下所示:
set table_open_cache=3000;
或者可以通过使用mysql系统变量来设置table_open_cache参数,如下所示:
set GLOBAL table_open_cache=3000;
以上的设置将修改MySQL服务器的table_open_cache参数,允许它一次打开的表的数量 从默认值2048个增加到3000个。
Opened_files
Opened_files变量对应的系统操作系统变量中文名:已打开文件数,该变量用于记录MySQL中所打开文件的数量。
设置方法:
方法一:使用show global status语句来查看此变量的值,如下所示:
show global status like ‘Opened_files’
方法二:使用show variables语句来查看此变量的值,如下所示:
show variables like ‘opened_files’
方法三:使用information_schema数据库中的表来查看此变量的值,如下所示:
SELECT * FROM information_schema.global_status WHERE variable_name=’opened_files’;
设置此变量的值:
由于此变量是MySQL提供的一个动态变量,所以它的值是不可更改的,所以你只能通过调 整MySQL服务器的配置,以修改允许打开文件的上限限制,来改变此变量的值,可以使用 以下语句:
set GLOBAL open_files_limit=3000;
以上的设置将修改全局的open_files_limit参数,允许MySQL实例一次最多打开 3000个文件。