MySQL 配置文件my.cnf参数说明
port = 3306
[mysqld]
#默认存储引擎INNODB
default-storage-engine=INNODB
#GROUP_CONCAT长度
group_concat_max_len =99999
#端口号
port = 3306
#套接字文件
#这里要注意:有时
[client] port = 3306 [mysqld] #默认存储引擎INNODB default-storage-engine=INNODB #GROUP_CONCAT长度 group_concat_max_len =99999 #端口号 port = 3306 #套接字文件 #这里要注意:有时候重启mysql会提示/tmp/mysql.sock不存在mysql配置,此时通常会由于两种情况导致,解决方法可以参考我之前记录的文章,亲测有效: socket = /usr/local/mysql/mysql.sock #pid写入文件位置 pid-file = /usr/local/mysql/mysqld.pid #数据库文件位置 datadir = /home/data/mysql/data #控制文件打开的个数; open_files_limit = 10240 #当外部锁定(external-locking)起作用时,每个进程若要访问数据表, #则必须等待之前的进程完成操作并解除锁定。由于服务器访问数据表时经常需要等待解锁, skip-external-locking #跳过DNS反向解析 skip-name-resolve #关闭TIMESTAMP类型默认值 explicit_defaults_for_timestamp #不受client字符集影响,保证sever端字符集 skip-character-set-client-handshake #初始连接字符集UTF8 init-connect='SET NAMES utf8' #默认数据库字符集 character-set-server=utf8 #查询缓存0,1,2,分别代表了off、on、demand query_cache_type = 1 #单位秒,握手时间超过connect_timeout,连接请求将会被拒绝 connect_timeout = 20 #设置在多少秒没收到主库传来的Binary Logs events之后,从库认为网络超时,Slave IO线程会重新连接主库。 #该参数的默认值是3600s slave_net_timeout = 30 #这个参数用来配置从服务器的更新是否写入二进制日志,这个选项默认是不打开的, log-slave-updates=1 #用于slave服务器,io线程会把server id与自己相同的event写入日志,与log-slave-updates选项冲突 replicate-same-server-id=0 server_id=10112879101 # 打开二进制日志功能. log-bin =/home/data/mysql/binlog/mysql-bin.log #relay-log日志 relay-log=mysql-relay-bin master-info-repository=TABLE relay-log-info-repository=TABLE #不写入binlog二进制日志中的数据库 binlog-ignore-db=mysql # No sync databases binlog-ignore-db=test # No sync databases binlog-ignore-db=information_schema # No sync databases binlog-ignore-db=performance_schema # No sync databases #写入binlog二进制日志中数据库 binlog-do-db=business_db binlog-do-db=user_db binlog-do-db=plocc_system #清理binlog expire-logs-days=15 max_binlog_size = 1073741824 # Bin logs size ( 1G ) #使binlog在每1000次binlog写入后与硬盘同步 sync_binlog = 1000 #指定只复制哪个库的数据 replicate-do-db=business_db replicate-do-db=user_db replicate-do-db=plocc_system #开启事件调度器Event Scheduler event_scheduler=1 #MySQL能暂存的连接数量。 back_log = 500 #MySQL允许最大的进程连接数, max_connections = 6000 #每个用户的最大的进程连接数 max_user_connection = 3000 #每个客户端连接请求异常中断的最大次数 max_connect_errors = 6000 #表调整缓冲区大小。 table_cache = 614 #表描述符缓存大小,可减少文件打开/关闭次数 table_open_cache = 2048 #设置在网络传输中一次消息传输量的最大值。 max_allowed_packet = 64M # 在一个事务中binlog为了记录SQL状态所持有的cache大小 binlog_cache_size = 1M # 独立的内存表所允许的最大容量. max_heap_table_size = 256M #Sort_Buffer_Size被用来处理类似ORDER BY以及GROUP sort_buffer_size = 8M #用于表间关联缓存的大小,和sort_buffer_size一样,该参数对应的分配内存也是每个连接独享。 join_buffer_size = 8M #thread_cache_size表示可以重新利用保存在缓存中线程的数量 thread_cache_size = 128 #此值表示允许应用程序在同一时间运行的线程的数量. thread_concurrency = 8 #此值用来缓冲 SELECT 的结果并且在下一次同样查询的时候不再执行直接返回结果 query_cache_size = 64M #指定单个查询能够使用的缓冲区大小 query_cache_limit = 2M #被全文检索索引的最小的字长 ft_min_word_len = 4 #设置MYSQL线程使用的堆大小 thread_stack = 192K #设定默认的事务隔离级别.可用的级别如下: #READ-UNCOMMITTED, READ-COMMITTED, REPEATABLE-READ, SERIALIZABLE transaction_isolation = READ-COMMITTED #此值表示内存中临时表的最大大小 tmp_table_size = 256M #binlog日志类型 #mixed:混合型 binlog_format=mixed #开启慢查询日志 slow_query_log #文件格式 log_output = FILE # 所有的使用了比这个时间(以秒为单位)更多的查询会被认为是慢速查询 long_query_time = 0.5 #慢查询日志位置 slow_query_log_file=/usr/local/mysql/mysqld_slow.log ########MyISAM 相关选项 #用于索引的缓冲区大小 key_buffer_size = 2048M #MySql读入缓冲区大小。 read_buffer_size = 2M #MySql的随机读(查询操作)缓冲区大小。 read_rnd_buffer_size = 16M #批量插入数据缓存大小, bulk_insert_buffer_size = 16M #MyISAM表发生变化,重建索引时所需的缓冲 myisam_sort_buffer_size = 128M #MySQL重建索引时所允许的临时文件的大小 myisam_max_sort_file_size = 1G #如果一个表拥有多个索引, MyISAM 会通过并行排序使用多个线程去修复他们。 myisam_repair_threads = 1 # 自动检查和修复没有适当关闭的 MyISAM 表. myisam_recover ########INNODB相关选项 #如果你的MySQL服务包含InnoDB支持但是并不打算使用的话, #skip-innodb #这对Innodb表来说非常重要,Innodb把所有的数据和索引都缓存起来,此参数设置越大,数据存取时所需要的磁盘I/O越少。 innodb_buffer_pool_size = 2048M # InnoDB 将数据保存在一个或者多个数据文件中成为表空间 innodb_data_file_path = ibdata1:1024M:autoextend # 文件IO的线程数,一般为 4 innodb_file_io_threads = 4 # 允许线程数量。 innodb_thread_concurrency = 16 # 如果设置为1 ,InnoDB会在每次事务提交后将事务日志写到磁盘上, # 基于性能考虑,可以设置为0或2,但要承担在发生故障时丢失数据的风险。 # 0代表日志只大约每秒写入日志文件并且日志文件刷新到磁盘. # 2代表每次提交后日志写入日志文件,但是日志文件每秒刷新到磁盘上。 innodb_flush_log_at_trx_commit = 2 #此参数用于写日志文件所用的内存大小,以M为单位。 innodb_log_buffer_size = 16M #此参数用于确定日志文件的大小 innodb_log_file_size = 1024M #日志组中的文件总数 innodb_log_files_in_group = 3 # InnoDB的日志文件所在位置 #innodb_log_group_home_dir # 在InnoDB缓冲池中最大允许的脏页面的比例 innodb_max_dirty_pages_pct = 90 # InnoDB用来刷新日志的方法 innodb_flush_method=O_DSYNC # 在被回滚前,一个InnoDB的事务应该等待一个锁被批准多久 innodb_lock_wait_timeout = 30 [mysqldump] # 不要在将内存中的整个结果写入磁盘之前缓存. 在导出非常巨大的表时需要此项 max_allowed_packet = 64M [mysql] no-auto-rehash #指定一个请求的最大连接时间,对于4GB左右的内存服务器来说,可以将其设置为5-10。 wait_timeout = 10 #将没有使用索引的查询也记录下来 log-queries-not-using-indexes (编辑:92站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |