arch-linux – MySQL max_open_files超过1024
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了arch-linux – MySQL max_open_files超过1024,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3074字,纯文字阅读大概需要5分钟。
内容图文
![arch-linux – MySQL max_open_files超过1024](/upload/InfoBanner/zyjiaocheng/896/9695ba13140747539f7949023d6c9878.jpg)
在启动MariaDB时我得到[警告]无法将max_open_files的数量增加到1024以上(请求:4607)
$sudo systemctl status mysqld
● mysqld.service - MariaDB database server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled)
Active: activating (start-post) since Tue 2014-08-26 14:12:01 EST; 2s ago
Main PID: 8790 (mysqld); : 8791 (mysqld-post)
CGroup: /system.slice/mysqld.service
├─8790 /usr/bin/mysqld --pid-file=/run/mysqld/mysqld.pid
└─control
├─8791 /bin/sh /usr/bin/mysqld-post
└─8841 sleep 1
Aug 26 14:12:01 acpfg mysqld[8790]: 140826 14:12:01 [Warning] Could not increase number of max_open_files to more than 1024 (request: 4607)
我尝试使用此文件中的max_open_files解决问题但未成功:
$sudo nano /etc/security/limits.conf
mysql hard nofile 8192
mysql soft nofile 1200
我甚至重新启动了计算机,但我遇到了同样的问题.
/etc/mysql/my.cnf看起来像这样:
[mysql]
# CLIENT #
port = 3306
socket = /home/u/tmp/mysql/mysql.sock
[mysqld]
# GENERAL #
user = mysql
default-storage-engine = InnoDB
socket = /home/u/tmp/mysql/mysql.sock
pid-file = /home/u/tmp/mysql/mysql.pid
# MyISAM #
key-buffer-size = 32M
myisam-recover = FORCE,BACKUP
# SAFETY #
max-allowed-packet = 16M
max-connect-errors = 1000000
skip-name-resolve
sql-mode = STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ONLY_FULL_GROUP_BY
sysdate-is-now = 1
innodb = FORCE
innodb-strict-mode = 1
# DATA STORAGE #
datadir = /home/u/tmp/mysql/
# BINARY LOGGING #
log-bin = /home/u/tmp/mysql/mysql-bin
expire-logs-days = 14
sync-binlog = 1
# CACHES AND LIMITS #
tmp-table-size = 32M
max-heap-table-size = 32M
query-cache-type = 0
query-cache-size = 0
max-connections = 500
thread-cache-size = 50
open-files-limit = 65535
table-definition-cache = 1024
table-open-cache = 2048
# INNODB #
innodb-flush-method = O_DIRECT
innodb-log-files-in-group = 2
innodb-log-file-size = 128M
innodb-flush-log-at-trx-commit = 1
innodb-file-per-table = 1
innodb-buffer-pool-size = 2G
# LOGGING #
log-error = /home/u/tmp/mysql/mysql-error.log
log-queries-not-using-indexes = 1
slow-query-log = 1
slow-query-log-file = /home/u/tmp/mysql/mysql-slow.log
如何用max_open_files解决问题?
解决方法:
编辑/etc/security/limits.conf并添加以下行
mysql soft nofile 65535
mysql hard nofile 65535
然后重新启动
然后编辑/usr/lib/systemd/system/mysqld.service或/usr/lib/systemd/system/mariadb.service并添加
LimitNOFILE=infinity
LimitMEMLOCK=infinity
然后重启db服务:
systemctl reload mariadb.service
内容总结
以上是互联网集市为您收集整理的arch-linux – MySQL max_open_files超过1024全部内容,希望文章能够帮你解决arch-linux – MySQL max_open_files超过1024所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。