当前位置:首页 > 系统运维 > 正文内容

MySQL数据库打开文件数的实际操作流程

a8116255316年前 (2010-05-24)系统运维12

以下的文章主要描述的是MySQL数据库是如何正确计算打开文件数的实际操作流程,大家都知道每打开一个MyISAM表,就需要对其使用2个文件描述符,所以我们就来验证一下MySQL数据库如何计算打开文件数。

试验

从手册的"6.4.8. How MySQL Opens and Closes Tables"可以了解到,每打开一个MyISAM表,就需要使用2个文件描述符,咱们来验证一下。

1. 重启mysqld

/etc/init.d/mysql restart 

2. 看看打开了几个文件

lsof | grep /home/mysql   ...   mysqld 24349 mysql 5u unix 0x000001041e8de040 4244009 /home/mysql/mysql.sock   mysqld 24349 mysql 6u REG 8,33 2048 30425188 /home/mysql/mysql/host.MYI   mysqld 24349 mysql 7u REG 8,33 0 30425189 /home/mysql/mysql/host.MYD   mysqld 24349 mysql 8u REG 8,33 2048 30425153 /home/mysql/mysql/user.MYI   mysqld 24349 mysql 9u REG 8,33 892 30425155 /home/mysql/mysql/user.MYD   mysqld 24349 mysql 10u REG 8,33 5120 30425126 /home/mysql/mysql/db.MYI   mysqld 24349 mysql 11u REG 8,33 3080 30425148 /home/mysql/mysql/db.MYD   mysqld 24349 mysql 12u REG 8,33 4096 30425154 /home/mysql/mysql/tables_priv.MYI   mysqld 24349 mysql 13u REG 8,33 0 30425157 /home/mysql/mysql/tables_priv.MYD   mysqld 24349 mysql 14u REG 8,33 4096 30425143 /home/mysql/mysql/columns_priv.MYI   mysqld 24349 mysql 15u REG 8,33 0 30425156 /home/mysql/mysql/columns_priv.MYD   mysqld 24349 mysql 16u REG 8,33 4096 30425127 /home/mysql/mysql/procs_priv.MYI   mysqld 24349 mysql 17u REG 8,33 0 30425136 /home/mysql/mysql/procs_priv.MYD   mysqld 24349 mysql 18u REG 8,33 1024 30425173 /home/mysql/mysql/servers.MYI   mysqld 24349 mysql 19u REG 8,33 0 30425174 /home/mysql/mysql/servers.MYD   mysqld 24349 mysql 20u REG 8,33 2048 30425182 /home/mysql/mysql/event.MYI   mysqld 24349 mysql 21u REG 8,33 0 30425183 /home/mysql/mysql/event.MYD   ...  

看到的是,总共打开了8个表,每个表分别有2个MySQL数据库文件描述符,看来没错。

3. 再来看 status 结果

mysql>show global status like 'open_%';   +------------------------+-------+   | Variable_name | Value |   +------------------------+-------+   | Open_files | 17 |   | Open_streams | 0 |   | Open_table_definitions | 15 |   | Open_tables | 8 |   | Opened_files | 52 |   | Opened_tables | 15 |   +------------------------+-------+  

4. flush tables 后再看看

mysql>flush tables;   mysql> show global status like 'open_%';   +------------------------+-------+   | Variable_name | Value |   +------------------------+-------+   | Open_files | 1 |   | Open_streams | 0 |   | Open_table_definitions | 0 |   | Open_tables | 0 |   | Opened_files | 52 |   | Opened_tables | 15 |   +------------------------+-------+   lsof | grep /home/mysql   ...   mysqld 24349 mysql 5u unix 0x000001041e8de040 4244009 /home/mysql/mysql.sock   mysqld 24349 mysql 22u unix 0x00000102378ff980 4244128 /home/mysql/mysql.sock   ...  

看到的是,flush 之后,所有的文件描述符都释放了。

通过测试可以得知,另一个打开的文件描述符是 slow query log所用。

如果是有大量的 MyISAM 表,那么就需要特别注意打开文件数是否会超出限制了。

上面说了这么多内容,是关于对MySQL数据库如何计算打开文件数的介绍,不知道各位对MySQL的认识是不是更上一层楼了,时时关注ITjs,学习最新Mysql技术。

扫描二维码推送至手机访问。

版权声明:本文由2345好导航站长资讯发布,如需转载请注明出处。

本文链接:http://www.2345hao.cn/blog/index.php/post/20562.html

分享给朋友:

“MySQL数据库打开文件数的实际操作流程” 的相关文章

windows 7查看电脑近期使用情况确定有没有被他人使用

windows 7查看电脑近期使用情况确定有没有被他人使用

我一个朋友最近装装了Windows 7,他总感觉有人用了他的电脑,但是一直不确定,他想知道有没有人动用他的电脑,问我有没有办法 我说设置一下就行了: 启动Windows 7,在搜索栏中输入编辑组,马上就搜索到了编辑组策略,点击即可启动程序编辑组策略。依次展开组策略左侧树形列表的计算机配置/管理模...

windows 7系统下Windows服务被流氓软件注册怎么办?Windows服务

windows 7系统下Windows服务被流氓软件注册怎么办?Windows服务

解决方法: 其实处理这些使用流氓软件,需要将相关的.exe文件删除,使它不能再运行,或者直接清除这个服务本身,使计算机重启的时候,它不会再启动。比如Hijackthis扫描,在扫描日志中,一般会把非Windows系统的服务以023的方式列出来,如下面这段: O23 - ...

windows7系统下让所有文件夹都使用同一种视图的方法

windows7系统下让所有文件夹都使用同一种视图的方法

Windows 7系统可以对每个文件夹进行个性化视图设置,可以根据自己的个人喜好和实际需要更改文件或文件夹图标的大小,或者让文件或文件夹以列表、平铺等方式显示。但是,假如你对N个文件夹视图进行了风格各异的个性设置,现在又想让所有文件夹都使用同一种视图怎么办呢 手工一个一个修改,你OUT了,非累得手抽...

微软为windows 7用户重新发布补丁KB2952664 帮助提升Win10升级体

微软为windows 7用户重新发布补丁KB2952664 帮助提升Win10升级体

1月13日消息,微软今天为Windows 7(SP1)用户重新推送了编号为KB2952664的更新补丁,该更新在官方KB知识库中的描述为“Windows 7系统升级兼容性更新”,用于帮助微软改进当前版本系统,提升升级到最新版Win10系统的体验。 这项更新还用于在系统中显示Windows10更新提...

windows 7怎么设置密码永不过期?

windows 7怎么设置密码永不过期?

下面小编以Windows 7 64位为例,介绍下密码是如何设置永不过期的。  1、在桌面上打开“开始”菜单,或者点击“Win+R”快捷键将“运行”对话框打开。  2、运行对话框打开后,在里面中输入“lusrmgr.msc”字符命令,就可以打开“本地用户和组程序”。...

windows 7任务栏快捷方式如何居中显示默认从左像右排列

windows 7任务栏快捷方式如何居中显示默认从左像右排列

使用Windows 7的朋友都知道,任务栏上的快捷方式图标都是靠近开始菜单按钮,从左像右排列,不过也有一些用户喜欢左右对称,想要把那些快捷方式居中显示,看起来这个任务好像无从下手,其实一点也不难,只要通过下面方法就能轻松搞定。 1、首先在电脑磁盘中任何一个地方新建一个文件夹。 2、右击任务栏-&...