# vim /etc/my.cnf
[client]port =3306 //客户端所连接的端口号
socket = /tmp/mysql.sock //客户端所连接的sock文件存放位置
[mysqld]
#base
port=3306 //mysql的默认端口号,可以修改
user = mysql //mysql用户指定
socket = /tmp/mysql.sock //连接所使用的端口号
pid-file = /tmp/mysql.pid //进程运行的主PID文件
basedir = /usr/local/mysql //Mysql安装目录
datadir = /data/mysqldb //Mysql数据目录
tmpdir = /opt/mysqltmp //Mysql临时表目录
open_files_limit= 10240 //打开文件句柄的数量
explicit_defaults_for_timestamp
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
federated//支持sql语法和数据校验等.sql_mode三种模式
ANSI模式:宽松模式,对插入数据进行校验,如果不符合定义类型或长度,对数据类型调整或者截断保存,报“warning”警告
TRADITIONAL模式:严格模式,当向mysql数据插入数据时、进行数据的严格校验,保证数据不能插入,报error错误,用于事物时,会进行事物回滚.
STRICT_TRANS_TABLES模式:严格模式,进行数据的严格校验,错误数据不能插入,报error错误.
server_id= 706 //主从复制唯一的服务辨识号,数值位于 1 到
#replicate-do-db = posp //定义唯一复制的库
#replicate-ignore-db = mysql //定义唯一复制的库
#log-slave-updates = 1 //这个选项之再主从复制。从服务器上打开复制主的信息
event_scheduler=1 //打开时间调度器
max_connections =2000 //最大并发连接数 ,增大该值需要相应增加允许打开的文件描述符数
max_connect_errors = 10000//如果某个用户发起的连接error超过该数值,则该用户的下次连接将被阻塞
interactive_timeout = 600//服务器关闭交互连接前等待活动的秒数
wait_timeout = 600 //服务器关闭非交互连接之前等待活动的秒数
skip-name-resolve //garnt时,必须使用ip,不能使用主机名,禁用DNS解析
sync_binlog = 0 //可以保证事务的安全。缺省为0
log_bin_trust_function_creators = 1 //打开mysql可自定义函数
character-set-server = utf8 //设定字符集
default_storage_engine = InnoDB //定义默认引擎
#log
log-bin = /data/mysqldb/binlog/mysql-bin //指定binlog二进制日志的文件名称
binlog_cache_size = 32m //binlog的缓存大小
max_binlog_cache_size = 10g //设定最大的binlog缓存
binlog_stmt_cache_size = 32m //设定最小的binlo缓存
table_open_cache = 2048//表描述符缓存大小,可减少文件打开/关闭次数
max_binlog_size = 1024m //设置binlog日志文件最大为1G
binlog_format = mixed //binlog日志格式.
log_output = FILE //确认输出到日志文件
log-error = /data/mysqldb/log/mysql-error.log //mysql系统错误日志输出
slow_query_log = 1 //打开慢日志记录
slow_query_log_file = /data/mysqldb/log/mysql-slow_query.log //定义慢日志输出的路径
general_log = 0 //定义普通日志
general_log_file = /data/mysqldb/log/mysql-general-query.log //定义普通日志输出的路径
expire-logs-days = 30 //日志保留的时间为30天
relay-log = /data/mysqldb/binlog/relay-bin //定义reloa_log复制的地址
relay-log-index= /data/mysqldb/binlog/relay-bin.index //定义reloa_log索引
#buffer
sort_buffer_size= 2m //MyISAM表发生变化时重新排序所需的缓冲。一般64M足矣
read_buffer_size = 2m //用来做MyISAM表全表扫描的缓冲大小.
read_rnd_buffer_size = 2m //当在排序之后,从一个已经排序好的序列中读取行时,行数据将从这个缓冲中读取来防止磁盘寻道
join_buffer_size = 2m //InnoDB用来缓存数据和
net_buffer_length= 16k //执行mysqldump时,net buffer length的最大上限是16Mb,默认值是1Mb
max_allowed_packet = 512m //每个连接独立的大小.大小动态增加
bulk_insert_buffer_size = 32m //当突发插入被检测到时此缓冲将被分配用于myisam
max_heap_table_size = 512m//内存表的大小
tmp_table_size = 512m//内部(内存中)临时表的最大大小
thread_cache_size = 100 //缓存可重用的线程数,可以适当的调整
query_cache_size = 256m //指定MySQL查询结果缓冲区的大小。调优可以适当调整
query_cache_limit = 10m //缓存单条SQL的结果集上限。默认4KB。调优可以适当调整
query_cache_min_res_unit =4k
key_buffer_size= 16m //关键词缓冲的大小, 一般用来缓冲MyISAM表的索引块
myisam_sort_buffer_size = 64m //这在每个线程中被分配.所以在设置大值时需要小心
myisam_max_sort_file_size = 10g //MySQL重建索引时所允许的最大临时文件的大小如果文件大小比此值更大,索引会通过键值缓冲创建(更慢)
myisam_repair_threads = 1 //如果一个表拥有超过一个索引, MyISAM
#innodb
innodb_file_per_table= 1 //可以修改InnoDB为独立表空间模式,每个数据库的每个表都会生成一个数据空间
innodb_data_file_path = ibdata1:2048M:autoextend //如果你只有单个逻辑驱动保存你的数据,一个单个的自增文件就足够好了
innodb_log_file_size = 128m //在日志组中每个日志文件的大小,
innodb_log_files_in_group = 3 //在日志组中的文件总数. 通常来说2~3是比较好的
innodb_buffer_pool_size = 1g //innodb缓存池大小
innodb_buffer_pool_instances = -1innodb_max_dirty_pages_pct= 70 //在InnoDB缓冲池中最大允许的脏页面的比例. 60-90都可以
#innodb_thread_concurrency = 8innodb_flush_method=O_DIRECT
innodb_log_buffer_size=16m //用来缓冲日志数据的缓冲区大小,当此值快满时,InnoDB必须刷新数据到磁盘上
innodb_flush_log_at_trx_commit= 2//0代表日志只大约每秒写入日志文件并且日志文件刷新到磁盘,2代表日志写入日志文件在每次提交后,但是日志文件只有大约每秒才会刷新到磁盘上
[mysql]
no-auto-rehash //可以在命令使用tab键补齐
prompt=(\[email protected]\h) [\d]\_ //在mysql命令显示主机名字
default-character-set = utf8 //设定字符集合