<返回更多

mysql之my.cnf/my.ini常用配置整理

2019-11-20    
加入收藏
mysql之my.cnf/my.ini常用配置整理

 

[client]

#默认连接端口                

port = 3306

#用于本地连接的socket套接字,一般linux下有用

socket = /data/MySQLdata/3306/mysql.sock

#客户端编码

default-character-set = utf8mb4

[mysqld]

#MySQL监听端口,一般默认为3306

port = 3306

#为MySQL客户端程序和服务器之间的本地通讯指定一个套接字文件,一般linux下有用

socket = /data/mysqldata/3307/mysql.sock

#pid文件所在目录

pid-file = /data/mysqldata/3307/mysql.pid

#使用该目录作为根目录(安装目录)

basedir = /usr/local/mysql-5.7.11

#数据文件存放的目录

datadir = /data/mysqldata/3307/data

#MySQL存放临时文件的目录

tmpdir = /data/mysqldata/3307/tmp

#服务端默认编码(数据库级别)

character_set_server = utf8mb4

#服务端默认的比对规则,排序规则

collation_server = utf8mb4_bin

#初始字符集

init-connect = 'SET NAMES utf8mb4'

#MySQL绑定IP

#bind-address = 127.0.0.1 

#是否开启计划 1开启 0 关闭

event_scheduler=1

#开启全文索引

#ft_min_word_len = 1

#开启慢查询

slow_query_log = 1

#超过的时间为1s;

long_query_time = 1

#慢查询日志

slow_query_log_file = /data/mysql/mysql-slow.log

#创建函数 开启LOGBIN的情况下

log_bin_trust_function_creators=1

#最大连接数,最大值16384

max_connections = 1895

#当此值设置为10时,某一客户端连接失败10次,无条件强制阻止此客户端连接。

max_connect_errors = 6000

#mysql打开最大文件数

open_files_limit = 65535

#表打开缓存数

table_open_cache = 1024

#查询报文最大尺寸

max_allowed_packet = 500M

#最大表堆栈大小

max_heap_table_size = 8M

#临时表大小

tmp_table_size = 128M

#连接排队的堆栈

back_log = 1024

#读缓冲区大小

read_buffer_size = 2M

#随机读缓冲区大小

read_rnd_buffer_size = 8M

#排序缓冲区大小

sort_buffer_size = 8M

#连接缓冲区大小

join_buffer_size = 8M

#索引块的缓冲区大小,对MyISAM表性能影响最大

key_buffer_size = 256M

#开启查询缓存。这个变量有三个取值:0,1,2,分别代表了off、on、demand。

query_cache_type = 0 

#查询缓存大小

query_cache_size = 0 

#查询缓存限制         

query_cache_limit = 2M

#区分大小写 0:区分大小写,1:不区分大小写 

lower_case_table_names = 1

#跳过域名解析

skip-name-resolve

#跳过外部锁定,External-locking用于多进程条件下为MyISAM数据表进行锁定

skip-external-locking

#连接线程池

thread_cache_size = 64

#非交互的连接超时秒数

wait_timeout=10000

#交互的连接超时秒数

interactive_timeout=10000

#sql_mode,定义了mysql应该支持的sql语法,数据校验等! 

#sql_mode = 'PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,NO_KEY_OPTIONS,NO_TABLE_OPTIONS,NO_FIELD_OPTIONS,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'

#默认数据库引擎

default_storage_engine = InnoDB

innodb_file_per_table = 1

#打开的表的数量

innodb_open_files = 500

#高速缓冲数据和索引内存缓冲大小

innodb_buffer_pool_size = 1024M

#写io线程

innodb_write_io_threads = 4

#读io线程

innodb_read_io_threads = 4

innodb_thread_concurrency = 0

#开始碎片回收线程

innodb_purge_threads = 1

innodb_flush_log_at_trx_commit = 2

#日志缓冲区大小

innodb_log_buffer_size = 2M

#日志大小

innodb_log_file_size = 32M

#日志组数量

innodb_log_files_in_group = 3

innodb_max_dirty_pages_pct = 90

#事务锁超时时间

innodb_lock_wait_timeout = 120

#单独指定数据文件的路径与大小

innodb_data_file_path = ibdata1:1G:autoextend           

#集群ID

server-id = 1

#开启日志

log_bin = mysql-bin

#开启二进制日志功能,binlog数据位置

log-bin = /data/mysqldata/3307/binlog/mysql-bin

log-bin-index = /data/mysqldata/3307/binlog/mysql-bin.index

#日志模式:基于SQL语句的复制(statement-based replication, SBR),基于行的复制(row-based replication, RBR),混合模式复制(mixed-based replication, MBR)。

binlog_format = mixed

#日志过期时间

expire_logs_days = 7

#日志缓存大小

binlog_cache_size = 1M

# 为每个session 最大可分配的内存,在事务过程中用来存储二进制日志的缓存。

#max_binlog_cache_size = 102400

#最大日志大小

max_binlog_size = 512M           

#强制恢复数据库模式

innodb_force_recovery = 6

解释:

innodb_force_recovery可以设置为1-6,大的数字包含前面所有数字的影响。

具体数字对应的含义:

1-----(SRVFORCEIGNORECORRUPT):忽略检查到的corrupt页。

2-----(SRVFORCENOBACKGROUND):阻止主线程的运行,如主线程需要执行full purge操作,会导致crash。

3-----(SRVFORCENOTRXUNDO):不执行事务回滚操作。

4-----(SRVFORCENOIBUFMERGE):不执行插入缓冲的合并操作。

5-----(SRVFORCENOUNDOLOGSCAN):不查看重做日志,InnoDB存储引擎会将未提交的事务视为已提交。

6-----(SRVFORCENOLOG_REDO):不执行前滚的操作。

[mysqldump]

#它强制 mysqldump 从服务器查询取得记录直接输出而不是取得所有记录后将它们缓存到内存中

quick                 

#限制server接受的数据包大小;指代mysql服务器端和客户端在一次传送数据包的过程当中数据包的大小

max_allowed_packet = 512M        

#TCP/IP和套接字通信缓冲区大小,创建长度达net_buffer_length的行

net_buffer_length = 16384        

[mysql]

#auto-rehash是自动补全的意思

auto-rehash              

#isamchk数据检测恢复工具

[isamchk]               

key_buffer = 256M

sort_buffer_size = 256M

read_buffer = 2M

write_buffer = 2M

#使用myisamchk实用程序来获得有关你的数据库桌表的信息、检查和修复他们或优化他们

[myisamchk]

key_buffer = 256M

sort_buffer_size = 256M

read_buffer = 2M

write_buffer = 2M

[mysqlhotcopy]

#mysqlhotcopy使用lock tables、flush tables和cp或scp来快速备份数据库.它是备份数据库或单个表最快的途径,完全属于物理备份,但只能用于备份MyISAM存储引擎和运行在数据库目录所在的机器上.

interactive-timeout
声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>