read_buffer_size = 1M #读查询操作所能使用的缓冲区大小,和sort_buffer_size一样,该参数对应的分配内存也是每个连接独享。
read_rnd_buffer_size = 1M #设置进行随机读的时候所使用的缓冲区,此参数和read_buffer_size所设置的Buffer相反,一个是顺序读的时候使用,一个是随机读的时候使用,但是两者都是针对与线程的设置,每个线程都可以产生两种Buffer中的任何一个,默认值256KB,最大值为4GB。
bulk_insert_buffer_size = 1M #如果经常性的需要使用批量插入放入特殊语句来插入数据,可以适当调整参数至16MB~32MB,建议8MB。
lower_case_table_names = 1 #实现mysql不区分大小(开发需求,建议开启)
skip-name-resolve #禁止mysql对外部连接进行DNS解析,使用这一选项可以消除mysql进行DNS解析的时候。但是需要注意的是,如果开启该选项,则所有远程主机连接授权都要使用IP地址方式了,否则mysql将无法正常处理连接请求。
slave-skip-errors = 1032,1062 #从库可以跳过的错误数字值
replicate-ignore-db=mysql #在做主从的情况下,设置不需要同步的库。
server-id = 6 #表示本机的序列号为1,如果做主从或者多实例时,server-id一定不能相同
innodb_additional_mem_pool_size = 4M #用来设置InnoDB存储的数据目录信息和其他内部数据结构的内存池大小,应用程序里的表越多,需要在这里分配的内存越多,对于一个相对稳定的应用,这个参数的大小也是相对稳定的,也没有必要预留非常大的值,如果InnoDB用光了这个池内的内存,InnoDB就开始从操作系统分配内存,并且往mysql错误日志写警告信息,默认为1MB,当发现错误日志中已经有相关的警告信息时,就应该适当的增加该参数的大小。
innodb_buffer_pool_size = 32M #InnoDB使用一个缓冲池来保存索引和原始数据,设置越大,在存取表里面数据时所需要的磁盘I/O 越少,一般设置为物理内存的%25左右,注意:不要将InnoDB的Buffer pool值配置为物理内存的50%~80%,应该根据具体生产环境而定。
innodb_data_file_path = ibdata1:128M:autoextend #设置配置一个可扩展大小的尺寸为128MB的单独文件,名为ibdata1,没有给出文件的位置,所有默认的是在mysql的数据目录内。
innodb_file_io_threads = 4 #InnoDB中的文件I/O线程,通常设置为4,如果是Windows可以设置更大的值以提高磁盘I/O.
innodb_thread_concurrency = 8 #服务器有几个CPU就设置为几,建议用默认设置,一般设为8。
innodb_flush_log_at_trx_commit = 2 #设置为0就等于Innodb_log_buffer_size队列满后再统一存储,默认为1,也是最安全的设置。
innodb_log_buffer_size = 2M #默认为1MB,通常设置为8~16MB就足够了。
innodb_log_file_size = 4M #确定日志文件的大小,更大的设置可以提高性能,但也会增加恢复数据库的时间。
innodb_log_files_in_group = 3 #为提高性能,mysql可以以循环方式将日志文件写入到多个文件。推荐设置为3.
innodb_max_dirty_pages_pct = 90 #InnoDB主线程刷新缓存池中的数据。
innodb_lock_wait_timeout = 120 #InnoDB事务被回滚之前可以等待一个锁定的超时秒数,InnoDB在它自己的锁定表中自动检测事务死锁并且回滚事务。InnoDB用lock tables语句注意到锁定设置,默认值为50秒。
innodb_file_per_table = 0 #InnoDB为独立表空间模式,每个数据库的每个表都会生成一个数据空间。0为关闭,1为开启。
独立表优点:
1、每个表都有自己独立的表空间。
2、每个表的数据和索引都会存在自己的表空间中。
3、可以实现单表在不同的数据库中移动。
4、空间可以回收(除drop table操作处,表空不能自己回收)
[mysqldump]
quick