重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
本篇内容介绍了“MySQL my.cnf部分参数分析”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
创新互联主要从事网站设计制作、成都网站制作、网页设计、企业做网站、公司建网站等业务。立足成都服务安平,10年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575
Msyql参数调优
针对my.cnf文件进行优化:
[mysqld]
skip-locking(取消文件系统的外部锁)
skip-name-resolve(不进行域名反解析,注意由此带来的权限/授权问题)
key_buffer_size = 256M(分配给MyISAM索引缓存的内存总数) 对于内存在4GB左右的服务器该参数可设置为256M或384M。 注意
:该参数值设置的过大反而会是服务器整体效率降低!
max_allowed_packet = 4M(允许最大的包大小)
thread_stack = 256K(每个线程的大小)
table_cache = 128K(缓存可重用的线程数)
back_log = 384(临时停止响应新请求前在短时间内可以堆起多少请求,如果你需要在短时间内允许大量连接,可以增加该数值)
sort_buffer_size = 2M(分配给每个线程中处理排序)
read_buffer_size = 2M(读取的索引缓冲区大小)
join_buffer_size = 2M(分配给每个线程中处理扫描表连接及索引的内存)
myisam_sort_buffer_size = 64M(myisam引擎排序缓冲区的大小)
table_cache = 512(缓存数据表的数量,避免重复打开表的开销)
thread_cache_size = 64(缓存可重用线程数,见笑创建新线程的开销)
query_cache_size = 64M(控制分配给查询缓存的内存总量)
tmp_table_size = 256M(指定mysql缓存的内存大小)
max_connections = 768(最大连接数)指mysql整个的最大连接数
max_connect_errors = 10000(最大连接错误数据)
wait_timeout = 10(超时时间,可以避免攻击)
thread_concurrency = 8(根据cpu数量来设置)
skip-bdb 禁用不必要的引擎
skip-networking(关闭mysql tcp/ip连接方式)
Log-slow-queries = /var/log/mysqlslowqueries.log
long_query_time = 4(设定慢查询的时间)
skip-host-cache(提高mysql速度的)
open_files_limit = 4096(打开文件数)
interactive_timeout = 10(服务器在关闭它前在一个交互连接上等待行动的秒数)
max_user_connections = 500(最大用户连接数)
Mysql内存使用公式:实际物理内存计算公式key_buffer_size + (read_buffer_size + sort_buffer_size)*max_connections
MAX_QUERIES_PER_HOUR 用来限制用户每小时运行的查询数量:
mysql> grant all on dbname。* to db@localhost identified by “123456” with max_connections_per_hour 5;
(db用户在dbname的数据库上限制用户每小时打开新连接的数量为5个)
MAX_USER_CONNECTIONS 限制有多少用户连接MYSQL服务器:
mysql> grant all on dbname。* to db@localhost identified by “123456” with max_user_connections 2;
(db用户在dbname的数据库账户一次可以同时连接的最大连接数为2个)
MAX_UPDATES_PER_HOUR 用来限制用户每小时的修改数据库数据的数量:
mysql> grant all on dbname。* to db@localhost identified by “123456” with max_updates_per_hour 5;
(db用户在dbname的数据库上限制用户每小时修改更新数据库的次数为5次)
MAX_USER_CONNECTIONS 用来限制用户每小时的修改数据库数据的数量:
mysql> grant all on dbname。* to db@localhost identified by “123456”
With MAX_QUERIES_PER_HOUR 20 ;指mysql单个用户的最大连接数
(db用户在dbname的数据库上限制用户每小时的连接数为20个)
====================================================================================================
一般应用my-medium.cnf就足够了, 独立主机如果内存较大可以用my-large.cnf, 内存超过8G的可以用my-huge.cnf
“Mysql my.cnf部分参数分析”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!