服务器之家

服务器之家 > 正文

Linux如何修改文件打开数

时间:2019-11-11 16:24     来源/作者:Linux教程网

操作系统版本:Redhat 5.4 
问题背景:Tsung压力测试,想要尽可能多地建立tcp请求,发现每次只能建立1013个请求。 
原因分析:Linux默认的文件打开数是1024,减掉其他地方用掉的11个,剩下的就是1013个了。 

解决方案: 
1)先用ulimit -n或ulimit -a命令,发现文件打开数是1024 

 

复制代码

代码如下:


[root@SamuluIndex ~]# ulimit -n 
1024 



2)用ulimit -n 65535把文件打开数改为最大值65535,再用ulimit -n验证发现修改成功 
 

复制代码

代码如下:


[root@SamuluIndex ~]# ulimit -n 65535 
[root@SamuluIndex ~]# ulimit -n 
65535 



此时跑一下tsung start,发现仍然只能建立1013个请求。另外,重新登录后,发现文件打开数重置回默认的1024。说明此方案不通。 

3)在/etc/security/limits.conf最后增加如下两行记录 
 

复制代码

代码如下:


* soft nofile 65535 
* hard nofile 65535 



重新验证,成功。

补充资料:

修改linux系统最大打开文件数

 

当前设置最大打开文件数可以通过如下命令查看。
ulimit -n
这个数字说明了一个普通用户能够在一个单独会话中所能打开最大的文件数目。
注意。如果是root,以下操作不能使ulimit -n的输出增加。因为用户root用户不受这个ulimit限制。只有普通用户才会受这个限制。
为了提高最大打开文件数到默认值1024以上, 需要在系统上修改2个地方。

在这个案例中, 我们将最大打开文件数增加到2048。 所有的步骤需要root用户操作。普通用户需要重新登录才能使设置生效。
1. 按照最大打开文件数量的需求设置系统,并且通过检查/proc/sys/fs/file-max文件来确认最大打开文件数已经被正确设置。
# cat /proc/sys/fs/file-max
如果设置值太小, 修改文件/etc/sysctl.conf的变量到合适的值。 这样会在每次重启之后生效。如果设置值够大,跳过下步。
# echo 2048 > /proc/sys/fs/file-max编辑文件/etc/sysctl.conf,插入下行。
     fs.file-max = 2048
2. 在/etc/security/limits.conf文件中设置最大打开文件数, 下面是一行提示:
#<domain>      <type>  <item>         <value>添加如下这行。
* - nofile 2048
这行设置了每个用户的默认打开文件数为2048。 
注意"nofile"项有两个可能的限制措施。就是<type>项下的hard和soft。 
要使修改过得最大打开文件数生效,必须对这两种限制进行设定。 
如果使用"-"字符设定<type>, 则hard和soft设定会同时被设定。
硬限制表明soft限制中所能设定的最大值。 
soft限制指的是当前系统生效的设置值。 
hard限制值可以被普通用户降低。但是不能增加。 
soft限制不能设置的比hard限制更高。 
只有root用户才能够增加hard限制值。
当增加文件限制描述,可以简单的把当前值双倍。 
例子如下, 如果你要提高默认值1024, 最好提高到2048, 如果还要继续增加, 就需要设置成4096。
3.Add the following line to the /etc/pam.d/login and /etc/pam.d/xdm file, if it does not already exist:
session   required     /lib/security/pam_limits.so
4. logout and logon
或者在shell配置文件里面动态加载。
如.bashrc里加:
ulimit -HSn 2048

二、安装

tar zxvf mysql-5.1.50-linux-i686-glibc23.tar.gz
cp -rf mysql-5.1.50-linux-i686-glibc23 /usr/local/
cd /usr/local/
mv mysql-5.1.50-linux-i686-glibc23/ mysql
安装为默认的路径,这样就不用为程序目录做软链接了
groupadd mysql
useradd -g mysql mysql
cd mysql/
cp support-files/my-medium.cnf /etc/my.cnf
sed -i 's/log-bin=mysql-bin/#log-bin=mysql-bin/g' /etc/my.cnf
sed -i 's/binlog_format=mixed/#binlog_format=mixed/g' /etc/my.cnf
sed -i 's/skip-locking/skip-locking/nmax_connections = 1000/nwait_timeout = 5/g' /etc/my.cnf
接下来初始化数据库
scripts/mysql_install_db --user=mysql
安装mysql服务控制
cp support-files/mysql.server /etc/rc.d/init.d/mysqld
chmod 755 /etc/rc.d/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on
service mysqld start
bin/mysqladmin -u root password 123654

相关文章

热门资讯

2022年最旺的微信头像大全 微信头像2022年最新版图片
2022年最旺的微信头像大全 微信头像2022年最新版图片 2022-01-10
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整 2021-08-24
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
暖暖日本高清免费中文 暖暖在线观看免费完整版韩国
暖暖日本高清免费中文 暖暖在线观看免费完整版韩国 2021-05-08
返回顶部

820
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40